#include <tree_sitter/parser.h>

#if defined(__GNUC__) || defined(__clang__)
#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wmissing-field-initializers"
#endif

#define LANGUAGE_VERSION 13
#define STATE_COUNT 800
#define LARGE_STATE_COUNT 307
#define SYMBOL_COUNT 507
#define ALIAS_COUNT 3
#define TOKEN_COUNT 320
#define EXTERNAL_TOKEN_COUNT 0
#define FIELD_COUNT 33
#define MAX_ALIAS_SEQUENCE_LENGTH 12
#define PRODUCTION_ID_COUNT 85

enum {
  sym_identifier = 1,
  anon_sym_pragma = 2,
  anon_sym_PIPE_PIPE = 3,
  anon_sym_DASH = 4,
  anon_sym_solidity = 5,
  aux_sym_pragma_value_token1 = 6,
  sym_solidity_version = 7,
  anon_sym_LT_EQ = 8,
  anon_sym_LT = 9,
  anon_sym_CARET = 10,
  anon_sym_GT = 11,
  anon_sym_GT_EQ = 12,
  anon_sym_TILDE = 13,
  anon_sym_EQ = 14,
  anon_sym_import = 15,
  anon_sym_from = 16,
  anon_sym_STAR = 17,
  anon_sym_LBRACE = 18,
  anon_sym_COMMA = 19,
  anon_sym_RBRACE = 20,
  anon_sym_as = 21,
  anon_sym_type = 22,
  anon_sym_is = 23,
  anon_sym_constant = 24,
  anon_sym_abstract = 25,
  anon_sym_contract = 26,
  anon_sym_error = 27,
  anon_sym_LPAREN = 28,
  anon_sym_RPAREN = 29,
  anon_sym_interface = 30,
  anon_sym_library = 31,
  anon_sym_struct = 32,
  anon_sym_enum = 33,
  anon_sym_event = 34,
  anon_sym_anonymous = 35,
  anon_sym_indexed = 36,
  anon_sym_using = 37,
  anon_sym_for = 38,
  anon_sym_assembly = 39,
  anon_sym_DQUOTEevmasm_DQUOTE = 40,
  anon_sym_COLON = 41,
  sym_yul_leave = 42,
  anon_sym_break = 43,
  anon_sym_continue = 44,
  anon_sym_DOT = 45,
  sym_yul_decimal_number = 46,
  sym_yul_hex_number = 47,
  anon_sym_true = 48,
  anon_sym_false = 49,
  anon_sym_let = 50,
  anon_sym_COLON_EQ = 51,
  anon_sym_if = 52,
  anon_sym_switch = 53,
  anon_sym_default = 54,
  anon_sym_case = 55,
  anon_sym_function = 56,
  anon_sym_DASH_GT = 57,
  anon_sym_stop = 58,
  anon_sym_add = 59,
  anon_sym_sub = 60,
  anon_sym_mul = 61,
  anon_sym_div = 62,
  anon_sym_sdiv = 63,
  anon_sym_mod = 64,
  anon_sym_smod = 65,
  anon_sym_exp = 66,
  anon_sym_not = 67,
  anon_sym_lt = 68,
  anon_sym_gt = 69,
  anon_sym_slt = 70,
  anon_sym_sgt = 71,
  anon_sym_eq = 72,
  anon_sym_iszero = 73,
  anon_sym_and = 74,
  anon_sym_or = 75,
  anon_sym_xor = 76,
  anon_sym_byte = 77,
  anon_sym_shl = 78,
  anon_sym_shr = 79,
  anon_sym_sar = 80,
  anon_sym_addmod = 81,
  anon_sym_mulmod = 82,
  anon_sym_signextend = 83,
  anon_sym_keccak256 = 84,
  anon_sym_pop = 85,
  anon_sym_mload = 86,
  anon_sym_mstore = 87,
  anon_sym_mstore8 = 88,
  anon_sym_sload = 89,
  anon_sym_sstore = 90,
  anon_sym_msize = 91,
  anon_sym_gas = 92,
  anon_sym_address = 93,
  anon_sym_balance = 94,
  anon_sym_selfbalance = 95,
  anon_sym_caller = 96,
  anon_sym_callvalue = 97,
  anon_sym_calldataload = 98,
  anon_sym_calldatasize = 99,
  anon_sym_calldatacopy = 100,
  anon_sym_extcodesize = 101,
  anon_sym_extcodecopy = 102,
  anon_sym_returndatasize = 103,
  anon_sym_returndatacopy = 104,
  anon_sym_extcodehash = 105,
  anon_sym_create = 106,
  anon_sym_create2 = 107,
  anon_sym_call = 108,
  anon_sym_callcode = 109,
  anon_sym_delegatecall = 110,
  anon_sym_staticcall = 111,
  anon_sym_return = 112,
  anon_sym_revert = 113,
  anon_sym_selfdestruct = 114,
  anon_sym_invalid = 115,
  anon_sym_log0 = 116,
  anon_sym_log1 = 117,
  anon_sym_log2 = 118,
  anon_sym_log3 = 119,
  anon_sym_log4 = 120,
  anon_sym_chainid = 121,
  anon_sym_origin = 122,
  anon_sym_gasprice = 123,
  anon_sym_blockhash = 124,
  anon_sym_coinbase = 125,
  anon_sym_timestamp = 126,
  anon_sym_number = 127,
  anon_sym_difficulty = 128,
  anon_sym_gaslimit = 129,
  sym__unchecked = 130,
  anon_sym_memory = 131,
  anon_sym_storage = 132,
  anon_sym_calldata = 133,
  anon_sym_var = 134,
  anon_sym_else = 135,
  anon_sym_while = 136,
  anon_sym_do = 137,
  anon_sym_try = 138,
  anon_sym_returns = 139,
  anon_sym_catch = 140,
  anon_sym_emit = 141,
  anon_sym_public = 142,
  anon_sym_internal = 143,
  anon_sym_private = 144,
  anon_sym_external = 145,
  anon_sym_pure = 146,
  anon_sym_view = 147,
  anon_sym_payable = 148,
  sym_immutable = 149,
  anon_sym_override = 150,
  anon_sym_modifier = 151,
  anon_sym_constructor = 152,
  anon_sym_fallback = 153,
  anon_sym_receive = 154,
  sym_virtual = 155,
  anon_sym_QMARK = 156,
  anon_sym_new = 157,
  anon_sym_LBRACK = 158,
  anon_sym_RBRACK = 159,
  anon_sym_AMP_AMP = 160,
  anon_sym_GT_GT = 161,
  anon_sym_GT_GT_GT = 162,
  anon_sym_LT_LT = 163,
  anon_sym_AMP = 164,
  anon_sym_PIPE = 165,
  anon_sym_PLUS = 166,
  anon_sym_SLASH = 167,
  anon_sym_PERCENT = 168,
  anon_sym_STAR_STAR = 169,
  anon_sym_EQ_EQ = 170,
  anon_sym_BANG_EQ = 171,
  anon_sym_BANG_EQ_EQ = 172,
  anon_sym_BANG = 173,
  anon_sym_delete = 174,
  anon_sym_PLUS_PLUS = 175,
  anon_sym_DASH_DASH = 176,
  anon_sym_PLUS_EQ = 177,
  anon_sym_DASH_EQ = 178,
  anon_sym_STAR_EQ = 179,
  anon_sym_SLASH_EQ = 180,
  anon_sym_PERCENT_EQ = 181,
  anon_sym_CARET_EQ = 182,
  anon_sym_AMP_EQ = 183,
  anon_sym_PIPE_EQ = 184,
  anon_sym_GT_GT_EQ = 185,
  anon_sym_GT_GT_GT_EQ = 186,
  anon_sym_LT_LT_EQ = 187,
  anon_sym_mapping = 188,
  anon_sym_EQ_GT = 189,
  anon_sym_bool = 190,
  anon_sym_string = 191,
  anon_sym_int = 192,
  anon_sym_int8 = 193,
  anon_sym_int16 = 194,
  anon_sym_int24 = 195,
  anon_sym_int32 = 196,
  anon_sym_int40 = 197,
  anon_sym_int48 = 198,
  anon_sym_int56 = 199,
  anon_sym_int64 = 200,
  anon_sym_int72 = 201,
  anon_sym_int80 = 202,
  anon_sym_int88 = 203,
  anon_sym_int96 = 204,
  anon_sym_int104 = 205,
  anon_sym_int112 = 206,
  anon_sym_int120 = 207,
  anon_sym_int128 = 208,
  anon_sym_int136 = 209,
  anon_sym_int144 = 210,
  anon_sym_int152 = 211,
  anon_sym_int160 = 212,
  anon_sym_int168 = 213,
  anon_sym_int176 = 214,
  anon_sym_int184 = 215,
  anon_sym_int192 = 216,
  anon_sym_int200 = 217,
  anon_sym_int208 = 218,
  anon_sym_int216 = 219,
  anon_sym_int224 = 220,
  anon_sym_int232 = 221,
  anon_sym_int240 = 222,
  anon_sym_int248 = 223,
  anon_sym_int256 = 224,
  anon_sym_uint = 225,
  anon_sym_uint8 = 226,
  anon_sym_uint16 = 227,
  anon_sym_uint24 = 228,
  anon_sym_uint32 = 229,
  anon_sym_uint40 = 230,
  anon_sym_uint48 = 231,
  anon_sym_uint56 = 232,
  anon_sym_uint64 = 233,
  anon_sym_uint72 = 234,
  anon_sym_uint80 = 235,
  anon_sym_uint88 = 236,
  anon_sym_uint96 = 237,
  anon_sym_uint104 = 238,
  anon_sym_uint112 = 239,
  anon_sym_uint120 = 240,
  anon_sym_uint128 = 241,
  anon_sym_uint136 = 242,
  anon_sym_uint144 = 243,
  anon_sym_uint152 = 244,
  anon_sym_uint160 = 245,
  anon_sym_uint168 = 246,
  anon_sym_uint176 = 247,
  anon_sym_uint184 = 248,
  anon_sym_uint192 = 249,
  anon_sym_uint200 = 250,
  anon_sym_uint208 = 251,
  anon_sym_uint216 = 252,
  anon_sym_uint224 = 253,
  anon_sym_uint232 = 254,
  anon_sym_uint240 = 255,
  anon_sym_uint248 = 256,
  anon_sym_uint256 = 257,
  anon_sym_bytes = 258,
  anon_sym_bytes1 = 259,
  anon_sym_bytes2 = 260,
  anon_sym_bytes3 = 261,
  anon_sym_bytes4 = 262,
  anon_sym_bytes5 = 263,
  anon_sym_bytes6 = 264,
  anon_sym_bytes7 = 265,
  anon_sym_bytes8 = 266,
  anon_sym_bytes9 = 267,
  anon_sym_bytes10 = 268,
  anon_sym_bytes11 = 269,
  anon_sym_bytes12 = 270,
  anon_sym_bytes13 = 271,
  anon_sym_bytes14 = 272,
  anon_sym_bytes15 = 273,
  anon_sym_bytes16 = 274,
  anon_sym_bytes17 = 275,
  anon_sym_bytes18 = 276,
  anon_sym_bytes19 = 277,
  anon_sym_bytes20 = 278,
  anon_sym_bytes21 = 279,
  anon_sym_bytes22 = 280,
  anon_sym_bytes23 = 281,
  anon_sym_bytes24 = 282,
  anon_sym_bytes25 = 283,
  anon_sym_bytes26 = 284,
  anon_sym_bytes27 = 285,
  anon_sym_bytes28 = 286,
  anon_sym_bytes29 = 287,
  anon_sym_bytes30 = 288,
  anon_sym_bytes31 = 289,
  anon_sym_bytes32 = 290,
  anon_sym_fixed = 291,
  aux_sym__fixed_token1 = 292,
  anon_sym_ufixed = 293,
  aux_sym__ufixed_token1 = 294,
  sym__semicolon = 295,
  aux_sym__decimal_number_token1 = 296,
  aux_sym__decimal_number_token2 = 297,
  aux_sym__hex_number_token1 = 298,
  sym__hex_digit = 299,
  anon_sym_wei = 300,
  anon_sym_szabo = 301,
  anon_sym_finney = 302,
  anon_sym_gwei = 303,
  anon_sym_ether = 304,
  anon_sym_seconds = 305,
  anon_sym_minutes = 306,
  anon_sym_hours = 307,
  anon_sym_days = 308,
  anon_sym_weeks = 309,
  anon_sym_years = 310,
  anon_sym_hex = 311,
  anon_sym_DQUOTE = 312,
  anon_sym__ = 313,
  anon_sym_SQUOTE = 314,
  sym__escape_sequence = 315,
  aux_sym__single_quoted_unicode_char_token1 = 316,
  aux_sym__double_quoted_unicode_char_token1 = 317,
  anon_sym_unicode = 318,
  sym_comment = 319,
  sym_source_file = 320,
  sym__source_unit = 321,
  sym__directive = 322,
  sym_pragma_directive = 323,
  sym_solidity_pragma_token = 324,
  sym_any_pragma_token = 325,
  sym__solidity = 326,
  sym_pragma_value = 327,
  sym__pragma_version_constraint = 328,
  sym_solidity_version_comparison_operator = 329,
  sym_import_directive = 330,
  sym__source_import = 331,
  sym__import_clause = 332,
  sym__from_clause = 333,
  sym__single_import = 334,
  sym__multiple_import = 335,
  sym__import_declaration = 336,
  sym__import_alias = 337,
  sym__declaration = 338,
  sym_user_defined_type_definition = 339,
  sym_constant_variable_declaration = 340,
  sym_contract_declaration = 341,
  sym_error_declaration = 342,
  sym_error_parameter = 343,
  sym_interface_declaration = 344,
  sym_library_declaration = 345,
  sym__class_heritage = 346,
  sym_inheritance_specifier = 347,
  sym_contract_body = 348,
  sym__contract_member = 349,
  sym_struct_declaration = 350,
  sym_struct_member = 351,
  sym_enum_declaration = 352,
  sym_event_definition = 353,
  sym__event_parameter_list = 354,
  sym_event_paramater = 355,
  sym_using_directive = 356,
  sym_any_source_type = 357,
  sym__statement = 358,
  sym_assembly_statement = 359,
  sym__yul_statement = 360,
  sym_yul_label = 361,
  sym_yul_break = 362,
  sym_yul_continue = 363,
  sym_yul_identifier = 364,
  sym__yul_expression = 365,
  sym_yul_path = 366,
  sym__yul_literal = 367,
  sym_yul_string_literal = 368,
  sym_yul_boolean = 369,
  sym_yul_block = 370,
  sym_yul_variable_declaration = 371,
  sym__yul_assignment_operator = 372,
  sym_yul_assignment = 373,
  sym_yul_function_call = 374,
  sym_yul_if_statement = 375,
  sym_yul_for_statement = 376,
  sym_yul_switch_statement = 377,
  sym_yul_function_definition = 378,
  sym_yul_evm_builtin = 379,
  sym_block_statement = 380,
  sym_variable_declaration_statement = 381,
  sym_variable_declaration = 382,
  sym_variable_declaration_tuple = 383,
  sym_expression_statement = 384,
  sym_if_statement = 385,
  sym_for_statement = 386,
  sym_while_statement = 387,
  sym_do_while_statement = 388,
  sym_continue_statement = 389,
  sym_break_statement = 390,
  sym_revert_statement = 391,
  sym_try_statement = 392,
  sym_catch_clause = 393,
  sym_return_statement = 394,
  sym_emit_statement = 395,
  sym_state_variable_declaration = 396,
  sym_visibility = 397,
  sym_state_mutability = 398,
  sym_override_specifier = 399,
  sym_modifier_definition = 400,
  sym_constructor_definition = 401,
  sym_fallback_receive_definition = 402,
  sym_function_definition = 403,
  sym_return_type_definition = 404,
  sym_modifier_invocation = 405,
  sym__call_arguments = 406,
  sym_call_argument = 407,
  sym_call_struct_argument = 408,
  sym_function_body = 409,
  sym__expression = 410,
  sym__primary_expression = 411,
  sym_type_cast_expression = 412,
  sym_ternary_expression = 413,
  sym_new_expression = 414,
  sym_tuple_expression = 415,
  sym_inline_array_expression = 416,
  sym_binary_expression = 417,
  sym_unary_expression = 418,
  sym_update_expression = 419,
  sym_member_expression = 420,
  sym_array_access = 421,
  sym_slice_access = 422,
  sym_struct_expression = 423,
  sym_struct_field_assignment = 424,
  sym_parenthesized_expression = 425,
  sym_assignment_expression = 426,
  sym_augmented_assignment_expression = 427,
  sym_call_expression = 428,
  sym_payable_conversion_expression = 429,
  sym_meta_type_expression = 430,
  sym_type_name = 431,
  sym__array_type = 432,
  sym__function_type = 433,
  sym__parameter_list = 434,
  sym__return_parameters = 435,
  sym__nameless_parameter = 436,
  sym_parameter = 437,
  sym__storage_location = 438,
  sym_user_defined_type = 439,
  sym__identifier_path = 440,
  sym__mapping = 441,
  sym__mapping_key = 442,
  sym_primitive_type = 443,
  sym__int = 444,
  sym__uint = 445,
  sym__bytes = 446,
  sym__fixed = 447,
  sym__ufixed = 448,
  sym__literal = 449,
  sym_string_literal = 450,
  sym_number_literal = 451,
  sym__decimal_number = 452,
  sym__hex_number = 453,
  sym_number_unit = 454,
  sym_true = 455,
  sym_false = 456,
  sym_boolean_literal = 457,
  sym_hex_string_literal = 458,
  sym__single_quoted_unicode_char = 459,
  sym__double_quoted_unicode_char = 460,
  sym_unicode_string_literal = 461,
  sym_string = 462,
  sym__string_immediate_elt_inside_double_quote = 463,
  sym__string_immediate_elt_inside_quote = 464,
  aux_sym_source_file_repeat1 = 465,
  aux_sym_solidity_pragma_token_repeat1 = 466,
  aux_sym__multiple_import_repeat1 = 467,
  aux_sym_error_declaration_repeat1 = 468,
  aux_sym__class_heritage_repeat1 = 469,
  aux_sym_contract_body_repeat1 = 470,
  aux_sym_struct_declaration_repeat1 = 471,
  aux_sym_enum_declaration_repeat1 = 472,
  aux_sym__event_parameter_list_repeat1 = 473,
  aux_sym_assembly_statement_repeat1 = 474,
  aux_sym_yul_path_repeat1 = 475,
  aux_sym_yul_variable_declaration_repeat1 = 476,
  aux_sym_yul_assignment_repeat1 = 477,
  aux_sym_yul_function_call_repeat1 = 478,
  aux_sym_yul_switch_statement_repeat1 = 479,
  aux_sym_block_statement_repeat1 = 480,
  aux_sym_variable_declaration_tuple_repeat1 = 481,
  aux_sym_variable_declaration_tuple_repeat2 = 482,
  aux_sym_try_statement_repeat1 = 483,
  aux_sym_state_variable_declaration_repeat1 = 484,
  aux_sym_override_specifier_repeat1 = 485,
  aux_sym_modifier_definition_repeat1 = 486,
  aux_sym_constructor_definition_repeat1 = 487,
  aux_sym_fallback_receive_definition_repeat1 = 488,
  aux_sym_function_definition_repeat1 = 489,
  aux_sym__call_arguments_repeat1 = 490,
  aux_sym_call_argument_repeat1 = 491,
  aux_sym_tuple_expression_repeat1 = 492,
  aux_sym_inline_array_expression_repeat1 = 493,
  aux_sym_struct_expression_repeat1 = 494,
  aux_sym__function_type_repeat1 = 495,
  aux_sym__parameter_list_repeat1 = 496,
  aux_sym__return_parameters_repeat1 = 497,
  aux_sym__identifier_path_repeat1 = 498,
  aux_sym_string_literal_repeat1 = 499,
  aux_sym_hex_string_literal_repeat1 = 500,
  aux_sym_hex_string_literal_repeat2 = 501,
  aux_sym_unicode_string_literal_repeat1 = 502,
  aux_sym_unicode_string_literal_repeat2 = 503,
  aux_sym_unicode_string_literal_repeat3 = 504,
  aux_sym_string_repeat1 = 505,
  aux_sym_string_repeat2 = 506,
  alias_sym_enum_value = 507,
  alias_sym_revert_arguments = 508,
  alias_sym_type_alias = 509,
};

static const char * const ts_symbol_names[] = {
  [ts_builtin_sym_end] = "end",
  [sym_identifier] = "identifier",
  [anon_sym_pragma] = "pragma",
  [anon_sym_PIPE_PIPE] = "||",
  [anon_sym_DASH] = "-",
  [anon_sym_solidity] = "solidity",
  [aux_sym_pragma_value_token1] = "pragma_value_token1",
  [sym_solidity_version] = "solidity_version",
  [anon_sym_LT_EQ] = "<=",
  [anon_sym_LT] = "<",
  [anon_sym_CARET] = "^",
  [anon_sym_GT] = ">",
  [anon_sym_GT_EQ] = ">=",
  [anon_sym_TILDE] = "~",
  [anon_sym_EQ] = "=",
  [anon_sym_import] = "import",
  [anon_sym_from] = "from",
  [anon_sym_STAR] = "*",
  [anon_sym_LBRACE] = "{",
  [anon_sym_COMMA] = ",",
  [anon_sym_RBRACE] = "}",
  [anon_sym_as] = "as",
  [anon_sym_type] = "type",
  [anon_sym_is] = "is",
  [anon_sym_constant] = "constant",
  [anon_sym_abstract] = "abstract",
  [anon_sym_contract] = "contract",
  [anon_sym_error] = "error",
  [anon_sym_LPAREN] = "(",
  [anon_sym_RPAREN] = ")",
  [anon_sym_interface] = "interface",
  [anon_sym_library] = "library",
  [anon_sym_struct] = "struct",
  [anon_sym_enum] = "enum",
  [anon_sym_event] = "event",
  [anon_sym_anonymous] = "anonymous",
  [anon_sym_indexed] = "indexed",
  [anon_sym_using] = "using",
  [anon_sym_for] = "for",
  [anon_sym_assembly] = "assembly",
  [anon_sym_DQUOTEevmasm_DQUOTE] = "\"evmasm\"",
  [anon_sym_COLON] = ":",
  [sym_yul_leave] = "yul_leave",
  [anon_sym_break] = "break",
  [anon_sym_continue] = "continue",
  [anon_sym_DOT] = ".",
  [sym_yul_decimal_number] = "yul_decimal_number",
  [sym_yul_hex_number] = "yul_hex_number",
  [anon_sym_true] = "true",
  [anon_sym_false] = "false",
  [anon_sym_let] = "let",
  [anon_sym_COLON_EQ] = ":=",
  [anon_sym_if] = "if",
  [anon_sym_switch] = "switch",
  [anon_sym_default] = "default",
  [anon_sym_case] = "case",
  [anon_sym_function] = "function",
  [anon_sym_DASH_GT] = "->",
  [anon_sym_stop] = "stop",
  [anon_sym_add] = "add",
  [anon_sym_sub] = "sub",
  [anon_sym_mul] = "mul",
  [anon_sym_div] = "div",
  [anon_sym_sdiv] = "sdiv",
  [anon_sym_mod] = "mod",
  [anon_sym_smod] = "smod",
  [anon_sym_exp] = "exp",
  [anon_sym_not] = "not",
  [anon_sym_lt] = "lt",
  [anon_sym_gt] = "gt",
  [anon_sym_slt] = "slt",
  [anon_sym_sgt] = "sgt",
  [anon_sym_eq] = "eq",
  [anon_sym_iszero] = "iszero",
  [anon_sym_and] = "and",
  [anon_sym_or] = "or",
  [anon_sym_xor] = "xor",
  [anon_sym_byte] = "byte",
  [anon_sym_shl] = "shl",
  [anon_sym_shr] = "shr",
  [anon_sym_sar] = "sar",
  [anon_sym_addmod] = "addmod",
  [anon_sym_mulmod] = "mulmod",
  [anon_sym_signextend] = "signextend",
  [anon_sym_keccak256] = "keccak256",
  [anon_sym_pop] = "pop",
  [anon_sym_mload] = "mload",
  [anon_sym_mstore] = "mstore",
  [anon_sym_mstore8] = "mstore8",
  [anon_sym_sload] = "sload",
  [anon_sym_sstore] = "sstore",
  [anon_sym_msize] = "msize",
  [anon_sym_gas] = "gas",
  [anon_sym_address] = "address",
  [anon_sym_balance] = "balance",
  [anon_sym_selfbalance] = "selfbalance",
  [anon_sym_caller] = "caller",
  [anon_sym_callvalue] = "callvalue",
  [anon_sym_calldataload] = "calldataload",
  [anon_sym_calldatasize] = "calldatasize",
  [anon_sym_calldatacopy] = "calldatacopy",
  [anon_sym_extcodesize] = "extcodesize",
  [anon_sym_extcodecopy] = "extcodecopy",
  [anon_sym_returndatasize] = "returndatasize",
  [anon_sym_returndatacopy] = "returndatacopy",
  [anon_sym_extcodehash] = "extcodehash",
  [anon_sym_create] = "create",
  [anon_sym_create2] = "create2",
  [anon_sym_call] = "call",
  [anon_sym_callcode] = "callcode",
  [anon_sym_delegatecall] = "delegatecall",
  [anon_sym_staticcall] = "staticcall",
  [anon_sym_return] = "return",
  [anon_sym_revert] = "revert",
  [anon_sym_selfdestruct] = "selfdestruct",
  [anon_sym_invalid] = "invalid",
  [anon_sym_log0] = "log0",
  [anon_sym_log1] = "log1",
  [anon_sym_log2] = "log2",
  [anon_sym_log3] = "log3",
  [anon_sym_log4] = "log4",
  [anon_sym_chainid] = "chainid",
  [anon_sym_origin] = "origin",
  [anon_sym_gasprice] = "gasprice",
  [anon_sym_blockhash] = "blockhash",
  [anon_sym_coinbase] = "coinbase",
  [anon_sym_timestamp] = "timestamp",
  [anon_sym_number] = "number",
  [anon_sym_difficulty] = "difficulty",
  [anon_sym_gaslimit] = "gaslimit",
  [sym__unchecked] = "_unchecked",
  [anon_sym_memory] = "memory",
  [anon_sym_storage] = "storage",
  [anon_sym_calldata] = "calldata",
  [anon_sym_var] = "var",
  [anon_sym_else] = "else",
  [anon_sym_while] = "while",
  [anon_sym_do] = "do",
  [anon_sym_try] = "try",
  [anon_sym_returns] = "returns",
  [anon_sym_catch] = "catch",
  [anon_sym_emit] = "emit",
  [anon_sym_public] = "public",
  [anon_sym_internal] = "internal",
  [anon_sym_private] = "private",
  [anon_sym_external] = "external",
  [anon_sym_pure] = "pure",
  [anon_sym_view] = "view",
  [anon_sym_payable] = "payable",
  [sym_immutable] = "immutable",
  [anon_sym_override] = "override",
  [anon_sym_modifier] = "modifier",
  [anon_sym_constructor] = "constructor",
  [anon_sym_fallback] = "fallback",
  [anon_sym_receive] = "receive",
  [sym_virtual] = "virtual",
  [anon_sym_QMARK] = "\?",
  [anon_sym_new] = "new",
  [anon_sym_LBRACK] = "[",
  [anon_sym_RBRACK] = "]",
  [anon_sym_AMP_AMP] = "&&",
  [anon_sym_GT_GT] = ">>",
  [anon_sym_GT_GT_GT] = ">>>",
  [anon_sym_LT_LT] = "<<",
  [anon_sym_AMP] = "&",
  [anon_sym_PIPE] = "|",
  [anon_sym_PLUS] = "+",
  [anon_sym_SLASH] = "/",
  [anon_sym_PERCENT] = "%",
  [anon_sym_STAR_STAR] = "**",
  [anon_sym_EQ_EQ] = "==",
  [anon_sym_BANG_EQ] = "!=",
  [anon_sym_BANG_EQ_EQ] = "!==",
  [anon_sym_BANG] = "!",
  [anon_sym_delete] = "delete",
  [anon_sym_PLUS_PLUS] = "++",
  [anon_sym_DASH_DASH] = "--",
  [anon_sym_PLUS_EQ] = "+=",
  [anon_sym_DASH_EQ] = "-=",
  [anon_sym_STAR_EQ] = "*=",
  [anon_sym_SLASH_EQ] = "/=",
  [anon_sym_PERCENT_EQ] = "%=",
  [anon_sym_CARET_EQ] = "^=",
  [anon_sym_AMP_EQ] = "&=",
  [anon_sym_PIPE_EQ] = "|=",
  [anon_sym_GT_GT_EQ] = ">>=",
  [anon_sym_GT_GT_GT_EQ] = ">>>=",
  [anon_sym_LT_LT_EQ] = "<<=",
  [anon_sym_mapping] = "mapping",
  [anon_sym_EQ_GT] = "=>",
  [anon_sym_bool] = "bool",
  [anon_sym_string] = "string",
  [anon_sym_int] = "int",
  [anon_sym_int8] = "int8",
  [anon_sym_int16] = "int16",
  [anon_sym_int24] = "int24",
  [anon_sym_int32] = "int32",
  [anon_sym_int40] = "int40",
  [anon_sym_int48] = "int48",
  [anon_sym_int56] = "int56",
  [anon_sym_int64] = "int64",
  [anon_sym_int72] = "int72",
  [anon_sym_int80] = "int80",
  [anon_sym_int88] = "int88",
  [anon_sym_int96] = "int96",
  [anon_sym_int104] = "int104",
  [anon_sym_int112] = "int112",
  [anon_sym_int120] = "int120",
  [anon_sym_int128] = "int128",
  [anon_sym_int136] = "int136",
  [anon_sym_int144] = "int144",
  [anon_sym_int152] = "int152",
  [anon_sym_int160] = "int160",
  [anon_sym_int168] = "int168",
  [anon_sym_int176] = "int176",
  [anon_sym_int184] = "int184",
  [anon_sym_int192] = "int192",
  [anon_sym_int200] = "int200",
  [anon_sym_int208] = "int208",
  [anon_sym_int216] = "int216",
  [anon_sym_int224] = "int224",
  [anon_sym_int232] = "int232",
  [anon_sym_int240] = "int240",
  [anon_sym_int248] = "int248",
  [anon_sym_int256] = "int256",
  [anon_sym_uint] = "uint",
  [anon_sym_uint8] = "uint8",
  [anon_sym_uint16] = "uint16",
  [anon_sym_uint24] = "uint24",
  [anon_sym_uint32] = "uint32",
  [anon_sym_uint40] = "uint40",
  [anon_sym_uint48] = "uint48",
  [anon_sym_uint56] = "uint56",
  [anon_sym_uint64] = "uint64",
  [anon_sym_uint72] = "uint72",
  [anon_sym_uint80] = "uint80",
  [anon_sym_uint88] = "uint88",
  [anon_sym_uint96] = "uint96",
  [anon_sym_uint104] = "uint104",
  [anon_sym_uint112] = "uint112",
  [anon_sym_uint120] = "uint120",
  [anon_sym_uint128] = "uint128",
  [anon_sym_uint136] = "uint136",
  [anon_sym_uint144] = "uint144",
  [anon_sym_uint152] = "uint152",
  [anon_sym_uint160] = "uint160",
  [anon_sym_uint168] = "uint168",
  [anon_sym_uint176] = "uint176",
  [anon_sym_uint184] = "uint184",
  [anon_sym_uint192] = "uint192",
  [anon_sym_uint200] = "uint200",
  [anon_sym_uint208] = "uint208",
  [anon_sym_uint216] = "uint216",
  [anon_sym_uint224] = "uint224",
  [anon_sym_uint232] = "uint232",
  [anon_sym_uint240] = "uint240",
  [anon_sym_uint248] = "uint248",
  [anon_sym_uint256] = "uint256",
  [anon_sym_bytes] = "bytes",
  [anon_sym_bytes1] = "bytes1",
  [anon_sym_bytes2] = "bytes2",
  [anon_sym_bytes3] = "bytes3",
  [anon_sym_bytes4] = "bytes4",
  [anon_sym_bytes5] = "bytes5",
  [anon_sym_bytes6] = "bytes6",
  [anon_sym_bytes7] = "bytes7",
  [anon_sym_bytes8] = "bytes8",
  [anon_sym_bytes9] = "bytes9",
  [anon_sym_bytes10] = "bytes10",
  [anon_sym_bytes11] = "bytes11",
  [anon_sym_bytes12] = "bytes12",
  [anon_sym_bytes13] = "bytes13",
  [anon_sym_bytes14] = "bytes14",
  [anon_sym_bytes15] = "bytes15",
  [anon_sym_bytes16] = "bytes16",
  [anon_sym_bytes17] = "bytes17",
  [anon_sym_bytes18] = "bytes18",
  [anon_sym_bytes19] = "bytes19",
  [anon_sym_bytes20] = "bytes20",
  [anon_sym_bytes21] = "bytes21",
  [anon_sym_bytes22] = "bytes22",
  [anon_sym_bytes23] = "bytes23",
  [anon_sym_bytes24] = "bytes24",
  [anon_sym_bytes25] = "bytes25",
  [anon_sym_bytes26] = "bytes26",
  [anon_sym_bytes27] = "bytes27",
  [anon_sym_bytes28] = "bytes28",
  [anon_sym_bytes29] = "bytes29",
  [anon_sym_bytes30] = "bytes30",
  [anon_sym_bytes31] = "bytes31",
  [anon_sym_bytes32] = "bytes32",
  [anon_sym_fixed] = "fixed",
  [aux_sym__fixed_token1] = "_fixed_token1",
  [anon_sym_ufixed] = "ufixed",
  [aux_sym__ufixed_token1] = "_ufixed_token1",
  [sym__semicolon] = "_semicolon",
  [aux_sym__decimal_number_token1] = "_decimal_number_token1",
  [aux_sym__decimal_number_token2] = "_decimal_number_token2",
  [aux_sym__hex_number_token1] = "_hex_number_token1",
  [sym__hex_digit] = "_hex_digit",
  [anon_sym_wei] = "wei",
  [anon_sym_szabo] = "szabo",
  [anon_sym_finney] = "finney",
  [anon_sym_gwei] = "gwei",
  [anon_sym_ether] = "ether",
  [anon_sym_seconds] = "seconds",
  [anon_sym_minutes] = "minutes",
  [anon_sym_hours] = "hours",
  [anon_sym_days] = "days",
  [anon_sym_weeks] = "weeks",
  [anon_sym_years] = "years",
  [anon_sym_hex] = "hex",
  [anon_sym_DQUOTE] = "\"",
  [anon_sym__] = "_",
  [anon_sym_SQUOTE] = "'",
  [sym__escape_sequence] = "_escape_sequence",
  [aux_sym__single_quoted_unicode_char_token1] = "_single_quoted_unicode_char_token1",
  [aux_sym__double_quoted_unicode_char_token1] = "_double_quoted_unicode_char_token1",
  [anon_sym_unicode] = "unicode",
  [sym_comment] = "comment",
  [sym_source_file] = "source_file",
  [sym__source_unit] = "_source_unit",
  [sym__directive] = "_directive",
  [sym_pragma_directive] = "pragma_directive",
  [sym_solidity_pragma_token] = "solidity_pragma_token",
  [sym_any_pragma_token] = "any_pragma_token",
  [sym__solidity] = "_solidity",
  [sym_pragma_value] = "pragma_value",
  [sym__pragma_version_constraint] = "_pragma_version_constraint",
  [sym_solidity_version_comparison_operator] = "solidity_version_comparison_operator",
  [sym_import_directive] = "import_directive",
  [sym__source_import] = "_source_import",
  [sym__import_clause] = "_import_clause",
  [sym__from_clause] = "_from_clause",
  [sym__single_import] = "_single_import",
  [sym__multiple_import] = "_multiple_import",
  [sym__import_declaration] = "_import_declaration",
  [sym__import_alias] = "_import_alias",
  [sym__declaration] = "_declaration",
  [sym_user_defined_type_definition] = "user_defined_type_definition",
  [sym_constant_variable_declaration] = "constant_variable_declaration",
  [sym_contract_declaration] = "contract_declaration",
  [sym_error_declaration] = "error_declaration",
  [sym_error_parameter] = "error_parameter",
  [sym_interface_declaration] = "interface_declaration",
  [sym_library_declaration] = "library_declaration",
  [sym__class_heritage] = "_class_heritage",
  [sym_inheritance_specifier] = "inheritance_specifier",
  [sym_contract_body] = "contract_body",
  [sym__contract_member] = "_contract_member",
  [sym_struct_declaration] = "struct_declaration",
  [sym_struct_member] = "struct_member",
  [sym_enum_declaration] = "enum_declaration",
  [sym_event_definition] = "event_definition",
  [sym__event_parameter_list] = "_event_parameter_list",
  [sym_event_paramater] = "event_paramater",
  [sym_using_directive] = "using_directive",
  [sym_any_source_type] = "any_source_type",
  [sym__statement] = "_statement",
  [sym_assembly_statement] = "assembly_statement",
  [sym__yul_statement] = "_yul_statement",
  [sym_yul_label] = "yul_label",
  [sym_yul_break] = "yul_break",
  [sym_yul_continue] = "yul_continue",
  [sym_yul_identifier] = "yul_identifier",
  [sym__yul_expression] = "_yul_expression",
  [sym_yul_path] = "yul_path",
  [sym__yul_literal] = "_yul_literal",
  [sym_yul_string_literal] = "yul_string_literal",
  [sym_yul_boolean] = "yul_boolean",
  [sym_yul_block] = "yul_block",
  [sym_yul_variable_declaration] = "yul_variable_declaration",
  [sym__yul_assignment_operator] = "_yul_assignment_operator",
  [sym_yul_assignment] = "yul_assignment",
  [sym_yul_function_call] = "yul_function_call",
  [sym_yul_if_statement] = "yul_if_statement",
  [sym_yul_for_statement] = "yul_for_statement",
  [sym_yul_switch_statement] = "yul_switch_statement",
  [sym_yul_function_definition] = "yul_function_definition",
  [sym_yul_evm_builtin] = "yul_evm_builtin",
  [sym_block_statement] = "block_statement",
  [sym_variable_declaration_statement] = "variable_declaration_statement",
  [sym_variable_declaration] = "variable_declaration",
  [sym_variable_declaration_tuple] = "variable_declaration_tuple",
  [sym_expression_statement] = "expression_statement",
  [sym_if_statement] = "if_statement",
  [sym_for_statement] = "for_statement",
  [sym_while_statement] = "while_statement",
  [sym_do_while_statement] = "do_while_statement",
  [sym_continue_statement] = "continue_statement",
  [sym_break_statement] = "break_statement",
  [sym_revert_statement] = "revert_statement",
  [sym_try_statement] = "try_statement",
  [sym_catch_clause] = "catch_clause",
  [sym_return_statement] = "return_statement",
  [sym_emit_statement] = "emit_statement",
  [sym_state_variable_declaration] = "state_variable_declaration",
  [sym_visibility] = "visibility",
  [sym_state_mutability] = "state_mutability",
  [sym_override_specifier] = "override_specifier",
  [sym_modifier_definition] = "modifier_definition",
  [sym_constructor_definition] = "constructor_definition",
  [sym_fallback_receive_definition] = "fallback_receive_definition",
  [sym_function_definition] = "function_definition",
  [sym_return_type_definition] = "return_type_definition",
  [sym_modifier_invocation] = "modifier_invocation",
  [sym__call_arguments] = "_call_arguments",
  [sym_call_argument] = "call_argument",
  [sym_call_struct_argument] = "call_struct_argument",
  [sym_function_body] = "function_body",
  [sym__expression] = "_expression",
  [sym__primary_expression] = "_primary_expression",
  [sym_type_cast_expression] = "type_cast_expression",
  [sym_ternary_expression] = "ternary_expression",
  [sym_new_expression] = "new_expression",
  [sym_tuple_expression] = "tuple_expression",
  [sym_inline_array_expression] = "inline_array_expression",
  [sym_binary_expression] = "binary_expression",
  [sym_unary_expression] = "unary_expression",
  [sym_update_expression] = "update_expression",
  [sym_member_expression] = "member_expression",
  [sym_array_access] = "array_access",
  [sym_slice_access] = "slice_access",
  [sym_struct_expression] = "struct_expression",
  [sym_struct_field_assignment] = "struct_field_assignment",
  [sym_parenthesized_expression] = "parenthesized_expression",
  [sym_assignment_expression] = "assignment_expression",
  [sym_augmented_assignment_expression] = "augmented_assignment_expression",
  [sym_call_expression] = "call_expression",
  [sym_payable_conversion_expression] = "payable_conversion_expression",
  [sym_meta_type_expression] = "meta_type_expression",
  [sym_type_name] = "type_name",
  [sym__array_type] = "_array_type",
  [sym__function_type] = "_function_type",
  [sym__parameter_list] = "_parameter_list",
  [sym__return_parameters] = "_return_parameters",
  [sym__nameless_parameter] = "return_parameter",
  [sym_parameter] = "parameter",
  [sym__storage_location] = "_storage_location",
  [sym_user_defined_type] = "user_defined_type",
  [sym__identifier_path] = "_identifier_path",
  [sym__mapping] = "_mapping",
  [sym__mapping_key] = "_mapping_key",
  [sym_primitive_type] = "primitive_type",
  [sym__int] = "_int",
  [sym__uint] = "_uint",
  [sym__bytes] = "_bytes",
  [sym__fixed] = "_fixed",
  [sym__ufixed] = "_ufixed",
  [sym__literal] = "_literal",
  [sym_string_literal] = "string_literal",
  [sym_number_literal] = "number_literal",
  [sym__decimal_number] = "_decimal_number",
  [sym__hex_number] = "_hex_number",
  [sym_number_unit] = "number_unit",
  [sym_true] = "true",
  [sym_false] = "false",
  [sym_boolean_literal] = "boolean_literal",
  [sym_hex_string_literal] = "hex_string_literal",
  [sym__single_quoted_unicode_char] = "_single_quoted_unicode_char",
  [sym__double_quoted_unicode_char] = "_double_quoted_unicode_char",
  [sym_unicode_string_literal] = "unicode_string_literal",
  [sym_string] = "string",
  [sym__string_immediate_elt_inside_double_quote] = "_string_immediate_elt_inside_double_quote",
  [sym__string_immediate_elt_inside_quote] = "_string_immediate_elt_inside_quote",
  [aux_sym_source_file_repeat1] = "source_file_repeat1",
  [aux_sym_solidity_pragma_token_repeat1] = "solidity_pragma_token_repeat1",
  [aux_sym__multiple_import_repeat1] = "_multiple_import_repeat1",
  [aux_sym_error_declaration_repeat1] = "error_declaration_repeat1",
  [aux_sym__class_heritage_repeat1] = "_class_heritage_repeat1",
  [aux_sym_contract_body_repeat1] = "contract_body_repeat1",
  [aux_sym_struct_declaration_repeat1] = "struct_declaration_repeat1",
  [aux_sym_enum_declaration_repeat1] = "enum_declaration_repeat1",
  [aux_sym__event_parameter_list_repeat1] = "_event_parameter_list_repeat1",
  [aux_sym_assembly_statement_repeat1] = "assembly_statement_repeat1",
  [aux_sym_yul_path_repeat1] = "yul_path_repeat1",
  [aux_sym_yul_variable_declaration_repeat1] = "yul_variable_declaration_repeat1",
  [aux_sym_yul_assignment_repeat1] = "yul_assignment_repeat1",
  [aux_sym_yul_function_call_repeat1] = "yul_function_call_repeat1",
  [aux_sym_yul_switch_statement_repeat1] = "yul_switch_statement_repeat1",
  [aux_sym_block_statement_repeat1] = "block_statement_repeat1",
  [aux_sym_variable_declaration_tuple_repeat1] = "variable_declaration_tuple_repeat1",
  [aux_sym_variable_declaration_tuple_repeat2] = "variable_declaration_tuple_repeat2",
  [aux_sym_try_statement_repeat1] = "try_statement_repeat1",
  [aux_sym_state_variable_declaration_repeat1] = "state_variable_declaration_repeat1",
  [aux_sym_override_specifier_repeat1] = "override_specifier_repeat1",
  [aux_sym_modifier_definition_repeat1] = "modifier_definition_repeat1",
  [aux_sym_constructor_definition_repeat1] = "constructor_definition_repeat1",
  [aux_sym_fallback_receive_definition_repeat1] = "fallback_receive_definition_repeat1",
  [aux_sym_function_definition_repeat1] = "function_definition_repeat1",
  [aux_sym__call_arguments_repeat1] = "_call_arguments_repeat1",
  [aux_sym_call_argument_repeat1] = "call_argument_repeat1",
  [aux_sym_tuple_expression_repeat1] = "tuple_expression_repeat1",
  [aux_sym_inline_array_expression_repeat1] = "inline_array_expression_repeat1",
  [aux_sym_struct_expression_repeat1] = "struct_expression_repeat1",
  [aux_sym__function_type_repeat1] = "_function_type_repeat1",
  [aux_sym__parameter_list_repeat1] = "_parameter_list_repeat1",
  [aux_sym__return_parameters_repeat1] = "_return_parameters_repeat1",
  [aux_sym__identifier_path_repeat1] = "_identifier_path_repeat1",
  [aux_sym_string_literal_repeat1] = "string_literal_repeat1",
  [aux_sym_hex_string_literal_repeat1] = "hex_string_literal_repeat1",
  [aux_sym_hex_string_literal_repeat2] = "hex_string_literal_repeat2",
  [aux_sym_unicode_string_literal_repeat1] = "unicode_string_literal_repeat1",
  [aux_sym_unicode_string_literal_repeat2] = "unicode_string_literal_repeat2",
  [aux_sym_unicode_string_literal_repeat3] = "unicode_string_literal_repeat3",
  [aux_sym_string_repeat1] = "string_repeat1",
  [aux_sym_string_repeat2] = "string_repeat2",
  [alias_sym_enum_value] = "enum_value",
  [alias_sym_revert_arguments] = "revert_arguments",
  [alias_sym_type_alias] = "type_alias",
};

static const TSSymbol ts_symbol_map[] = {
  [ts_builtin_sym_end] = ts_builtin_sym_end,
  [sym_identifier] = sym_identifier,
  [anon_sym_pragma] = anon_sym_pragma,
  [anon_sym_PIPE_PIPE] = anon_sym_PIPE_PIPE,
  [anon_sym_DASH] = anon_sym_DASH,
  [anon_sym_solidity] = anon_sym_solidity,
  [aux_sym_pragma_value_token1] = aux_sym_pragma_value_token1,
  [sym_solidity_version] = sym_solidity_version,
  [anon_sym_LT_EQ] = anon_sym_LT_EQ,
  [anon_sym_LT] = anon_sym_LT,
  [anon_sym_CARET] = anon_sym_CARET,
  [anon_sym_GT] = anon_sym_GT,
  [anon_sym_GT_EQ] = anon_sym_GT_EQ,
  [anon_sym_TILDE] = anon_sym_TILDE,
  [anon_sym_EQ] = anon_sym_EQ,
  [anon_sym_import] = anon_sym_import,
  [anon_sym_from] = anon_sym_from,
  [anon_sym_STAR] = anon_sym_STAR,
  [anon_sym_LBRACE] = anon_sym_LBRACE,
  [anon_sym_COMMA] = anon_sym_COMMA,
  [anon_sym_RBRACE] = anon_sym_RBRACE,
  [anon_sym_as] = anon_sym_as,
  [anon_sym_type] = anon_sym_type,
  [anon_sym_is] = anon_sym_is,
  [anon_sym_constant] = anon_sym_constant,
  [anon_sym_abstract] = anon_sym_abstract,
  [anon_sym_contract] = anon_sym_contract,
  [anon_sym_error] = anon_sym_error,
  [anon_sym_LPAREN] = anon_sym_LPAREN,
  [anon_sym_RPAREN] = anon_sym_RPAREN,
  [anon_sym_interface] = anon_sym_interface,
  [anon_sym_library] = anon_sym_library,
  [anon_sym_struct] = anon_sym_struct,
  [anon_sym_enum] = anon_sym_enum,
  [anon_sym_event] = anon_sym_event,
  [anon_sym_anonymous] = anon_sym_anonymous,
  [anon_sym_indexed] = anon_sym_indexed,
  [anon_sym_using] = anon_sym_using,
  [anon_sym_for] = anon_sym_for,
  [anon_sym_assembly] = anon_sym_assembly,
  [anon_sym_DQUOTEevmasm_DQUOTE] = anon_sym_DQUOTEevmasm_DQUOTE,
  [anon_sym_COLON] = anon_sym_COLON,
  [sym_yul_leave] = sym_yul_leave,
  [anon_sym_break] = anon_sym_break,
  [anon_sym_continue] = anon_sym_continue,
  [anon_sym_DOT] = anon_sym_DOT,
  [sym_yul_decimal_number] = sym_yul_decimal_number,
  [sym_yul_hex_number] = sym_yul_hex_number,
  [anon_sym_true] = anon_sym_true,
  [anon_sym_false] = anon_sym_false,
  [anon_sym_let] = anon_sym_let,
  [anon_sym_COLON_EQ] = anon_sym_COLON_EQ,
  [anon_sym_if] = anon_sym_if,
  [anon_sym_switch] = anon_sym_switch,
  [anon_sym_default] = anon_sym_default,
  [anon_sym_case] = anon_sym_case,
  [anon_sym_function] = anon_sym_function,
  [anon_sym_DASH_GT] = anon_sym_DASH_GT,
  [anon_sym_stop] = anon_sym_stop,
  [anon_sym_add] = anon_sym_add,
  [anon_sym_sub] = anon_sym_sub,
  [anon_sym_mul] = anon_sym_mul,
  [anon_sym_div] = anon_sym_div,
  [anon_sym_sdiv] = anon_sym_sdiv,
  [anon_sym_mod] = anon_sym_mod,
  [anon_sym_smod] = anon_sym_smod,
  [anon_sym_exp] = anon_sym_exp,
  [anon_sym_not] = anon_sym_not,
  [anon_sym_lt] = anon_sym_lt,
  [anon_sym_gt] = anon_sym_gt,
  [anon_sym_slt] = anon_sym_slt,
  [anon_sym_sgt] = anon_sym_sgt,
  [anon_sym_eq] = anon_sym_eq,
  [anon_sym_iszero] = anon_sym_iszero,
  [anon_sym_and] = anon_sym_and,
  [anon_sym_or] = anon_sym_or,
  [anon_sym_xor] = anon_sym_xor,
  [anon_sym_byte] = anon_sym_byte,
  [anon_sym_shl] = anon_sym_shl,
  [anon_sym_shr] = anon_sym_shr,
  [anon_sym_sar] = anon_sym_sar,
  [anon_sym_addmod] = anon_sym_addmod,
  [anon_sym_mulmod] = anon_sym_mulmod,
  [anon_sym_signextend] = anon_sym_signextend,
  [anon_sym_keccak256] = anon_sym_keccak256,
  [anon_sym_pop] = anon_sym_pop,
  [anon_sym_mload] = anon_sym_mload,
  [anon_sym_mstore] = anon_sym_mstore,
  [anon_sym_mstore8] = anon_sym_mstore8,
  [anon_sym_sload] = anon_sym_sload,
  [anon_sym_sstore] = anon_sym_sstore,
  [anon_sym_msize] = anon_sym_msize,
  [anon_sym_gas] = anon_sym_gas,
  [anon_sym_address] = anon_sym_address,
  [anon_sym_balance] = anon_sym_balance,
  [anon_sym_selfbalance] = anon_sym_selfbalance,
  [anon_sym_caller] = anon_sym_caller,
  [anon_sym_callvalue] = anon_sym_callvalue,
  [anon_sym_calldataload] = anon_sym_calldataload,
  [anon_sym_calldatasize] = anon_sym_calldatasize,
  [anon_sym_calldatacopy] = anon_sym_calldatacopy,
  [anon_sym_extcodesize] = anon_sym_extcodesize,
  [anon_sym_extcodecopy] = anon_sym_extcodecopy,
  [anon_sym_returndatasize] = anon_sym_returndatasize,
  [anon_sym_returndatacopy] = anon_sym_returndatacopy,
  [anon_sym_extcodehash] = anon_sym_extcodehash,
  [anon_sym_create] = anon_sym_create,
  [anon_sym_create2] = anon_sym_create2,
  [anon_sym_call] = anon_sym_call,
  [anon_sym_callcode] = anon_sym_callcode,
  [anon_sym_delegatecall] = anon_sym_delegatecall,
  [anon_sym_staticcall] = anon_sym_staticcall,
  [anon_sym_return] = anon_sym_return,
  [anon_sym_revert] = anon_sym_revert,
  [anon_sym_selfdestruct] = anon_sym_selfdestruct,
  [anon_sym_invalid] = anon_sym_invalid,
  [anon_sym_log0] = anon_sym_log0,
  [anon_sym_log1] = anon_sym_log1,
  [anon_sym_log2] = anon_sym_log2,
  [anon_sym_log3] = anon_sym_log3,
  [anon_sym_log4] = anon_sym_log4,
  [anon_sym_chainid] = anon_sym_chainid,
  [anon_sym_origin] = anon_sym_origin,
  [anon_sym_gasprice] = anon_sym_gasprice,
  [anon_sym_blockhash] = anon_sym_blockhash,
  [anon_sym_coinbase] = anon_sym_coinbase,
  [anon_sym_timestamp] = anon_sym_timestamp,
  [anon_sym_number] = anon_sym_number,
  [anon_sym_difficulty] = anon_sym_difficulty,
  [anon_sym_gaslimit] = anon_sym_gaslimit,
  [sym__unchecked] = sym__unchecked,
  [anon_sym_memory] = anon_sym_memory,
  [anon_sym_storage] = anon_sym_storage,
  [anon_sym_calldata] = anon_sym_calldata,
  [anon_sym_var] = anon_sym_var,
  [anon_sym_else] = anon_sym_else,
  [anon_sym_while] = anon_sym_while,
  [anon_sym_do] = anon_sym_do,
  [anon_sym_try] = anon_sym_try,
  [anon_sym_returns] = anon_sym_returns,
  [anon_sym_catch] = anon_sym_catch,
  [anon_sym_emit] = anon_sym_emit,
  [anon_sym_public] = anon_sym_public,
  [anon_sym_internal] = anon_sym_internal,
  [anon_sym_private] = anon_sym_private,
  [anon_sym_external] = anon_sym_external,
  [anon_sym_pure] = anon_sym_pure,
  [anon_sym_view] = anon_sym_view,
  [anon_sym_payable] = anon_sym_payable,
  [sym_immutable] = sym_immutable,
  [anon_sym_override] = anon_sym_override,
  [anon_sym_modifier] = anon_sym_modifier,
  [anon_sym_constructor] = anon_sym_constructor,
  [anon_sym_fallback] = anon_sym_fallback,
  [anon_sym_receive] = anon_sym_receive,
  [sym_virtual] = sym_virtual,
  [anon_sym_QMARK] = anon_sym_QMARK,
  [anon_sym_new] = anon_sym_new,
  [anon_sym_LBRACK] = anon_sym_LBRACK,
  [anon_sym_RBRACK] = anon_sym_RBRACK,
  [anon_sym_AMP_AMP] = anon_sym_AMP_AMP,
  [anon_sym_GT_GT] = anon_sym_GT_GT,
  [anon_sym_GT_GT_GT] = anon_sym_GT_GT_GT,
  [anon_sym_LT_LT] = anon_sym_LT_LT,
  [anon_sym_AMP] = anon_sym_AMP,
  [anon_sym_PIPE] = anon_sym_PIPE,
  [anon_sym_PLUS] = anon_sym_PLUS,
  [anon_sym_SLASH] = anon_sym_SLASH,
  [anon_sym_PERCENT] = anon_sym_PERCENT,
  [anon_sym_STAR_STAR] = anon_sym_STAR_STAR,
  [anon_sym_EQ_EQ] = anon_sym_EQ_EQ,
  [anon_sym_BANG_EQ] = anon_sym_BANG_EQ,
  [anon_sym_BANG_EQ_EQ] = anon_sym_BANG_EQ_EQ,
  [anon_sym_BANG] = anon_sym_BANG,
  [anon_sym_delete] = anon_sym_delete,
  [anon_sym_PLUS_PLUS] = anon_sym_PLUS_PLUS,
  [anon_sym_DASH_DASH] = anon_sym_DASH_DASH,
  [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_CARET_EQ] = anon_sym_CARET_EQ,
  [anon_sym_AMP_EQ] = anon_sym_AMP_EQ,
  [anon_sym_PIPE_EQ] = anon_sym_PIPE_EQ,
  [anon_sym_GT_GT_EQ] = anon_sym_GT_GT_EQ,
  [anon_sym_GT_GT_GT_EQ] = anon_sym_GT_GT_GT_EQ,
  [anon_sym_LT_LT_EQ] = anon_sym_LT_LT_EQ,
  [anon_sym_mapping] = anon_sym_mapping,
  [anon_sym_EQ_GT] = anon_sym_EQ_GT,
  [anon_sym_bool] = anon_sym_bool,
  [anon_sym_string] = anon_sym_string,
  [anon_sym_int] = anon_sym_int,
  [anon_sym_int8] = anon_sym_int8,
  [anon_sym_int16] = anon_sym_int16,
  [anon_sym_int24] = anon_sym_int24,
  [anon_sym_int32] = anon_sym_int32,
  [anon_sym_int40] = anon_sym_int40,
  [anon_sym_int48] = anon_sym_int48,
  [anon_sym_int56] = anon_sym_int56,
  [anon_sym_int64] = anon_sym_int64,
  [anon_sym_int72] = anon_sym_int72,
  [anon_sym_int80] = anon_sym_int80,
  [anon_sym_int88] = anon_sym_int88,
  [anon_sym_int96] = anon_sym_int96,
  [anon_sym_int104] = anon_sym_int104,
  [anon_sym_int112] = anon_sym_int112,
  [anon_sym_int120] = anon_sym_int120,
  [anon_sym_int128] = anon_sym_int128,
  [anon_sym_int136] = anon_sym_int136,
  [anon_sym_int144] = anon_sym_int144,
  [anon_sym_int152] = anon_sym_int152,
  [anon_sym_int160] = anon_sym_int160,
  [anon_sym_int168] = anon_sym_int168,
  [anon_sym_int176] = anon_sym_int176,
  [anon_sym_int184] = anon_sym_int184,
  [anon_sym_int192] = anon_sym_int192,
  [anon_sym_int200] = anon_sym_int200,
  [anon_sym_int208] = anon_sym_int208,
  [anon_sym_int216] = anon_sym_int216,
  [anon_sym_int224] = anon_sym_int224,
  [anon_sym_int232] = anon_sym_int232,
  [anon_sym_int240] = anon_sym_int240,
  [anon_sym_int248] = anon_sym_int248,
  [anon_sym_int256] = anon_sym_int256,
  [anon_sym_uint] = anon_sym_uint,
  [anon_sym_uint8] = anon_sym_uint8,
  [anon_sym_uint16] = anon_sym_uint16,
  [anon_sym_uint24] = anon_sym_uint24,
  [anon_sym_uint32] = anon_sym_uint32,
  [anon_sym_uint40] = anon_sym_uint40,
  [anon_sym_uint48] = anon_sym_uint48,
  [anon_sym_uint56] = anon_sym_uint56,
  [anon_sym_uint64] = anon_sym_uint64,
  [anon_sym_uint72] = anon_sym_uint72,
  [anon_sym_uint80] = anon_sym_uint80,
  [anon_sym_uint88] = anon_sym_uint88,
  [anon_sym_uint96] = anon_sym_uint96,
  [anon_sym_uint104] = anon_sym_uint104,
  [anon_sym_uint112] = anon_sym_uint112,
  [anon_sym_uint120] = anon_sym_uint120,
  [anon_sym_uint128] = anon_sym_uint128,
  [anon_sym_uint136] = anon_sym_uint136,
  [anon_sym_uint144] = anon_sym_uint144,
  [anon_sym_uint152] = anon_sym_uint152,
  [anon_sym_uint160] = anon_sym_uint160,
  [anon_sym_uint168] = anon_sym_uint168,
  [anon_sym_uint176] = anon_sym_uint176,
  [anon_sym_uint184] = anon_sym_uint184,
  [anon_sym_uint192] = anon_sym_uint192,
  [anon_sym_uint200] = anon_sym_uint200,
  [anon_sym_uint208] = anon_sym_uint208,
  [anon_sym_uint216] = anon_sym_uint216,
  [anon_sym_uint224] = anon_sym_uint224,
  [anon_sym_uint232] = anon_sym_uint232,
  [anon_sym_uint240] = anon_sym_uint240,
  [anon_sym_uint248] = anon_sym_uint248,
  [anon_sym_uint256] = anon_sym_uint256,
  [anon_sym_bytes] = anon_sym_bytes,
  [anon_sym_bytes1] = anon_sym_bytes1,
  [anon_sym_bytes2] = anon_sym_bytes2,
  [anon_sym_bytes3] = anon_sym_bytes3,
  [anon_sym_bytes4] = anon_sym_bytes4,
  [anon_sym_bytes5] = anon_sym_bytes5,
  [anon_sym_bytes6] = anon_sym_bytes6,
  [anon_sym_bytes7] = anon_sym_bytes7,
  [anon_sym_bytes8] = anon_sym_bytes8,
  [anon_sym_bytes9] = anon_sym_bytes9,
  [anon_sym_bytes10] = anon_sym_bytes10,
  [anon_sym_bytes11] = anon_sym_bytes11,
  [anon_sym_bytes12] = anon_sym_bytes12,
  [anon_sym_bytes13] = anon_sym_bytes13,
  [anon_sym_bytes14] = anon_sym_bytes14,
  [anon_sym_bytes15] = anon_sym_bytes15,
  [anon_sym_bytes16] = anon_sym_bytes16,
  [anon_sym_bytes17] = anon_sym_bytes17,
  [anon_sym_bytes18] = anon_sym_bytes18,
  [anon_sym_bytes19] = anon_sym_bytes19,
  [anon_sym_bytes20] = anon_sym_bytes20,
  [anon_sym_bytes21] = anon_sym_bytes21,
  [anon_sym_bytes22] = anon_sym_bytes22,
  [anon_sym_bytes23] = anon_sym_bytes23,
  [anon_sym_bytes24] = anon_sym_bytes24,
  [anon_sym_bytes25] = anon_sym_bytes25,
  [anon_sym_bytes26] = anon_sym_bytes26,
  [anon_sym_bytes27] = anon_sym_bytes27,
  [anon_sym_bytes28] = anon_sym_bytes28,
  [anon_sym_bytes29] = anon_sym_bytes29,
  [anon_sym_bytes30] = anon_sym_bytes30,
  [anon_sym_bytes31] = anon_sym_bytes31,
  [anon_sym_bytes32] = anon_sym_bytes32,
  [anon_sym_fixed] = anon_sym_fixed,
  [aux_sym__fixed_token1] = aux_sym__fixed_token1,
  [anon_sym_ufixed] = anon_sym_ufixed,
  [aux_sym__ufixed_token1] = aux_sym__ufixed_token1,
  [sym__semicolon] = sym__semicolon,
  [aux_sym__decimal_number_token1] = aux_sym__decimal_number_token1,
  [aux_sym__decimal_number_token2] = aux_sym__decimal_number_token2,
  [aux_sym__hex_number_token1] = aux_sym__hex_number_token1,
  [sym__hex_digit] = sym__hex_digit,
  [anon_sym_wei] = anon_sym_wei,
  [anon_sym_szabo] = anon_sym_szabo,
  [anon_sym_finney] = anon_sym_finney,
  [anon_sym_gwei] = anon_sym_gwei,
  [anon_sym_ether] = anon_sym_ether,
  [anon_sym_seconds] = anon_sym_seconds,
  [anon_sym_minutes] = anon_sym_minutes,
  [anon_sym_hours] = anon_sym_hours,
  [anon_sym_days] = anon_sym_days,
  [anon_sym_weeks] = anon_sym_weeks,
  [anon_sym_years] = anon_sym_years,
  [anon_sym_hex] = anon_sym_hex,
  [anon_sym_DQUOTE] = anon_sym_DQUOTE,
  [anon_sym__] = anon_sym__,
  [anon_sym_SQUOTE] = anon_sym_SQUOTE,
  [sym__escape_sequence] = sym__escape_sequence,
  [aux_sym__single_quoted_unicode_char_token1] = aux_sym__single_quoted_unicode_char_token1,
  [aux_sym__double_quoted_unicode_char_token1] = aux_sym__double_quoted_unicode_char_token1,
  [anon_sym_unicode] = anon_sym_unicode,
  [sym_comment] = sym_comment,
  [sym_source_file] = sym_source_file,
  [sym__source_unit] = sym__source_unit,
  [sym__directive] = sym__directive,
  [sym_pragma_directive] = sym_pragma_directive,
  [sym_solidity_pragma_token] = sym_solidity_pragma_token,
  [sym_any_pragma_token] = sym_any_pragma_token,
  [sym__solidity] = sym__solidity,
  [sym_pragma_value] = sym_pragma_value,
  [sym__pragma_version_constraint] = sym__pragma_version_constraint,
  [sym_solidity_version_comparison_operator] = sym_solidity_version_comparison_operator,
  [sym_import_directive] = sym_import_directive,
  [sym__source_import] = sym__source_import,
  [sym__import_clause] = sym__import_clause,
  [sym__from_clause] = sym__from_clause,
  [sym__single_import] = sym__single_import,
  [sym__multiple_import] = sym__multiple_import,
  [sym__import_declaration] = sym__import_declaration,
  [sym__import_alias] = sym__import_alias,
  [sym__declaration] = sym__declaration,
  [sym_user_defined_type_definition] = sym_user_defined_type_definition,
  [sym_constant_variable_declaration] = sym_constant_variable_declaration,
  [sym_contract_declaration] = sym_contract_declaration,
  [sym_error_declaration] = sym_error_declaration,
  [sym_error_parameter] = sym_error_parameter,
  [sym_interface_declaration] = sym_interface_declaration,
  [sym_library_declaration] = sym_library_declaration,
  [sym__class_heritage] = sym__class_heritage,
  [sym_inheritance_specifier] = sym_inheritance_specifier,
  [sym_contract_body] = sym_contract_body,
  [sym__contract_member] = sym__contract_member,
  [sym_struct_declaration] = sym_struct_declaration,
  [sym_struct_member] = sym_struct_member,
  [sym_enum_declaration] = sym_enum_declaration,
  [sym_event_definition] = sym_event_definition,
  [sym__event_parameter_list] = sym__event_parameter_list,
  [sym_event_paramater] = sym_event_paramater,
  [sym_using_directive] = sym_using_directive,
  [sym_any_source_type] = sym_any_source_type,
  [sym__statement] = sym__statement,
  [sym_assembly_statement] = sym_assembly_statement,
  [sym__yul_statement] = sym__yul_statement,
  [sym_yul_label] = sym_yul_label,
  [sym_yul_break] = sym_yul_break,
  [sym_yul_continue] = sym_yul_continue,
  [sym_yul_identifier] = sym_yul_identifier,
  [sym__yul_expression] = sym__yul_expression,
  [sym_yul_path] = sym_yul_path,
  [sym__yul_literal] = sym__yul_literal,
  [sym_yul_string_literal] = sym_yul_string_literal,
  [sym_yul_boolean] = sym_yul_boolean,
  [sym_yul_block] = sym_yul_block,
  [sym_yul_variable_declaration] = sym_yul_variable_declaration,
  [sym__yul_assignment_operator] = sym__yul_assignment_operator,
  [sym_yul_assignment] = sym_yul_assignment,
  [sym_yul_function_call] = sym_yul_function_call,
  [sym_yul_if_statement] = sym_yul_if_statement,
  [sym_yul_for_statement] = sym_yul_for_statement,
  [sym_yul_switch_statement] = sym_yul_switch_statement,
  [sym_yul_function_definition] = sym_yul_function_definition,
  [sym_yul_evm_builtin] = sym_yul_evm_builtin,
  [sym_block_statement] = sym_block_statement,
  [sym_variable_declaration_statement] = sym_variable_declaration_statement,
  [sym_variable_declaration] = sym_variable_declaration,
  [sym_variable_declaration_tuple] = sym_variable_declaration_tuple,
  [sym_expression_statement] = sym_expression_statement,
  [sym_if_statement] = sym_if_statement,
  [sym_for_statement] = sym_for_statement,
  [sym_while_statement] = sym_while_statement,
  [sym_do_while_statement] = sym_do_while_statement,
  [sym_continue_statement] = sym_continue_statement,
  [sym_break_statement] = sym_break_statement,
  [sym_revert_statement] = sym_revert_statement,
  [sym_try_statement] = sym_try_statement,
  [sym_catch_clause] = sym_catch_clause,
  [sym_return_statement] = sym_return_statement,
  [sym_emit_statement] = sym_emit_statement,
  [sym_state_variable_declaration] = sym_state_variable_declaration,
  [sym_visibility] = sym_visibility,
  [sym_state_mutability] = sym_state_mutability,
  [sym_override_specifier] = sym_override_specifier,
  [sym_modifier_definition] = sym_modifier_definition,
  [sym_constructor_definition] = sym_constructor_definition,
  [sym_fallback_receive_definition] = sym_fallback_receive_definition,
  [sym_function_definition] = sym_function_definition,
  [sym_return_type_definition] = sym_return_type_definition,
  [sym_modifier_invocation] = sym_modifier_invocation,
  [sym__call_arguments] = sym__call_arguments,
  [sym_call_argument] = sym_call_argument,
  [sym_call_struct_argument] = sym_call_struct_argument,
  [sym_function_body] = sym_function_body,
  [sym__expression] = sym__expression,
  [sym__primary_expression] = sym__primary_expression,
  [sym_type_cast_expression] = sym_type_cast_expression,
  [sym_ternary_expression] = sym_ternary_expression,
  [sym_new_expression] = sym_new_expression,
  [sym_tuple_expression] = sym_tuple_expression,
  [sym_inline_array_expression] = sym_inline_array_expression,
  [sym_binary_expression] = sym_binary_expression,
  [sym_unary_expression] = sym_unary_expression,
  [sym_update_expression] = sym_update_expression,
  [sym_member_expression] = sym_member_expression,
  [sym_array_access] = sym_array_access,
  [sym_slice_access] = sym_slice_access,
  [sym_struct_expression] = sym_struct_expression,
  [sym_struct_field_assignment] = sym_struct_field_assignment,
  [sym_parenthesized_expression] = sym_parenthesized_expression,
  [sym_assignment_expression] = sym_assignment_expression,
  [sym_augmented_assignment_expression] = sym_augmented_assignment_expression,
  [sym_call_expression] = sym_call_expression,
  [sym_payable_conversion_expression] = sym_payable_conversion_expression,
  [sym_meta_type_expression] = sym_meta_type_expression,
  [sym_type_name] = sym_type_name,
  [sym__array_type] = sym__array_type,
  [sym__function_type] = sym__function_type,
  [sym__parameter_list] = sym__parameter_list,
  [sym__return_parameters] = sym__return_parameters,
  [sym__nameless_parameter] = sym__nameless_parameter,
  [sym_parameter] = sym_parameter,
  [sym__storage_location] = sym__storage_location,
  [sym_user_defined_type] = sym_user_defined_type,
  [sym__identifier_path] = sym__identifier_path,
  [sym__mapping] = sym__mapping,
  [sym__mapping_key] = sym__mapping_key,
  [sym_primitive_type] = sym_primitive_type,
  [sym__int] = sym__int,
  [sym__uint] = sym__uint,
  [sym__bytes] = sym__bytes,
  [sym__fixed] = sym__fixed,
  [sym__ufixed] = sym__ufixed,
  [sym__literal] = sym__literal,
  [sym_string_literal] = sym_string_literal,
  [sym_number_literal] = sym_number_literal,
  [sym__decimal_number] = sym__decimal_number,
  [sym__hex_number] = sym__hex_number,
  [sym_number_unit] = sym_number_unit,
  [sym_true] = sym_true,
  [sym_false] = sym_false,
  [sym_boolean_literal] = sym_boolean_literal,
  [sym_hex_string_literal] = sym_hex_string_literal,
  [sym__single_quoted_unicode_char] = sym__single_quoted_unicode_char,
  [sym__double_quoted_unicode_char] = sym__double_quoted_unicode_char,
  [sym_unicode_string_literal] = sym_unicode_string_literal,
  [sym_string] = sym_string,
  [sym__string_immediate_elt_inside_double_quote] = sym__string_immediate_elt_inside_double_quote,
  [sym__string_immediate_elt_inside_quote] = sym__string_immediate_elt_inside_quote,
  [aux_sym_source_file_repeat1] = aux_sym_source_file_repeat1,
  [aux_sym_solidity_pragma_token_repeat1] = aux_sym_solidity_pragma_token_repeat1,
  [aux_sym__multiple_import_repeat1] = aux_sym__multiple_import_repeat1,
  [aux_sym_error_declaration_repeat1] = aux_sym_error_declaration_repeat1,
  [aux_sym__class_heritage_repeat1] = aux_sym__class_heritage_repeat1,
  [aux_sym_contract_body_repeat1] = aux_sym_contract_body_repeat1,
  [aux_sym_struct_declaration_repeat1] = aux_sym_struct_declaration_repeat1,
  [aux_sym_enum_declaration_repeat1] = aux_sym_enum_declaration_repeat1,
  [aux_sym__event_parameter_list_repeat1] = aux_sym__event_parameter_list_repeat1,
  [aux_sym_assembly_statement_repeat1] = aux_sym_assembly_statement_repeat1,
  [aux_sym_yul_path_repeat1] = aux_sym_yul_path_repeat1,
  [aux_sym_yul_variable_declaration_repeat1] = aux_sym_yul_variable_declaration_repeat1,
  [aux_sym_yul_assignment_repeat1] = aux_sym_yul_assignment_repeat1,
  [aux_sym_yul_function_call_repeat1] = aux_sym_yul_function_call_repeat1,
  [aux_sym_yul_switch_statement_repeat1] = aux_sym_yul_switch_statement_repeat1,
  [aux_sym_block_statement_repeat1] = aux_sym_block_statement_repeat1,
  [aux_sym_variable_declaration_tuple_repeat1] = aux_sym_variable_declaration_tuple_repeat1,
  [aux_sym_variable_declaration_tuple_repeat2] = aux_sym_variable_declaration_tuple_repeat2,
  [aux_sym_try_statement_repeat1] = aux_sym_try_statement_repeat1,
  [aux_sym_state_variable_declaration_repeat1] = aux_sym_state_variable_declaration_repeat1,
  [aux_sym_override_specifier_repeat1] = aux_sym_override_specifier_repeat1,
  [aux_sym_modifier_definition_repeat1] = aux_sym_modifier_definition_repeat1,
  [aux_sym_constructor_definition_repeat1] = aux_sym_constructor_definition_repeat1,
  [aux_sym_fallback_receive_definition_repeat1] = aux_sym_fallback_receive_definition_repeat1,
  [aux_sym_function_definition_repeat1] = aux_sym_function_definition_repeat1,
  [aux_sym__call_arguments_repeat1] = aux_sym__call_arguments_repeat1,
  [aux_sym_call_argument_repeat1] = aux_sym_call_argument_repeat1,
  [aux_sym_tuple_expression_repeat1] = aux_sym_tuple_expression_repeat1,
  [aux_sym_inline_array_expression_repeat1] = aux_sym_inline_array_expression_repeat1,
  [aux_sym_struct_expression_repeat1] = aux_sym_struct_expression_repeat1,
  [aux_sym__function_type_repeat1] = aux_sym__function_type_repeat1,
  [aux_sym__parameter_list_repeat1] = aux_sym__parameter_list_repeat1,
  [aux_sym__return_parameters_repeat1] = aux_sym__return_parameters_repeat1,
  [aux_sym__identifier_path_repeat1] = aux_sym__identifier_path_repeat1,
  [aux_sym_string_literal_repeat1] = aux_sym_string_literal_repeat1,
  [aux_sym_hex_string_literal_repeat1] = aux_sym_hex_string_literal_repeat1,
  [aux_sym_hex_string_literal_repeat2] = aux_sym_hex_string_literal_repeat2,
  [aux_sym_unicode_string_literal_repeat1] = aux_sym_unicode_string_literal_repeat1,
  [aux_sym_unicode_string_literal_repeat2] = aux_sym_unicode_string_literal_repeat2,
  [aux_sym_unicode_string_literal_repeat3] = aux_sym_unicode_string_literal_repeat3,
  [aux_sym_string_repeat1] = aux_sym_string_repeat1,
  [aux_sym_string_repeat2] = aux_sym_string_repeat2,
  [alias_sym_enum_value] = alias_sym_enum_value,
  [alias_sym_revert_arguments] = alias_sym_revert_arguments,
  [alias_sym_type_alias] = alias_sym_type_alias,
};

static const TSSymbolMetadata ts_symbol_metadata[] = {
  [ts_builtin_sym_end] = {
    .visible = false,
    .named = true,
  },
  [sym_identifier] = {
    .visible = true,
    .named = true,
  },
  [anon_sym_pragma] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_PIPE_PIPE] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_DASH] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_solidity] = {
    .visible = true,
    .named = false,
  },
  [aux_sym_pragma_value_token1] = {
    .visible = false,
    .named = false,
  },
  [sym_solidity_version] = {
    .visible = true,
    .named = true,
  },
  [anon_sym_LT_EQ] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_LT] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_CARET] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_GT] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_GT_EQ] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_TILDE] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_EQ] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_import] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_from] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_STAR] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_LBRACE] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_COMMA] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_RBRACE] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_as] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_type] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_is] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_constant] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_abstract] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_contract] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_error] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_LPAREN] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_RPAREN] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_interface] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_library] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_struct] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_enum] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_event] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_anonymous] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_indexed] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_using] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_for] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_assembly] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_DQUOTEevmasm_DQUOTE] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_COLON] = {
    .visible = true,
    .named = false,
  },
  [sym_yul_leave] = {
    .visible = true,
    .named = true,
  },
  [anon_sym_break] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_continue] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_DOT] = {
    .visible = true,
    .named = false,
  },
  [sym_yul_decimal_number] = {
    .visible = true,
    .named = true,
  },
  [sym_yul_hex_number] = {
    .visible = true,
    .named = true,
  },
  [anon_sym_true] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_false] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_let] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_COLON_EQ] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_if] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_switch] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_default] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_case] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_function] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_DASH_GT] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_stop] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_add] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_sub] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_mul] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_div] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_sdiv] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_mod] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_smod] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_exp] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_not] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_lt] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_gt] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_slt] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_sgt] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_eq] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_iszero] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_and] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_or] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_xor] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_byte] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_shl] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_shr] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_sar] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_addmod] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_mulmod] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_signextend] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_keccak256] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_pop] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_mload] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_mstore] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_mstore8] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_sload] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_sstore] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_msize] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_gas] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_address] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_balance] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_selfbalance] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_caller] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_callvalue] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_calldataload] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_calldatasize] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_calldatacopy] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_extcodesize] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_extcodecopy] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_returndatasize] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_returndatacopy] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_extcodehash] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_create] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_create2] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_call] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_callcode] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_delegatecall] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_staticcall] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_return] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_revert] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_selfdestruct] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_invalid] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_log0] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_log1] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_log2] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_log3] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_log4] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_chainid] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_origin] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_gasprice] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_blockhash] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_coinbase] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_timestamp] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_number] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_difficulty] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_gaslimit] = {
    .visible = true,
    .named = false,
  },
  [sym__unchecked] = {
    .visible = false,
    .named = true,
  },
  [anon_sym_memory] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_storage] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_calldata] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_var] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_else] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_while] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_do] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_try] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_returns] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_catch] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_emit] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_public] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_internal] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_private] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_external] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_pure] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_view] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_payable] = {
    .visible = true,
    .named = false,
  },
  [sym_immutable] = {
    .visible = true,
    .named = true,
  },
  [anon_sym_override] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_modifier] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_constructor] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_fallback] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_receive] = {
    .visible = true,
    .named = false,
  },
  [sym_virtual] = {
    .visible = true,
    .named = true,
  },
  [anon_sym_QMARK] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_new] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_LBRACK] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_RBRACK] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_AMP_AMP] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_GT_GT] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_GT_GT_GT] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_LT_LT] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_AMP] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_PIPE] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_PLUS] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_SLASH] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_PERCENT] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_STAR_STAR] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_EQ_EQ] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_BANG_EQ] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_BANG_EQ_EQ] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_BANG] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_delete] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_PLUS_PLUS] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_DASH_DASH] = {
    .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_CARET_EQ] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_AMP_EQ] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_PIPE_EQ] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_GT_GT_EQ] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_GT_GT_GT_EQ] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_LT_LT_EQ] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_mapping] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_EQ_GT] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_bool] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_string] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_int] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_int8] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_int16] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_int24] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_int32] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_int40] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_int48] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_int56] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_int64] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_int72] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_int80] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_int88] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_int96] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_int104] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_int112] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_int120] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_int128] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_int136] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_int144] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_int152] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_int160] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_int168] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_int176] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_int184] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_int192] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_int200] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_int208] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_int216] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_int224] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_int232] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_int240] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_int248] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_int256] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_uint] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_uint8] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_uint16] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_uint24] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_uint32] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_uint40] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_uint48] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_uint56] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_uint64] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_uint72] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_uint80] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_uint88] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_uint96] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_uint104] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_uint112] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_uint120] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_uint128] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_uint136] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_uint144] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_uint152] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_uint160] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_uint168] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_uint176] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_uint184] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_uint192] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_uint200] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_uint208] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_uint216] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_uint224] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_uint232] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_uint240] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_uint248] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_uint256] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_bytes] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_bytes1] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_bytes2] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_bytes3] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_bytes4] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_bytes5] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_bytes6] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_bytes7] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_bytes8] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_bytes9] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_bytes10] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_bytes11] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_bytes12] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_bytes13] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_bytes14] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_bytes15] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_bytes16] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_bytes17] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_bytes18] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_bytes19] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_bytes20] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_bytes21] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_bytes22] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_bytes23] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_bytes24] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_bytes25] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_bytes26] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_bytes27] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_bytes28] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_bytes29] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_bytes30] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_bytes31] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_bytes32] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_fixed] = {
    .visible = true,
    .named = false,
  },
  [aux_sym__fixed_token1] = {
    .visible = false,
    .named = false,
  },
  [anon_sym_ufixed] = {
    .visible = true,
    .named = false,
  },
  [aux_sym__ufixed_token1] = {
    .visible = false,
    .named = false,
  },
  [sym__semicolon] = {
    .visible = false,
    .named = true,
  },
  [aux_sym__decimal_number_token1] = {
    .visible = false,
    .named = false,
  },
  [aux_sym__decimal_number_token2] = {
    .visible = false,
    .named = false,
  },
  [aux_sym__hex_number_token1] = {
    .visible = false,
    .named = false,
  },
  [sym__hex_digit] = {
    .visible = false,
    .named = true,
  },
  [anon_sym_wei] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_szabo] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_finney] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_gwei] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_ether] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_seconds] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_minutes] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_hours] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_days] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_weeks] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_years] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_hex] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_DQUOTE] = {
    .visible = true,
    .named = false,
  },
  [anon_sym__] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_SQUOTE] = {
    .visible = true,
    .named = false,
  },
  [sym__escape_sequence] = {
    .visible = false,
    .named = true,
  },
  [aux_sym__single_quoted_unicode_char_token1] = {
    .visible = false,
    .named = false,
  },
  [aux_sym__double_quoted_unicode_char_token1] = {
    .visible = false,
    .named = false,
  },
  [anon_sym_unicode] = {
    .visible = true,
    .named = false,
  },
  [sym_comment] = {
    .visible = true,
    .named = true,
  },
  [sym_source_file] = {
    .visible = true,
    .named = true,
  },
  [sym__source_unit] = {
    .visible = false,
    .named = true,
  },
  [sym__directive] = {
    .visible = false,
    .named = true,
  },
  [sym_pragma_directive] = {
    .visible = true,
    .named = true,
  },
  [sym_solidity_pragma_token] = {
    .visible = true,
    .named = true,
  },
  [sym_any_pragma_token] = {
    .visible = true,
    .named = true,
  },
  [sym__solidity] = {
    .visible = false,
    .named = true,
  },
  [sym_pragma_value] = {
    .visible = true,
    .named = true,
  },
  [sym__pragma_version_constraint] = {
    .visible = false,
    .named = true,
  },
  [sym_solidity_version_comparison_operator] = {
    .visible = true,
    .named = true,
  },
  [sym_import_directive] = {
    .visible = true,
    .named = true,
  },
  [sym__source_import] = {
    .visible = false,
    .named = true,
  },
  [sym__import_clause] = {
    .visible = false,
    .named = true,
  },
  [sym__from_clause] = {
    .visible = false,
    .named = true,
  },
  [sym__single_import] = {
    .visible = false,
    .named = true,
  },
  [sym__multiple_import] = {
    .visible = false,
    .named = true,
  },
  [sym__import_declaration] = {
    .visible = false,
    .named = true,
  },
  [sym__import_alias] = {
    .visible = false,
    .named = true,
  },
  [sym__declaration] = {
    .visible = false,
    .named = true,
  },
  [sym_user_defined_type_definition] = {
    .visible = true,
    .named = true,
  },
  [sym_constant_variable_declaration] = {
    .visible = true,
    .named = true,
  },
  [sym_contract_declaration] = {
    .visible = true,
    .named = true,
  },
  [sym_error_declaration] = {
    .visible = true,
    .named = true,
  },
  [sym_error_parameter] = {
    .visible = true,
    .named = true,
  },
  [sym_interface_declaration] = {
    .visible = true,
    .named = true,
  },
  [sym_library_declaration] = {
    .visible = true,
    .named = true,
  },
  [sym__class_heritage] = {
    .visible = false,
    .named = true,
  },
  [sym_inheritance_specifier] = {
    .visible = true,
    .named = true,
  },
  [sym_contract_body] = {
    .visible = true,
    .named = true,
  },
  [sym__contract_member] = {
    .visible = false,
    .named = true,
  },
  [sym_struct_declaration] = {
    .visible = true,
    .named = true,
  },
  [sym_struct_member] = {
    .visible = true,
    .named = true,
  },
  [sym_enum_declaration] = {
    .visible = true,
    .named = true,
  },
  [sym_event_definition] = {
    .visible = true,
    .named = true,
  },
  [sym__event_parameter_list] = {
    .visible = false,
    .named = true,
  },
  [sym_event_paramater] = {
    .visible = true,
    .named = true,
  },
  [sym_using_directive] = {
    .visible = true,
    .named = true,
  },
  [sym_any_source_type] = {
    .visible = true,
    .named = true,
  },
  [sym__statement] = {
    .visible = false,
    .named = true,
  },
  [sym_assembly_statement] = {
    .visible = true,
    .named = true,
  },
  [sym__yul_statement] = {
    .visible = false,
    .named = true,
  },
  [sym_yul_label] = {
    .visible = true,
    .named = true,
  },
  [sym_yul_break] = {
    .visible = true,
    .named = true,
  },
  [sym_yul_continue] = {
    .visible = true,
    .named = true,
  },
  [sym_yul_identifier] = {
    .visible = true,
    .named = true,
  },
  [sym__yul_expression] = {
    .visible = false,
    .named = true,
  },
  [sym_yul_path] = {
    .visible = true,
    .named = true,
  },
  [sym__yul_literal] = {
    .visible = false,
    .named = true,
  },
  [sym_yul_string_literal] = {
    .visible = true,
    .named = true,
  },
  [sym_yul_boolean] = {
    .visible = true,
    .named = true,
  },
  [sym_yul_block] = {
    .visible = true,
    .named = true,
  },
  [sym_yul_variable_declaration] = {
    .visible = true,
    .named = true,
  },
  [sym__yul_assignment_operator] = {
    .visible = false,
    .named = true,
  },
  [sym_yul_assignment] = {
    .visible = true,
    .named = true,
  },
  [sym_yul_function_call] = {
    .visible = true,
    .named = true,
  },
  [sym_yul_if_statement] = {
    .visible = true,
    .named = true,
  },
  [sym_yul_for_statement] = {
    .visible = true,
    .named = true,
  },
  [sym_yul_switch_statement] = {
    .visible = true,
    .named = true,
  },
  [sym_yul_function_definition] = {
    .visible = true,
    .named = true,
  },
  [sym_yul_evm_builtin] = {
    .visible = true,
    .named = true,
  },
  [sym_block_statement] = {
    .visible = true,
    .named = true,
  },
  [sym_variable_declaration_statement] = {
    .visible = true,
    .named = true,
  },
  [sym_variable_declaration] = {
    .visible = true,
    .named = true,
  },
  [sym_variable_declaration_tuple] = {
    .visible = true,
    .named = true,
  },
  [sym_expression_statement] = {
    .visible = true,
    .named = true,
  },
  [sym_if_statement] = {
    .visible = true,
    .named = true,
  },
  [sym_for_statement] = {
    .visible = true,
    .named = true,
  },
  [sym_while_statement] = {
    .visible = true,
    .named = true,
  },
  [sym_do_while_statement] = {
    .visible = true,
    .named = true,
  },
  [sym_continue_statement] = {
    .visible = true,
    .named = true,
  },
  [sym_break_statement] = {
    .visible = true,
    .named = true,
  },
  [sym_revert_statement] = {
    .visible = true,
    .named = true,
  },
  [sym_try_statement] = {
    .visible = true,
    .named = true,
  },
  [sym_catch_clause] = {
    .visible = true,
    .named = true,
  },
  [sym_return_statement] = {
    .visible = true,
    .named = true,
  },
  [sym_emit_statement] = {
    .visible = true,
    .named = true,
  },
  [sym_state_variable_declaration] = {
    .visible = true,
    .named = true,
  },
  [sym_visibility] = {
    .visible = true,
    .named = true,
  },
  [sym_state_mutability] = {
    .visible = true,
    .named = true,
  },
  [sym_override_specifier] = {
    .visible = true,
    .named = true,
  },
  [sym_modifier_definition] = {
    .visible = true,
    .named = true,
  },
  [sym_constructor_definition] = {
    .visible = true,
    .named = true,
  },
  [sym_fallback_receive_definition] = {
    .visible = true,
    .named = true,
  },
  [sym_function_definition] = {
    .visible = true,
    .named = true,
  },
  [sym_return_type_definition] = {
    .visible = true,
    .named = true,
  },
  [sym_modifier_invocation] = {
    .visible = true,
    .named = true,
  },
  [sym__call_arguments] = {
    .visible = false,
    .named = true,
  },
  [sym_call_argument] = {
    .visible = true,
    .named = true,
  },
  [sym_call_struct_argument] = {
    .visible = true,
    .named = true,
  },
  [sym_function_body] = {
    .visible = true,
    .named = true,
  },
  [sym__expression] = {
    .visible = false,
    .named = true,
  },
  [sym__primary_expression] = {
    .visible = false,
    .named = true,
  },
  [sym_type_cast_expression] = {
    .visible = true,
    .named = true,
  },
  [sym_ternary_expression] = {
    .visible = true,
    .named = true,
  },
  [sym_new_expression] = {
    .visible = true,
    .named = true,
  },
  [sym_tuple_expression] = {
    .visible = true,
    .named = true,
  },
  [sym_inline_array_expression] = {
    .visible = true,
    .named = true,
  },
  [sym_binary_expression] = {
    .visible = true,
    .named = true,
  },
  [sym_unary_expression] = {
    .visible = true,
    .named = true,
  },
  [sym_update_expression] = {
    .visible = true,
    .named = true,
  },
  [sym_member_expression] = {
    .visible = true,
    .named = true,
  },
  [sym_array_access] = {
    .visible = true,
    .named = true,
  },
  [sym_slice_access] = {
    .visible = true,
    .named = true,
  },
  [sym_struct_expression] = {
    .visible = true,
    .named = true,
  },
  [sym_struct_field_assignment] = {
    .visible = true,
    .named = true,
  },
  [sym_parenthesized_expression] = {
    .visible = true,
    .named = true,
  },
  [sym_assignment_expression] = {
    .visible = true,
    .named = true,
  },
  [sym_augmented_assignment_expression] = {
    .visible = true,
    .named = true,
  },
  [sym_call_expression] = {
    .visible = true,
    .named = true,
  },
  [sym_payable_conversion_expression] = {
    .visible = true,
    .named = true,
  },
  [sym_meta_type_expression] = {
    .visible = true,
    .named = true,
  },
  [sym_type_name] = {
    .visible = true,
    .named = true,
  },
  [sym__array_type] = {
    .visible = false,
    .named = true,
  },
  [sym__function_type] = {
    .visible = false,
    .named = true,
  },
  [sym__parameter_list] = {
    .visible = false,
    .named = true,
  },
  [sym__return_parameters] = {
    .visible = false,
    .named = true,
  },
  [sym__nameless_parameter] = {
    .visible = true,
    .named = true,
  },
  [sym_parameter] = {
    .visible = true,
    .named = true,
  },
  [sym__storage_location] = {
    .visible = false,
    .named = true,
  },
  [sym_user_defined_type] = {
    .visible = true,
    .named = true,
  },
  [sym__identifier_path] = {
    .visible = false,
    .named = true,
  },
  [sym__mapping] = {
    .visible = false,
    .named = true,
  },
  [sym__mapping_key] = {
    .visible = false,
    .named = true,
  },
  [sym_primitive_type] = {
    .visible = true,
    .named = true,
  },
  [sym__int] = {
    .visible = false,
    .named = true,
  },
  [sym__uint] = {
    .visible = false,
    .named = true,
  },
  [sym__bytes] = {
    .visible = false,
    .named = true,
  },
  [sym__fixed] = {
    .visible = false,
    .named = true,
  },
  [sym__ufixed] = {
    .visible = false,
    .named = true,
  },
  [sym__literal] = {
    .visible = false,
    .named = true,
  },
  [sym_string_literal] = {
    .visible = true,
    .named = true,
  },
  [sym_number_literal] = {
    .visible = true,
    .named = true,
  },
  [sym__decimal_number] = {
    .visible = false,
    .named = true,
  },
  [sym__hex_number] = {
    .visible = false,
    .named = true,
  },
  [sym_number_unit] = {
    .visible = true,
    .named = true,
  },
  [sym_true] = {
    .visible = true,
    .named = true,
  },
  [sym_false] = {
    .visible = true,
    .named = true,
  },
  [sym_boolean_literal] = {
    .visible = true,
    .named = true,
  },
  [sym_hex_string_literal] = {
    .visible = true,
    .named = true,
  },
  [sym__single_quoted_unicode_char] = {
    .visible = false,
    .named = true,
  },
  [sym__double_quoted_unicode_char] = {
    .visible = false,
    .named = true,
  },
  [sym_unicode_string_literal] = {
    .visible = true,
    .named = true,
  },
  [sym_string] = {
    .visible = true,
    .named = true,
  },
  [sym__string_immediate_elt_inside_double_quote] = {
    .visible = false,
    .named = true,
  },
  [sym__string_immediate_elt_inside_quote] = {
    .visible = false,
    .named = true,
  },
  [aux_sym_source_file_repeat1] = {
    .visible = false,
    .named = false,
  },
  [aux_sym_solidity_pragma_token_repeat1] = {
    .visible = false,
    .named = false,
  },
  [aux_sym__multiple_import_repeat1] = {
    .visible = false,
    .named = false,
  },
  [aux_sym_error_declaration_repeat1] = {
    .visible = false,
    .named = false,
  },
  [aux_sym__class_heritage_repeat1] = {
    .visible = false,
    .named = false,
  },
  [aux_sym_contract_body_repeat1] = {
    .visible = false,
    .named = false,
  },
  [aux_sym_struct_declaration_repeat1] = {
    .visible = false,
    .named = false,
  },
  [aux_sym_enum_declaration_repeat1] = {
    .visible = false,
    .named = false,
  },
  [aux_sym__event_parameter_list_repeat1] = {
    .visible = false,
    .named = false,
  },
  [aux_sym_assembly_statement_repeat1] = {
    .visible = false,
    .named = false,
  },
  [aux_sym_yul_path_repeat1] = {
    .visible = false,
    .named = false,
  },
  [aux_sym_yul_variable_declaration_repeat1] = {
    .visible = false,
    .named = false,
  },
  [aux_sym_yul_assignment_repeat1] = {
    .visible = false,
    .named = false,
  },
  [aux_sym_yul_function_call_repeat1] = {
    .visible = false,
    .named = false,
  },
  [aux_sym_yul_switch_statement_repeat1] = {
    .visible = false,
    .named = false,
  },
  [aux_sym_block_statement_repeat1] = {
    .visible = false,
    .named = false,
  },
  [aux_sym_variable_declaration_tuple_repeat1] = {
    .visible = false,
    .named = false,
  },
  [aux_sym_variable_declaration_tuple_repeat2] = {
    .visible = false,
    .named = false,
  },
  [aux_sym_try_statement_repeat1] = {
    .visible = false,
    .named = false,
  },
  [aux_sym_state_variable_declaration_repeat1] = {
    .visible = false,
    .named = false,
  },
  [aux_sym_override_specifier_repeat1] = {
    .visible = false,
    .named = false,
  },
  [aux_sym_modifier_definition_repeat1] = {
    .visible = false,
    .named = false,
  },
  [aux_sym_constructor_definition_repeat1] = {
    .visible = false,
    .named = false,
  },
  [aux_sym_fallback_receive_definition_repeat1] = {
    .visible = false,
    .named = false,
  },
  [aux_sym_function_definition_repeat1] = {
    .visible = false,
    .named = false,
  },
  [aux_sym__call_arguments_repeat1] = {
    .visible = false,
    .named = false,
  },
  [aux_sym_call_argument_repeat1] = {
    .visible = false,
    .named = false,
  },
  [aux_sym_tuple_expression_repeat1] = {
    .visible = false,
    .named = false,
  },
  [aux_sym_inline_array_expression_repeat1] = {
    .visible = false,
    .named = false,
  },
  [aux_sym_struct_expression_repeat1] = {
    .visible = false,
    .named = false,
  },
  [aux_sym__function_type_repeat1] = {
    .visible = false,
    .named = false,
  },
  [aux_sym__parameter_list_repeat1] = {
    .visible = false,
    .named = false,
  },
  [aux_sym__return_parameters_repeat1] = {
    .visible = false,
    .named = false,
  },
  [aux_sym__identifier_path_repeat1] = {
    .visible = false,
    .named = false,
  },
  [aux_sym_string_literal_repeat1] = {
    .visible = false,
    .named = false,
  },
  [aux_sym_hex_string_literal_repeat1] = {
    .visible = false,
    .named = false,
  },
  [aux_sym_hex_string_literal_repeat2] = {
    .visible = false,
    .named = false,
  },
  [aux_sym_unicode_string_literal_repeat1] = {
    .visible = false,
    .named = false,
  },
  [aux_sym_unicode_string_literal_repeat2] = {
    .visible = false,
    .named = false,
  },
  [aux_sym_unicode_string_literal_repeat3] = {
    .visible = false,
    .named = false,
  },
  [aux_sym_string_repeat1] = {
    .visible = false,
    .named = false,
  },
  [aux_sym_string_repeat2] = {
    .visible = false,
    .named = false,
  },
  [alias_sym_enum_value] = {
    .visible = true,
    .named = true,
  },
  [alias_sym_revert_arguments] = {
    .visible = true,
    .named = true,
  },
  [alias_sym_type_alias] = {
    .visible = true,
    .named = true,
  },
};

enum {
  field_alias = 1,
  field_ancestor = 2,
  field_ancestor_arguments = 3,
  field_argument = 4,
  field_attempt = 5,
  field_base = 6,
  field_body = 7,
  field_condition = 8,
  field_else = 9,
  field_error = 10,
  field_from = 11,
  field_function = 12,
  field_import_name = 13,
  field_index = 14,
  field_initial = 15,
  field_key_type = 16,
  field_left = 17,
  field_location = 18,
  field_name = 19,
  field_object = 20,
  field_operator = 21,
  field_parameters = 22,
  field_property = 23,
  field_return_type = 24,
  field_right = 25,
  field_source = 26,
  field_to = 27,
  field_type = 28,
  field_update = 29,
  field_value = 30,
  field_value_type = 31,
  field_version_constraint = 32,
  field_visibility = 33,
};

static const char * const ts_field_names[] = {
  [0] = NULL,
  [field_alias] = "alias",
  [field_ancestor] = "ancestor",
  [field_ancestor_arguments] = "ancestor_arguments",
  [field_argument] = "argument",
  [field_attempt] = "attempt",
  [field_base] = "base",
  [field_body] = "body",
  [field_condition] = "condition",
  [field_else] = "else",
  [field_error] = "error",
  [field_from] = "from",
  [field_function] = "function",
  [field_import_name] = "import_name",
  [field_index] = "index",
  [field_initial] = "initial",
  [field_key_type] = "key_type",
  [field_left] = "left",
  [field_location] = "location",
  [field_name] = "name",
  [field_object] = "object",
  [field_operator] = "operator",
  [field_parameters] = "parameters",
  [field_property] = "property",
  [field_return_type] = "return_type",
  [field_right] = "right",
  [field_source] = "source",
  [field_to] = "to",
  [field_type] = "type",
  [field_update] = "update",
  [field_value] = "value",
  [field_value_type] = "value_type",
  [field_version_constraint] = "version_constraint",
  [field_visibility] = "visibility",
};

static const TSFieldMapSlice ts_field_map_slices[PRODUCTION_ID_COUNT] = {
  [1] = {.index = 0, .length = 1},
  [2] = {.index = 1, .length = 2},
  [3] = {.index = 3, .length = 1},
  [4] = {.index = 4, .length = 2},
  [5] = {.index = 6, .length = 1},
  [6] = {.index = 7, .length = 1},
  [7] = {.index = 8, .length = 1},
  [8] = {.index = 9, .length = 1},
  [9] = {.index = 10, .length = 1},
  [10] = {.index = 11, .length = 2},
  [11] = {.index = 13, .length = 2},
  [12] = {.index = 15, .length = 2},
  [13] = {.index = 17, .length = 2},
  [14] = {.index = 19, .length = 1},
  [15] = {.index = 20, .length = 2},
  [16] = {.index = 22, .length = 1},
  [17] = {.index = 23, .length = 2},
  [18] = {.index = 25, .length = 1},
  [19] = {.index = 26, .length = 3},
  [20] = {.index = 29, .length = 2},
  [21] = {.index = 31, .length = 1},
  [22] = {.index = 32, .length = 2},
  [23] = {.index = 34, .length = 1},
  [24] = {.index = 35, .length = 2},
  [25] = {.index = 37, .length = 2},
  [26] = {.index = 39, .length = 2},
  [27] = {.index = 41, .length = 2},
  [28] = {.index = 43, .length = 1},
  [29] = {.index = 44, .length = 4},
  [30] = {.index = 48, .length = 4},
  [31] = {.index = 52, .length = 2},
  [32] = {.index = 54, .length = 1},
  [33] = {.index = 55, .length = 2},
  [34] = {.index = 34, .length = 1},
  [35] = {.index = 57, .length = 3},
  [36] = {.index = 60, .length = 2},
  [37] = {.index = 62, .length = 3},
  [38] = {.index = 65, .length = 2},
  [39] = {.index = 67, .length = 2},
  [40] = {.index = 69, .length = 3},
  [41] = {.index = 72, .length = 2},
  [42] = {.index = 74, .length = 1},
  [43] = {.index = 75, .length = 1},
  [44] = {.index = 76, .length = 2},
  [46] = {.index = 78, .length = 2},
  [47] = {.index = 80, .length = 3},
  [48] = {.index = 83, .length = 2},
  [49] = {.index = 85, .length = 2},
  [50] = {.index = 87, .length = 3},
  [51] = {.index = 90, .length = 2},
  [52] = {.index = 92, .length = 1},
  [53] = {.index = 93, .length = 3},
  [55] = {.index = 96, .length = 1},
  [56] = {.index = 97, .length = 2},
  [57] = {.index = 99, .length = 2},
  [58] = {.index = 101, .length = 2},
  [59] = {.index = 103, .length = 2},
  [60] = {.index = 105, .length = 1},
  [61] = {.index = 106, .length = 3},
  [62] = {.index = 109, .length = 1},
  [63] = {.index = 96, .length = 1},
  [64] = {.index = 110, .length = 2},
  [65] = {.index = 112, .length = 1},
  [66] = {.index = 113, .length = 3},
  [67] = {.index = 116, .length = 2},
  [68] = {.index = 118, .length = 4},
  [69] = {.index = 122, .length = 2},
  [70] = {.index = 124, .length = 2},
  [71] = {.index = 126, .length = 1},
  [72] = {.index = 127, .length = 3},
  [73] = {.index = 130, .length = 3},
  [74] = {.index = 133, .length = 2},
  [75] = {.index = 135, .length = 2},
  [76] = {.index = 137, .length = 4},
  [77] = {.index = 141, .length = 4},
  [78] = {.index = 145, .length = 3},
  [79] = {.index = 148, .length = 4},
  [80] = {.index = 152, .length = 2},
  [81] = {.index = 154, .length = 4},
  [82] = {.index = 158, .length = 5},
  [83] = {.index = 163, .length = 5},
  [84] = {.index = 168, .length = 6},
};

static const TSFieldMapEntry ts_field_map_entries[] = {
  [0] =
    {field_parameters, 0, .inherited = true},
  [1] =
    {field_key_type, 0, .inherited = true},
    {field_value_type, 0, .inherited = true},
  [3] =
    {field_import_name, 0},
  [4] =
    {field_alias, 0, .inherited = true},
    {field_import_name, 0, .inherited = true},
  [6] =
    {field_source, 0},
  [7] =
    {field_parameters, 1},
  [8] =
    {field_version_constraint, 0},
  [9] =
    {field_version_constraint, 1, .inherited = true},
  [10] =
    {field_alias, 1, .inherited = true},
  [11] =
    {field_alias, 1, .inherited = true},
    {field_import_name, 0},
  [13] =
    {field_alias, 1, .inherited = true},
    {field_source, 1, .inherited = true},
  [15] =
    {field_alias, 1, .inherited = true},
    {field_source, 0},
  [17] =
    {field_body, 2},
    {field_name, 1},
  [19] =
    {field_type, 0},
  [20] =
    {field_version_constraint, 0, .inherited = true},
    {field_version_constraint, 1, .inherited = true},
  [22] =
    {field_alias, 1},
  [23] =
    {field_alias, 1, .inherited = true},
    {field_import_name, 1, .inherited = true},
  [25] =
    {field_source, 1},
  [26] =
    {field_alias, 1, .inherited = true},
    {field_import_name, 1, .inherited = true},
    {field_source, 2, .inherited = true},
  [29] =
    {field_body, 3},
    {field_name, 2},
  [31] =
    {field_ancestor, 0},
  [32] =
    {field_body, 3},
    {field_name, 1},
  [34] =
    {field_name, 1},
  [35] =
    {field_name, 1},
    {field_type, 0},
  [37] =
    {field_location, 1},
    {field_type, 0},
  [39] =
    {field_argument, 1},
    {field_operator, 0},
  [41] =
    {field_argument, 0},
    {field_operator, 1},
  [43] =
    {field_function, 0},
  [44] =
    {field_alias, 1, .inherited = true},
    {field_alias, 2, .inherited = true},
    {field_import_name, 1, .inherited = true},
    {field_import_name, 2, .inherited = true},
  [48] =
    {field_alias, 0, .inherited = true},
    {field_alias, 1, .inherited = true},
    {field_import_name, 0, .inherited = true},
    {field_import_name, 1, .inherited = true},
  [52] =
    {field_body, 4},
    {field_name, 2},
  [54] =
    {field_visibility, 0},
  [55] =
    {field_ancestor, 0},
    {field_ancestor_arguments, 1},
  [57] =
    {field_location, 1},
    {field_name, 2},
    {field_type, 0},
  [60] =
    {field_name, 1},
    {field_return_type, 3},
  [62] =
    {field_body, 4},
    {field_name, 1},
    {field_return_type, 3},
  [65] =
    {field_body, 4},
    {field_name, 1},
  [67] =
    {field_object, 0},
    {field_property, 2},
  [69] =
    {field_left, 0},
    {field_operator, 1},
    {field_right, 2},
  [72] =
    {field_left, 0},
    {field_right, 2},
  [74] =
    {field_base, 0},
  [75] =
    {field_body, 2},
  [76] =
    {field_visibility, 0, .inherited = true},
    {field_visibility, 1, .inherited = true},
  [78] =
    {field_name, 1},
    {field_return_type, 4},
  [80] =
    {field_body, 5},
    {field_name, 1},
    {field_return_type, 4},
  [83] =
    {field_location, 2, .inherited = true},
    {field_type, 2, .inherited = true},
  [85] =
    {field_key_type, 2},
    {field_value_type, 4},
  [87] =
    {field_name, 2},
    {field_type, 0},
    {field_value, 4},
  [90] =
    {field_base, 0},
    {field_index, 2},
  [92] =
    {field_body, 3},
  [93] =
    {field_name, 2},
    {field_type, 0},
    {field_visibility, 1, .inherited = true},
  [96] =
    {field_error, 1},
  [97] =
    {field_location, 1, .inherited = true},
    {field_type, 1, .inherited = true},
  [99] =
    {field_name, 0},
    {field_value, 2},
  [101] =
    {field_base, 0},
    {field_to, 3},
  [103] =
    {field_base, 0},
    {field_from, 2},
  [105] =
    {field_source, 3},
  [106] =
    {field_name, 1},
    {field_type, 0},
    {field_value, 3},
  [109] =
    {field_left, 1},
  [110] =
    {field_attempt, 1},
    {field_body, 2},
  [112] =
    {field_value, 2},
  [113] =
    {field_base, 0},
    {field_from, 2},
    {field_to, 4},
  [116] =
    {field_name, 2},
    {field_type, 0},
  [118] =
    {field_name, 2},
    {field_type, 0},
    {field_value, 4},
    {field_visibility, 1, .inherited = true},
  [122] =
    {field_left, 1},
    {field_left, 2},
  [124] =
    {field_body, 4},
    {field_condition, 2},
  [126] =
    {field_body, 1},
  [127] =
    {field_body, 5},
    {field_condition, 3},
    {field_initial, 2},
  [130] =
    {field_left, 1},
    {field_left, 2},
    {field_left, 3},
  [133] =
    {field_left, 1},
    {field_right, 3},
  [135] =
    {field_attempt, 1},
    {field_body, 4},
  [137] =
    {field_body, 6},
    {field_condition, 3},
    {field_initial, 2},
    {field_update, 4},
  [141] =
    {field_left, 1},
    {field_left, 2},
    {field_left, 3},
    {field_left, 4},
  [145] =
    {field_left, 1},
    {field_left, 2},
    {field_right, 4},
  [148] =
    {field_body, 4},
    {field_body, 6},
    {field_condition, 2},
    {field_else, 5},
  [152] =
    {field_body, 1},
    {field_condition, 4},
  [154] =
    {field_left, 1},
    {field_left, 2},
    {field_left, 3},
    {field_right, 5},
  [158] =
    {field_left, 1},
    {field_left, 2},
    {field_left, 3},
    {field_left, 4},
    {field_left, 5},
  [163] =
    {field_left, 1},
    {field_left, 2},
    {field_left, 3},
    {field_left, 4},
    {field_right, 6},
  [168] =
    {field_left, 1},
    {field_left, 2},
    {field_left, 3},
    {field_left, 4},
    {field_left, 5},
    {field_right, 7},
};

static const TSSymbol ts_alias_sequences[PRODUCTION_ID_COUNT][MAX_ALIAS_SEQUENCE_LENGTH] = {
  [0] = {0},
  [34] = {
    [3] = alias_sym_enum_value,
  },
  [45] = {
    [1] = alias_sym_enum_value,
  },
  [54] = {
    [1] = alias_sym_revert_arguments,
  },
  [60] = {
    [1] = alias_sym_type_alias,
  },
  [63] = {
    [2] = alias_sym_revert_arguments,
  },
};

static const uint16_t ts_non_terminal_alias_map[] = {
  sym__call_arguments, 2,
    sym__call_arguments,
    alias_sym_revert_arguments,
  sym_user_defined_type, 2,
    sym_user_defined_type,
    alias_sym_type_alias,
  0,
};

static bool ts_lex(TSLexer *lexer, TSStateId state) {
  START_LEXER();
  eof = lexer->eof(lexer);
  switch (state) {
    case 0:
      if (eof) ADVANCE(51);
      if (lookahead == '!') ADVANCE(111);
      if (lookahead == '"') ADVANCE(140);
      if (lookahead == '%') ADVANCE(105);
      if (lookahead == '&') ADVANCE(100);
      if (lookahead == '\'') ADVANCE(143);
      if (lookahead == '(') ADVANCE(82);
      if (lookahead == ')') ADVANCE(83);
      if (lookahead == '*') ADVANCE(78);
      if (lookahead == '+') ADVANCE(103);
      if (lookahead == ',') ADVANCE(80);
      if (lookahead == '-') ADVANCE(55);
      if (lookahead == '.') ADVANCE(87);
      if (lookahead == '/') ADVANCE(104);
      if (lookahead == '0') ADVANCE(88);
      if (lookahead == ':') ADVANCE(86);
      if (lookahead == ';') ADVANCE(126);
      if (lookahead == '<') ADVANCE(67);
      if (lookahead == '=') ADVANCE(77);
      if (lookahead == '>') ADVANCE(72);
      if (lookahead == '?') ADVANCE(93);
      if (lookahead == '[') ADVANCE(94);
      if (lookahead == '\\') ADVANCE(31);
      if (lookahead == ']') ADVANCE(95);
      if (lookahead == '^') ADVANCE(70);
      if (lookahead == '_') ADVANCE(142);
      if (lookahead == '{') ADVANCE(79);
      if (lookahead == '|') ADVANCE(101);
      if (lookahead == '}') ADVANCE(81);
      if (lookahead == '~') ADVANCE(74);
      if (lookahead == '\t' ||
          lookahead == '\n' ||
          lookahead == '\r' ||
          lookahead == ' ' ||
          lookahead == 160 ||
          lookahead == 8203 ||
          lookahead == 8288 ||
          lookahead == 65279) SKIP(49)
      if (('1' <= lookahead && lookahead <= '9')) ADVANCE(89);
      if (lookahead == '$' ||
          ('A' <= lookahead && lookahead <= 'Z') ||
          ('a' <= lookahead && lookahead <= 'z')) ADVANCE(130);
      END_STATE();
    case 1:
      if (lookahead == '\n') SKIP(13)
      if (lookahead == '"') ADVANCE(140);
      if (lookahead == '/') ADVANCE(158);
      if (lookahead == '\\') ADVANCE(2);
      if (lookahead == '\t' ||
          lookahead == '\r' ||
          lookahead == ' ' ||
          lookahead == 160 ||
          lookahead == 8203 ||
          lookahead == 8288 ||
          lookahead == 65279) ADVANCE(161);
      if (lookahead != 0) ADVANCE(162);
      END_STATE();
    case 2:
      if (lookahead == '\n') ADVANCE(156);
      if (lookahead == '\r') ADVANCE(145);
      if (lookahead == 'u') ADVANCE(33);
      if (lookahead == 'x') ADVANCE(48);
      if (('0' <= lookahead && lookahead <= '7')) ADVANCE(148);
      if (lookahead != 0) ADVANCE(144);
      END_STATE();
    case 3:
      if (lookahead == '\n') SKIP(15)
      if (lookahead == '\'') ADVANCE(143);
      if (lookahead == '/') ADVANCE(151);
      if (lookahead == '\\') ADVANCE(4);
      if (lookahead == '\t' ||
          lookahead == '\r' ||
          lookahead == ' ' ||
          lookahead == 160 ||
          lookahead == 8203 ||
          lookahead == 8288 ||
          lookahead == 65279) ADVANCE(154);
      if (lookahead != 0) ADVANCE(155);
      END_STATE();
    case 4:
      if (lookahead == '\n') ADVANCE(149);
      if (lookahead == '\r') ADVANCE(146);
      if (lookahead == 'u') ADVANCE(33);
      if (lookahead == 'x') ADVANCE(48);
      if (('0' <= lookahead && lookahead <= '7')) ADVANCE(148);
      if (lookahead != 0) ADVANCE(144);
      END_STATE();
    case 5:
      if (lookahead == ' ') ADVANCE(5);
      if (lookahead == '"') ADVANCE(7);
      if (lookahead == '*' ||
          ('0' <= lookahead && lookahead <= '9')) ADVANCE(64);
      if (lookahead == '-') ADVANCE(53);
      if (lookahead == '.') ADVANCE(6);
      if (lookahead == '/') ADVANCE(17);
      if (lookahead == ';') ADVANCE(126);
      if (lookahead == '<') ADVANCE(68);
      if (lookahead == '=') ADVANCE(75);
      if (lookahead == '>') ADVANCE(71);
      if (lookahead == '^') ADVANCE(69);
      if (lookahead == '|') ADVANCE(34);
      if (lookahead == '~') ADVANCE(74);
      if (lookahead == '\t' ||
          lookahead == '\n' ||
          lookahead == '\r' ||
          lookahead == 160 ||
          lookahead == 8203 ||
          lookahead == 8288 ||
          lookahead == 65279) SKIP(5)
      END_STATE();
    case 6:
      if (lookahead == ' ') ADVANCE(36);
      if (lookahead == '*' ||
          ('0' <= lookahead && lookahead <= '9')) ADVANCE(64);
      END_STATE();
    case 7:
      if (lookahead == ' ') ADVANCE(36);
      if (lookahead == '*' ||
          ('0' <= lookahead && lookahead <= '9')) ADVANCE(64);
      if (lookahead == '.') ADVANCE(6);
      END_STATE();
    case 8:
      if (lookahead == ' ') ADVANCE(37);
      if (lookahead == '*' ||
          ('0' <= lookahead && lookahead <= '9')) ADVANCE(62);
      END_STATE();
    case 9:
      if (lookahead == '!') ADVANCE(23);
      if (lookahead == '"') ADVANCE(140);
      if (lookahead == '%') ADVANCE(105);
      if (lookahead == '&') ADVANCE(100);
      if (lookahead == '\'') ADVANCE(143);
      if (lookahead == '(') ADVANCE(82);
      if (lookahead == ')') ADVANCE(83);
      if (lookahead == '*') ADVANCE(78);
      if (lookahead == '+') ADVANCE(103);
      if (lookahead == ',') ADVANCE(80);
      if (lookahead == '-') ADVANCE(55);
      if (lookahead == '.') ADVANCE(87);
      if (lookahead == '/') ADVANCE(104);
      if (lookahead == ':') ADVANCE(85);
      if (lookahead == ';') ADVANCE(126);
      if (lookahead == '<') ADVANCE(67);
      if (lookahead == '=') ADVANCE(76);
      if (lookahead == '>') ADVANCE(72);
      if (lookahead == '?') ADVANCE(93);
      if (lookahead == '[') ADVANCE(94);
      if (lookahead == ']') ADVANCE(95);
      if (lookahead == '^') ADVANCE(70);
      if (lookahead == '{') ADVANCE(79);
      if (lookahead == '|') ADVANCE(101);
      if (lookahead == '}') ADVANCE(81);
      if (lookahead == '\t' ||
          lookahead == '\n' ||
          lookahead == '\r' ||
          lookahead == ' ' ||
          lookahead == 160 ||
          lookahead == 8203 ||
          lookahead == 8288 ||
          lookahead == 65279) SKIP(9)
      if (lookahead == '$' ||
          ('A' <= lookahead && lookahead <= 'Z') ||
          lookahead == '_' ||
          ('a' <= lookahead && lookahead <= 'z')) ADVANCE(130);
      END_STATE();
    case 10:
      if (lookahead == '!') ADVANCE(23);
      if (lookahead == '"') ADVANCE(27);
      if (lookahead == '%') ADVANCE(105);
      if (lookahead == '&') ADVANCE(100);
      if (lookahead == '(') ADVANCE(82);
      if (lookahead == ')') ADVANCE(83);
      if (lookahead == '*') ADVANCE(78);
      if (lookahead == '+') ADVANCE(103);
      if (lookahead == ',') ADVANCE(80);
      if (lookahead == '-') ADVANCE(55);
      if (lookahead == '.') ADVANCE(87);
      if (lookahead == '/') ADVANCE(104);
      if (lookahead == ':') ADVANCE(85);
      if (lookahead == ';') ADVANCE(126);
      if (lookahead == '<') ADVANCE(67);
      if (lookahead == '=') ADVANCE(77);
      if (lookahead == '>') ADVANCE(72);
      if (lookahead == '?') ADVANCE(93);
      if (lookahead == '[') ADVANCE(94);
      if (lookahead == ']') ADVANCE(95);
      if (lookahead == '^') ADVANCE(70);
      if (lookahead == '{') ADVANCE(79);
      if (lookahead == '|') ADVANCE(101);
      if (lookahead == '}') ADVANCE(81);
      if (lookahead == '\t' ||
          lookahead == '\n' ||
          lookahead == '\r' ||
          lookahead == ' ' ||
          lookahead == 160 ||
          lookahead == 8203 ||
          lookahead == 8288 ||
          lookahead == 65279) SKIP(10)
      if (lookahead == '$' ||
          ('A' <= lookahead && lookahead <= 'Z') ||
          lookahead == '_' ||
          ('a' <= lookahead && lookahead <= 'z')) ADVANCE(130);
      END_STATE();
    case 11:
      if (lookahead == '!') ADVANCE(110);
      if (lookahead == '"') ADVANCE(140);
      if (lookahead == '\'') ADVANCE(143);
      if (lookahead == '(') ADVANCE(82);
      if (lookahead == ')') ADVANCE(83);
      if (lookahead == '+') ADVANCE(102);
      if (lookahead == ',') ADVANCE(80);
      if (lookahead == '-') ADVANCE(54);
      if (lookahead == '.') ADVANCE(39);
      if (lookahead == '/') ADVANCE(17);
      if (lookahead == '0') ADVANCE(132);
      if (lookahead == ':') ADVANCE(85);
      if (lookahead == ';') ADVANCE(126);
      if (lookahead == '=') ADVANCE(24);
      if (lookahead == '[') ADVANCE(94);
      if (lookahead == ']') ADVANCE(95);
      if (lookahead == '_') ADVANCE(128);
      if (lookahead == '{') ADVANCE(79);
      if (lookahead == '}') ADVANCE(81);
      if (lookahead == '~') ADVANCE(74);
      if (lookahead == '\t' ||
          lookahead == '\n' ||
          lookahead == '\r' ||
          lookahead == ' ' ||
          lookahead == 160 ||
          lookahead == 8203 ||
          lookahead == 8288 ||
          lookahead == 65279) SKIP(11)
      if (('1' <= lookahead && lookahead <= '9')) ADVANCE(131);
      if (lookahead == '$' ||
          ('A' <= lookahead && lookahead <= 'Z') ||
          ('a' <= lookahead && lookahead <= 'z')) ADVANCE(130);
      END_STATE();
    case 12:
      if (lookahead == '"') ADVANCE(140);
      if (lookahead == '\'') ADVANCE(143);
      if (lookahead == '/') ADVANCE(17);
      if (lookahead == '_') ADVANCE(141);
      if (lookahead == '\t' ||
          lookahead == '\n' ||
          lookahead == '\r' ||
          lookahead == ' ' ||
          lookahead == 160 ||
          lookahead == 8203 ||
          lookahead == 8288 ||
          lookahead == 65279) SKIP(12)
      if (('0' <= lookahead && lookahead <= '9') ||
          ('A' <= lookahead && lookahead <= 'F') ||
          ('a' <= lookahead && lookahead <= 'f')) ADVANCE(47);
      END_STATE();
    case 13:
      if (lookahead == '"') ADVANCE(140);
      if (lookahead == '/') ADVANCE(17);
      if (lookahead == '\t' ||
          lookahead == '\n' ||
          lookahead == '\r' ||
          lookahead == ' ' ||
          lookahead == 160 ||
          lookahead == 8203 ||
          lookahead == 8288 ||
          lookahead == 65279) SKIP(13)
      END_STATE();
    case 14:
      if (lookahead == '"') ADVANCE(84);
      END_STATE();
    case 15:
      if (lookahead == '\'') ADVANCE(143);
      if (lookahead == '/') ADVANCE(17);
      if (lookahead == '\t' ||
          lookahead == '\n' ||
          lookahead == '\r' ||
          lookahead == ' ' ||
          lookahead == 160 ||
          lookahead == 8203 ||
          lookahead == 8288 ||
          lookahead == 65279) SKIP(15)
      END_STATE();
    case 16:
      if (lookahead == '(') ADVANCE(82);
      if (lookahead == ')') ADVANCE(83);
      if (lookahead == ',') ADVANCE(80);
      if (lookahead == '-') ADVANCE(25);
      if (lookahead == '.') ADVANCE(87);
      if (lookahead == '/') ADVANCE(17);
      if (lookahead == ';') ADVANCE(126);
      if (lookahead == '=') ADVANCE(24);
      if (lookahead == '[') ADVANCE(94);
      if (lookahead == '{') ADVANCE(79);
      if (lookahead == '\t' ||
          lookahead == '\n' ||
          lookahead == '\r' ||
          lookahead == ' ' ||
          lookahead == 160 ||
          lookahead == 8203 ||
          lookahead == 8288 ||
          lookahead == 65279) SKIP(16)
      if (lookahead == '$' ||
          ('A' <= lookahead && lookahead <= 'Z') ||
          lookahead == '_' ||
          ('a' <= lookahead && lookahead <= 'z')) ADVANCE(130);
      END_STATE();
    case 17:
      if (lookahead == '*') ADVANCE(19);
      if (lookahead == '/') ADVANCE(165);
      END_STATE();
    case 18:
      if (lookahead == '*') ADVANCE(18);
      if (lookahead == '/') ADVANCE(163);
      if (lookahead != 0) ADVANCE(19);
      END_STATE();
    case 19:
      if (lookahead == '*') ADVANCE(18);
      if (lookahead != 0) ADVANCE(19);
      END_STATE();
    case 20:
      if (lookahead == '-') ADVANCE(41);
      if (('0' <= lookahead && lookahead <= '9') ||
          lookahead == '_') ADVANCE(134);
      END_STATE();
    case 21:
      if (lookahead == '-') ADVANCE(42);
      if (('0' <= lookahead && lookahead <= '9') ||
          lookahead == '_') ADVANCE(136);
      END_STATE();
    case 22:
      if (lookahead == '/') ADVANCE(56);
      if (lookahead == '\t' ||
          lookahead == '\n' ||
          lookahead == '\r' ||
          lookahead == ' ' ||
          lookahead == 160 ||
          lookahead == 8203 ||
          lookahead == 8288 ||
          lookahead == 65279) ADVANCE(59);
      if (lookahead != 0 &&
          lookahead != ';') ADVANCE(60);
      END_STATE();
    case 23:
      if (lookahead == '=') ADVANCE(108);
      END_STATE();
    case 24:
      if (lookahead == '>') ADVANCE(125);
      END_STATE();
    case 25:
      if (lookahead == '>') ADVANCE(92);
      END_STATE();
    case 26:
      if (lookahead == 'a') ADVANCE(30);
      END_STATE();
    case 27:
      if (lookahead == 'e') ADVANCE(32);
      END_STATE();
    case 28:
      if (lookahead == 'm') ADVANCE(26);
      END_STATE();
    case 29:
      if (lookahead == 'm') ADVANCE(14);
      END_STATE();
    case 30:
      if (lookahead == 's') ADVANCE(29);
      END_STATE();
    case 31:
      if (lookahead == 'u') ADVANCE(33);
      if (lookahead == 'x') ADVANCE(48);
      if (('0' <= lookahead && lookahead <= '7')) ADVANCE(148);
      if (lookahead != 0) ADVANCE(144);
      END_STATE();
    case 32:
      if (lookahead == 'v') ADVANCE(28);
      END_STATE();
    case 33:
      if (lookahead == '{') ADVANCE(45);
      if (('0' <= lookahead && lookahead <= '9') ||
          ('A' <= lookahead && lookahead <= 'F') ||
          ('a' <= lookahead && lookahead <= 'f')) ADVANCE(43);
      END_STATE();
    case 34:
      if (lookahead == '|') ADVANCE(52);
      END_STATE();
    case 35:
      if (lookahead == '}') ADVANCE(144);
      if (('0' <= lookahead && lookahead <= '9') ||
          ('A' <= lookahead && lookahead <= 'F') ||
          ('a' <= lookahead && lookahead <= 'f')) ADVANCE(35);
      END_STATE();
    case 36:
      if (lookahead == '*' ||
          ('0' <= lookahead && lookahead <= '9')) ADVANCE(64);
      END_STATE();
    case 37:
      if (lookahead == '*' ||
          ('0' <= lookahead && lookahead <= '9')) ADVANCE(62);
      END_STATE();
    case 38:
      if (lookahead == '*' ||
          ('0' <= lookahead && lookahead <= '9')) ADVANCE(65);
      END_STATE();
    case 39:
      if (('0' <= lookahead && lookahead <= '9') ||
          lookahead == '_') ADVANCE(135);
      END_STATE();
    case 40:
      if (('0' <= lookahead && lookahead <= '9') ||
          lookahead == '_') ADVANCE(133);
      END_STATE();
    case 41:
      if (('0' <= lookahead && lookahead <= '9') ||
          lookahead == '_') ADVANCE(134);
      END_STATE();
    case 42:
      if (('0' <= lookahead && lookahead <= '9') ||
          lookahead == '_') ADVANCE(136);
      END_STATE();
    case 43:
      if (('0' <= lookahead && lookahead <= '9') ||
          ('A' <= lookahead && lookahead <= 'F') ||
          ('a' <= lookahead && lookahead <= 'f')) ADVANCE(48);
      END_STATE();
    case 44:
      if (('0' <= lookahead && lookahead <= '9') ||
          ('A' <= lookahead && lookahead <= 'F') ||
          ('a' <= lookahead && lookahead <= 'f')) ADVANCE(144);
      END_STATE();
    case 45:
      if (('0' <= lookahead && lookahead <= '9') ||
          ('A' <= lookahead && lookahead <= 'F') ||
          ('a' <= lookahead && lookahead <= 'f')) ADVANCE(35);
      END_STATE();
    case 46:
      if (('0' <= lookahead && lookahead <= '9') ||
          ('A' <= lookahead && lookahead <= 'F') ||
          ('a' <= lookahead && lookahead <= 'f')) ADVANCE(137);
      END_STATE();
    case 47:
      if (('0' <= lookahead && lookahead <= '9') ||
          ('A' <= lookahead && lookahead <= 'F') ||
          ('a' <= lookahead && lookahead <= 'f')) ADVANCE(139);
      END_STATE();
    case 48:
      if (('0' <= lookahead && lookahead <= '9') ||
          ('A' <= lookahead && lookahead <= 'F') ||
          ('a' <= lookahead && lookahead <= 'f')) ADVANCE(44);
      END_STATE();
    case 49:
      if (eof) ADVANCE(51);
      if (lookahead == '!') ADVANCE(111);
      if (lookahead == '"') ADVANCE(140);
      if (lookahead == '%') ADVANCE(105);
      if (lookahead == '&') ADVANCE(100);
      if (lookahead == '\'') ADVANCE(143);
      if (lookahead == '(') ADVANCE(82);
      if (lookahead == ')') ADVANCE(83);
      if (lookahead == '*') ADVANCE(78);
      if (lookahead == '+') ADVANCE(103);
      if (lookahead == ',') ADVANCE(80);
      if (lookahead == '-') ADVANCE(55);
      if (lookahead == '.') ADVANCE(87);
      if (lookahead == '/') ADVANCE(104);
      if (lookahead == '0') ADVANCE(88);
      if (lookahead == ':') ADVANCE(86);
      if (lookahead == ';') ADVANCE(126);
      if (lookahead == '<') ADVANCE(67);
      if (lookahead == '=') ADVANCE(77);
      if (lookahead == '>') ADVANCE(72);
      if (lookahead == '?') ADVANCE(93);
      if (lookahead == '[') ADVANCE(94);
      if (lookahead == ']') ADVANCE(95);
      if (lookahead == '^') ADVANCE(70);
      if (lookahead == '_') ADVANCE(142);
      if (lookahead == '{') ADVANCE(79);
      if (lookahead == '|') ADVANCE(101);
      if (lookahead == '}') ADVANCE(81);
      if (lookahead == '~') ADVANCE(74);
      if (lookahead == '\t' ||
          lookahead == '\n' ||
          lookahead == '\r' ||
          lookahead == ' ' ||
          lookahead == 160 ||
          lookahead == 8203 ||
          lookahead == 8288 ||
          lookahead == 65279) SKIP(49)
      if (('1' <= lookahead && lookahead <= '9')) ADVANCE(89);
      if (lookahead == '$' ||
          ('A' <= lookahead && lookahead <= 'Z') ||
          ('a' <= lookahead && lookahead <= 'z')) ADVANCE(130);
      END_STATE();
    case 50:
      if (eof) ADVANCE(51);
      if (lookahead == '!') ADVANCE(23);
      if (lookahead == '"') ADVANCE(140);
      if (lookahead == '%') ADVANCE(105);
      if (lookahead == '&') ADVANCE(100);
      if (lookahead == '\'') ADVANCE(143);
      if (lookahead == '(') ADVANCE(82);
      if (lookahead == ')') ADVANCE(83);
      if (lookahead == '*') ADVANCE(78);
      if (lookahead == '+') ADVANCE(103);
      if (lookahead == ',') ADVANCE(80);
      if (lookahead == '-') ADVANCE(55);
      if (lookahead == '.') ADVANCE(87);
      if (lookahead == '/') ADVANCE(104);
      if (lookahead == '0') ADVANCE(88);
      if (lookahead == ':') ADVANCE(86);
      if (lookahead == ';') ADVANCE(126);
      if (lookahead == '<') ADVANCE(67);
      if (lookahead == '=') ADVANCE(76);
      if (lookahead == '>') ADVANCE(72);
      if (lookahead == '?') ADVANCE(93);
      if (lookahead == '[') ADVANCE(94);
      if (lookahead == ']') ADVANCE(95);
      if (lookahead == '^') ADVANCE(70);
      if (lookahead == '{') ADVANCE(79);
      if (lookahead == '|') ADVANCE(101);
      if (lookahead == '}') ADVANCE(81);
      if (lookahead == '\t' ||
          lookahead == '\n' ||
          lookahead == '\r' ||
          lookahead == ' ' ||
          lookahead == 160 ||
          lookahead == 8203 ||
          lookahead == 8288 ||
          lookahead == 65279) SKIP(50)
      if (('1' <= lookahead && lookahead <= '9')) ADVANCE(89);
      if (lookahead == '$' ||
          ('A' <= lookahead && lookahead <= 'Z') ||
          lookahead == '_' ||
          ('a' <= lookahead && lookahead <= 'z')) ADVANCE(130);
      END_STATE();
    case 51:
      ACCEPT_TOKEN(ts_builtin_sym_end);
      END_STATE();
    case 52:
      ACCEPT_TOKEN(anon_sym_PIPE_PIPE);
      END_STATE();
    case 53:
      ACCEPT_TOKEN(anon_sym_DASH);
      END_STATE();
    case 54:
      ACCEPT_TOKEN(anon_sym_DASH);
      if (lookahead == '-') ADVANCE(113);
      END_STATE();
    case 55:
      ACCEPT_TOKEN(anon_sym_DASH);
      if (lookahead == '-') ADVANCE(113);
      if (lookahead == '=') ADVANCE(115);
      END_STATE();
    case 56:
      ACCEPT_TOKEN(aux_sym_pragma_value_token1);
      if (lookahead == '*') ADVANCE(58);
      if (lookahead == '/') ADVANCE(164);
      if (lookahead != 0 &&
          lookahead != ';') ADVANCE(60);
      END_STATE();
    case 57:
      ACCEPT_TOKEN(aux_sym_pragma_value_token1);
      if (lookahead == '*') ADVANCE(57);
      if (lookahead == '/') ADVANCE(163);
      if (lookahead == ';') ADVANCE(19);
      if (lookahead != 0) ADVANCE(58);
      END_STATE();
    case 58:
      ACCEPT_TOKEN(aux_sym_pragma_value_token1);
      if (lookahead == '*') ADVANCE(57);
      if (lookahead == ';') ADVANCE(19);
      if (lookahead != 0) ADVANCE(58);
      END_STATE();
    case 59:
      ACCEPT_TOKEN(aux_sym_pragma_value_token1);
      if (lookahead == '/') ADVANCE(56);
      if (lookahead == '\t' ||
          lookahead == '\n' ||
          lookahead == '\r' ||
          lookahead == ' ' ||
          lookahead == 160 ||
          lookahead == 8203 ||
          lookahead == 8288 ||
          lookahead == 65279) ADVANCE(59);
      if (lookahead != 0 &&
          lookahead != ';') ADVANCE(60);
      END_STATE();
    case 60:
      ACCEPT_TOKEN(aux_sym_pragma_value_token1);
      if (lookahead != 0 &&
          lookahead != ';') ADVANCE(60);
      END_STATE();
    case 61:
      ACCEPT_TOKEN(sym_solidity_version);
      END_STATE();
    case 62:
      ACCEPT_TOKEN(sym_solidity_version);
      if (lookahead == ' ') ADVANCE(63);
      if (lookahead == '"') ADVANCE(61);
      if (lookahead == '*' ||
          ('0' <= lookahead && lookahead <= '9')) ADVANCE(62);
      if (lookahead == '.') ADVANCE(38);
      END_STATE();
    case 63:
      ACCEPT_TOKEN(sym_solidity_version);
      if (lookahead == '"') ADVANCE(61);
      if (lookahead == '.') ADVANCE(38);
      END_STATE();
    case 64:
      ACCEPT_TOKEN(sym_solidity_version);
      if (lookahead == '"') ADVANCE(61);
      if (lookahead == '*' ||
          ('0' <= lookahead && lookahead <= '9')) ADVANCE(64);
      if (lookahead == '.') ADVANCE(8);
      END_STATE();
    case 65:
      ACCEPT_TOKEN(sym_solidity_version);
      if (lookahead == '"') ADVANCE(61);
      if (lookahead == '*' ||
          ('0' <= lookahead && lookahead <= '9')) ADVANCE(65);
      END_STATE();
    case 66:
      ACCEPT_TOKEN(anon_sym_LT_EQ);
      END_STATE();
    case 67:
      ACCEPT_TOKEN(anon_sym_LT);
      if (lookahead == '<') ADVANCE(99);
      if (lookahead == '=') ADVANCE(66);
      END_STATE();
    case 68:
      ACCEPT_TOKEN(anon_sym_LT);
      if (lookahead == '=') ADVANCE(66);
      END_STATE();
    case 69:
      ACCEPT_TOKEN(anon_sym_CARET);
      END_STATE();
    case 70:
      ACCEPT_TOKEN(anon_sym_CARET);
      if (lookahead == '=') ADVANCE(119);
      END_STATE();
    case 71:
      ACCEPT_TOKEN(anon_sym_GT);
      if (lookahead == '=') ADVANCE(73);
      END_STATE();
    case 72:
      ACCEPT_TOKEN(anon_sym_GT);
      if (lookahead == '=') ADVANCE(73);
      if (lookahead == '>') ADVANCE(97);
      END_STATE();
    case 73:
      ACCEPT_TOKEN(anon_sym_GT_EQ);
      END_STATE();
    case 74:
      ACCEPT_TOKEN(anon_sym_TILDE);
      END_STATE();
    case 75:
      ACCEPT_TOKEN(anon_sym_EQ);
      END_STATE();
    case 76:
      ACCEPT_TOKEN(anon_sym_EQ);
      if (lookahead == '=') ADVANCE(107);
      END_STATE();
    case 77:
      ACCEPT_TOKEN(anon_sym_EQ);
      if (lookahead == '=') ADVANCE(107);
      if (lookahead == '>') ADVANCE(125);
      END_STATE();
    case 78:
      ACCEPT_TOKEN(anon_sym_STAR);
      if (lookahead == '*') ADVANCE(106);
      if (lookahead == '=') ADVANCE(116);
      END_STATE();
    case 79:
      ACCEPT_TOKEN(anon_sym_LBRACE);
      END_STATE();
    case 80:
      ACCEPT_TOKEN(anon_sym_COMMA);
      END_STATE();
    case 81:
      ACCEPT_TOKEN(anon_sym_RBRACE);
      END_STATE();
    case 82:
      ACCEPT_TOKEN(anon_sym_LPAREN);
      END_STATE();
    case 83:
      ACCEPT_TOKEN(anon_sym_RPAREN);
      END_STATE();
    case 84:
      ACCEPT_TOKEN(anon_sym_DQUOTEevmasm_DQUOTE);
      END_STATE();
    case 85:
      ACCEPT_TOKEN(anon_sym_COLON);
      END_STATE();
    case 86:
      ACCEPT_TOKEN(anon_sym_COLON);
      if (lookahead == '=') ADVANCE(91);
      END_STATE();
    case 87:
      ACCEPT_TOKEN(anon_sym_DOT);
      END_STATE();
    case 88:
      ACCEPT_TOKEN(sym_yul_decimal_number);
      if (lookahead == 'x') ADVANCE(90);
      END_STATE();
    case 89:
      ACCEPT_TOKEN(sym_yul_decimal_number);
      if (('0' <= lookahead && lookahead <= '9')) ADVANCE(89);
      END_STATE();
    case 90:
      ACCEPT_TOKEN(sym_yul_hex_number);
      if (('0' <= lookahead && lookahead <= '9') ||
          ('A' <= lookahead && lookahead <= 'F') ||
          ('a' <= lookahead && lookahead <= 'f')) ADVANCE(90);
      END_STATE();
    case 91:
      ACCEPT_TOKEN(anon_sym_COLON_EQ);
      END_STATE();
    case 92:
      ACCEPT_TOKEN(anon_sym_DASH_GT);
      END_STATE();
    case 93:
      ACCEPT_TOKEN(anon_sym_QMARK);
      END_STATE();
    case 94:
      ACCEPT_TOKEN(anon_sym_LBRACK);
      END_STATE();
    case 95:
      ACCEPT_TOKEN(anon_sym_RBRACK);
      END_STATE();
    case 96:
      ACCEPT_TOKEN(anon_sym_AMP_AMP);
      END_STATE();
    case 97:
      ACCEPT_TOKEN(anon_sym_GT_GT);
      if (lookahead == '=') ADVANCE(122);
      if (lookahead == '>') ADVANCE(98);
      END_STATE();
    case 98:
      ACCEPT_TOKEN(anon_sym_GT_GT_GT);
      if (lookahead == '=') ADVANCE(123);
      END_STATE();
    case 99:
      ACCEPT_TOKEN(anon_sym_LT_LT);
      if (lookahead == '=') ADVANCE(124);
      END_STATE();
    case 100:
      ACCEPT_TOKEN(anon_sym_AMP);
      if (lookahead == '&') ADVANCE(96);
      if (lookahead == '=') ADVANCE(120);
      END_STATE();
    case 101:
      ACCEPT_TOKEN(anon_sym_PIPE);
      if (lookahead == '=') ADVANCE(121);
      if (lookahead == '|') ADVANCE(52);
      END_STATE();
    case 102:
      ACCEPT_TOKEN(anon_sym_PLUS);
      if (lookahead == '+') ADVANCE(112);
      END_STATE();
    case 103:
      ACCEPT_TOKEN(anon_sym_PLUS);
      if (lookahead == '+') ADVANCE(112);
      if (lookahead == '=') ADVANCE(114);
      END_STATE();
    case 104:
      ACCEPT_TOKEN(anon_sym_SLASH);
      if (lookahead == '*') ADVANCE(19);
      if (lookahead == '/') ADVANCE(165);
      if (lookahead == '=') ADVANCE(117);
      END_STATE();
    case 105:
      ACCEPT_TOKEN(anon_sym_PERCENT);
      if (lookahead == '=') ADVANCE(118);
      END_STATE();
    case 106:
      ACCEPT_TOKEN(anon_sym_STAR_STAR);
      END_STATE();
    case 107:
      ACCEPT_TOKEN(anon_sym_EQ_EQ);
      END_STATE();
    case 108:
      ACCEPT_TOKEN(anon_sym_BANG_EQ);
      if (lookahead == '=') ADVANCE(109);
      END_STATE();
    case 109:
      ACCEPT_TOKEN(anon_sym_BANG_EQ_EQ);
      END_STATE();
    case 110:
      ACCEPT_TOKEN(anon_sym_BANG);
      END_STATE();
    case 111:
      ACCEPT_TOKEN(anon_sym_BANG);
      if (lookahead == '=') ADVANCE(108);
      END_STATE();
    case 112:
      ACCEPT_TOKEN(anon_sym_PLUS_PLUS);
      END_STATE();
    case 113:
      ACCEPT_TOKEN(anon_sym_DASH_DASH);
      END_STATE();
    case 114:
      ACCEPT_TOKEN(anon_sym_PLUS_EQ);
      END_STATE();
    case 115:
      ACCEPT_TOKEN(anon_sym_DASH_EQ);
      END_STATE();
    case 116:
      ACCEPT_TOKEN(anon_sym_STAR_EQ);
      END_STATE();
    case 117:
      ACCEPT_TOKEN(anon_sym_SLASH_EQ);
      END_STATE();
    case 118:
      ACCEPT_TOKEN(anon_sym_PERCENT_EQ);
      END_STATE();
    case 119:
      ACCEPT_TOKEN(anon_sym_CARET_EQ);
      END_STATE();
    case 120:
      ACCEPT_TOKEN(anon_sym_AMP_EQ);
      END_STATE();
    case 121:
      ACCEPT_TOKEN(anon_sym_PIPE_EQ);
      END_STATE();
    case 122:
      ACCEPT_TOKEN(anon_sym_GT_GT_EQ);
      END_STATE();
    case 123:
      ACCEPT_TOKEN(anon_sym_GT_GT_GT_EQ);
      END_STATE();
    case 124:
      ACCEPT_TOKEN(anon_sym_LT_LT_EQ);
      END_STATE();
    case 125:
      ACCEPT_TOKEN(anon_sym_EQ_GT);
      END_STATE();
    case 126:
      ACCEPT_TOKEN(sym__semicolon);
      END_STATE();
    case 127:
      ACCEPT_TOKEN(sym_identifier);
      if (lookahead == '-') ADVANCE(41);
      if (('0' <= lookahead && lookahead <= '9') ||
          lookahead == '_') ADVANCE(129);
      if (lookahead == '$' ||
          ('A' <= lookahead && lookahead <= 'Z') ||
          ('a' <= lookahead && lookahead <= 'z')) ADVANCE(130);
      END_STATE();
    case 128:
      ACCEPT_TOKEN(sym_identifier);
      if (lookahead == '.') ADVANCE(40);
      if (('0' <= lookahead && lookahead <= '9') ||
          lookahead == '_') ADVANCE(128);
      if (lookahead == 'E' ||
          lookahead == 'e') ADVANCE(127);
      if (lookahead == '$' ||
          ('A' <= lookahead && lookahead <= 'Z') ||
          ('a' <= lookahead && lookahead <= 'z')) ADVANCE(130);
      END_STATE();
    case 129:
      ACCEPT_TOKEN(sym_identifier);
      if (('0' <= lookahead && lookahead <= '9') ||
          lookahead == '_') ADVANCE(129);
      if (lookahead == '$' ||
          ('A' <= lookahead && lookahead <= 'Z') ||
          ('a' <= lookahead && lookahead <= 'z')) ADVANCE(130);
      END_STATE();
    case 130:
      ACCEPT_TOKEN(sym_identifier);
      if (lookahead == '$' ||
          ('0' <= lookahead && lookahead <= '9') ||
          ('A' <= lookahead && lookahead <= 'Z') ||
          lookahead == '_' ||
          ('a' <= lookahead && lookahead <= 'z')) ADVANCE(130);
      END_STATE();
    case 131:
      ACCEPT_TOKEN(aux_sym__decimal_number_token1);
      if (lookahead == '.') ADVANCE(40);
      if (('0' <= lookahead && lookahead <= '9') ||
          lookahead == '_') ADVANCE(131);
      if (lookahead == 'E' ||
          lookahead == 'e') ADVANCE(20);
      END_STATE();
    case 132:
      ACCEPT_TOKEN(aux_sym__decimal_number_token1);
      if (lookahead == '.') ADVANCE(40);
      if (('0' <= lookahead && lookahead <= '9') ||
          lookahead == '_') ADVANCE(131);
      if (lookahead == 'E' ||
          lookahead == 'e') ADVANCE(20);
      if (lookahead == 'X' ||
          lookahead == 'x') ADVANCE(46);
      END_STATE();
    case 133:
      ACCEPT_TOKEN(aux_sym__decimal_number_token1);
      if (('0' <= lookahead && lookahead <= '9') ||
          lookahead == '_') ADVANCE(133);
      if (lookahead == 'E' ||
          lookahead == 'e') ADVANCE(20);
      END_STATE();
    case 134:
      ACCEPT_TOKEN(aux_sym__decimal_number_token1);
      if (('0' <= lookahead && lookahead <= '9') ||
          lookahead == '_') ADVANCE(134);
      END_STATE();
    case 135:
      ACCEPT_TOKEN(aux_sym__decimal_number_token2);
      if (('0' <= lookahead && lookahead <= '9') ||
          lookahead == '_') ADVANCE(135);
      if (lookahead == 'E' ||
          lookahead == 'e') ADVANCE(21);
      END_STATE();
    case 136:
      ACCEPT_TOKEN(aux_sym__decimal_number_token2);
      if (('0' <= lookahead && lookahead <= '9') ||
          lookahead == '_') ADVANCE(136);
      END_STATE();
    case 137:
      ACCEPT_TOKEN(aux_sym__hex_number_token1);
      if (lookahead == '_') ADVANCE(138);
      if (('0' <= lookahead && lookahead <= '9') ||
          ('A' <= lookahead && lookahead <= 'F') ||
          ('a' <= lookahead && lookahead <= 'f')) ADVANCE(137);
      END_STATE();
    case 138:
      ACCEPT_TOKEN(aux_sym__hex_number_token1);
      if (('0' <= lookahead && lookahead <= '9') ||
          ('A' <= lookahead && lookahead <= 'F') ||
          ('a' <= lookahead && lookahead <= 'f')) ADVANCE(137);
      END_STATE();
    case 139:
      ACCEPT_TOKEN(sym__hex_digit);
      END_STATE();
    case 140:
      ACCEPT_TOKEN(anon_sym_DQUOTE);
      END_STATE();
    case 141:
      ACCEPT_TOKEN(anon_sym__);
      END_STATE();
    case 142:
      ACCEPT_TOKEN(anon_sym__);
      if (lookahead == '$' ||
          ('0' <= lookahead && lookahead <= '9') ||
          ('A' <= lookahead && lookahead <= 'Z') ||
          lookahead == '_' ||
          ('a' <= lookahead && lookahead <= 'z')) ADVANCE(130);
      END_STATE();
    case 143:
      ACCEPT_TOKEN(anon_sym_SQUOTE);
      END_STATE();
    case 144:
      ACCEPT_TOKEN(sym__escape_sequence);
      END_STATE();
    case 145:
      ACCEPT_TOKEN(sym__escape_sequence);
      if (lookahead == '\n') ADVANCE(156);
      END_STATE();
    case 146:
      ACCEPT_TOKEN(sym__escape_sequence);
      if (lookahead == '\n') ADVANCE(149);
      END_STATE();
    case 147:
      ACCEPT_TOKEN(sym__escape_sequence);
      if (('0' <= lookahead && lookahead <= '7')) ADVANCE(144);
      END_STATE();
    case 148:
      ACCEPT_TOKEN(sym__escape_sequence);
      if (('0' <= lookahead && lookahead <= '7')) ADVANCE(147);
      END_STATE();
    case 149:
      ACCEPT_TOKEN(aux_sym__single_quoted_unicode_char_token1);
      END_STATE();
    case 150:
      ACCEPT_TOKEN(aux_sym__single_quoted_unicode_char_token1);
      if (lookahead == '\r') ADVANCE(155);
      if (lookahead != 0 &&
          lookahead != '\n' &&
          lookahead != '\'' &&
          lookahead != '\\') ADVANCE(150);
      END_STATE();
    case 151:
      ACCEPT_TOKEN(aux_sym__single_quoted_unicode_char_token1);
      if (lookahead == '*') ADVANCE(153);
      if (lookahead == '/') ADVANCE(150);
      if (lookahead != 0 &&
          lookahead != '\n' &&
          lookahead != '\'' &&
          lookahead != '\\') ADVANCE(155);
      END_STATE();
    case 152:
      ACCEPT_TOKEN(aux_sym__single_quoted_unicode_char_token1);
      if (lookahead == '*') ADVANCE(152);
      if (lookahead == '/') ADVANCE(155);
      if (lookahead != 0 &&
          lookahead != '\n' &&
          lookahead != '\'' &&
          lookahead != '\\') ADVANCE(153);
      END_STATE();
    case 153:
      ACCEPT_TOKEN(aux_sym__single_quoted_unicode_char_token1);
      if (lookahead == '*') ADVANCE(152);
      if (lookahead != 0 &&
          lookahead != '\n' &&
          lookahead != '\'' &&
          lookahead != '\\') ADVANCE(153);
      END_STATE();
    case 154:
      ACCEPT_TOKEN(aux_sym__single_quoted_unicode_char_token1);
      if (lookahead == '/') ADVANCE(151);
      if (lookahead == '\t' ||
          lookahead == '\r' ||
          lookahead == ' ' ||
          lookahead == 160 ||
          lookahead == 8203 ||
          lookahead == 8288 ||
          lookahead == 65279) ADVANCE(154);
      if (lookahead != 0 &&
          lookahead != '\n' &&
          lookahead != '\'' &&
          lookahead != '\\') ADVANCE(155);
      END_STATE();
    case 155:
      ACCEPT_TOKEN(aux_sym__single_quoted_unicode_char_token1);
      if (lookahead != 0 &&
          lookahead != '\n' &&
          lookahead != '\'' &&
          lookahead != '\\') ADVANCE(155);
      END_STATE();
    case 156:
      ACCEPT_TOKEN(aux_sym__double_quoted_unicode_char_token1);
      END_STATE();
    case 157:
      ACCEPT_TOKEN(aux_sym__double_quoted_unicode_char_token1);
      if (lookahead == '\r') ADVANCE(162);
      if (lookahead != 0 &&
          lookahead != '\n' &&
          lookahead != '"' &&
          lookahead != '\\') ADVANCE(157);
      END_STATE();
    case 158:
      ACCEPT_TOKEN(aux_sym__double_quoted_unicode_char_token1);
      if (lookahead == '*') ADVANCE(160);
      if (lookahead == '/') ADVANCE(157);
      if (lookahead != 0 &&
          lookahead != '\n' &&
          lookahead != '"' &&
          lookahead != '\\') ADVANCE(162);
      END_STATE();
    case 159:
      ACCEPT_TOKEN(aux_sym__double_quoted_unicode_char_token1);
      if (lookahead == '*') ADVANCE(159);
      if (lookahead == '/') ADVANCE(162);
      if (lookahead != 0 &&
          lookahead != '\n' &&
          lookahead != '"' &&
          lookahead != '\\') ADVANCE(160);
      END_STATE();
    case 160:
      ACCEPT_TOKEN(aux_sym__double_quoted_unicode_char_token1);
      if (lookahead == '*') ADVANCE(159);
      if (lookahead != 0 &&
          lookahead != '\n' &&
          lookahead != '"' &&
          lookahead != '\\') ADVANCE(160);
      END_STATE();
    case 161:
      ACCEPT_TOKEN(aux_sym__double_quoted_unicode_char_token1);
      if (lookahead == '/') ADVANCE(158);
      if (lookahead == '\t' ||
          lookahead == '\r' ||
          lookahead == ' ' ||
          lookahead == 160 ||
          lookahead == 8203 ||
          lookahead == 8288 ||
          lookahead == 65279) ADVANCE(161);
      if (lookahead != 0 &&
          lookahead != '\n' &&
          lookahead != '"' &&
          lookahead != '\\') ADVANCE(162);
      END_STATE();
    case 162:
      ACCEPT_TOKEN(aux_sym__double_quoted_unicode_char_token1);
      if (lookahead != 0 &&
          lookahead != '\n' &&
          lookahead != '"' &&
          lookahead != '\\') ADVANCE(162);
      END_STATE();
    case 163:
      ACCEPT_TOKEN(sym_comment);
      END_STATE();
    case 164:
      ACCEPT_TOKEN(sym_comment);
      if (lookahead == ';') ADVANCE(165);
      if (lookahead != 0 &&
          lookahead != '\n' &&
          lookahead != '\r') ADVANCE(164);
      END_STATE();
    case 165:
      ACCEPT_TOKEN(sym_comment);
      if (lookahead != 0 &&
          lookahead != '\n' &&
          lookahead != '\r') ADVANCE(165);
      END_STATE();
    default:
      return false;
  }
}

static bool ts_lex_keywords(TSLexer *lexer, TSStateId state) {
  START_LEXER();
  eof = lexer->eof(lexer);
  switch (state) {
    case 0:
      if (lookahead == 'a') ADVANCE(1);
      if (lookahead == 'b') ADVANCE(2);
      if (lookahead == 'c') ADVANCE(3);
      if (lookahead == 'd') ADVANCE(4);
      if (lookahead == 'e') ADVANCE(5);
      if (lookahead == 'f') ADVANCE(6);
      if (lookahead == 'g') ADVANCE(7);
      if (lookahead == 'h') ADVANCE(8);
      if (lookahead == 'i') ADVANCE(9);
      if (lookahead == 'k') ADVANCE(10);
      if (lookahead == 'l') ADVANCE(11);
      if (lookahead == 'm') ADVANCE(12);
      if (lookahead == 'n') ADVANCE(13);
      if (lookahead == 'o') ADVANCE(14);
      if (lookahead == 'p') ADVANCE(15);
      if (lookahead == 'r') ADVANCE(16);
      if (lookahead == 's') ADVANCE(17);
      if (lookahead == 't') ADVANCE(18);
      if (lookahead == 'u') ADVANCE(19);
      if (lookahead == 'v') ADVANCE(20);
      if (lookahead == 'w') ADVANCE(21);
      if (lookahead == 'x') ADVANCE(22);
      if (lookahead == 'y') ADVANCE(23);
      if (lookahead == '\t' ||
          lookahead == '\n' ||
          lookahead == '\r' ||
          lookahead == ' ' ||
          lookahead == 160 ||
          lookahead == 8203 ||
          lookahead == 8288 ||
          lookahead == 65279) SKIP(0)
      END_STATE();
    case 1:
      if (lookahead == 'b') ADVANCE(24);
      if (lookahead == 'd') ADVANCE(25);
      if (lookahead == 'n') ADVANCE(26);
      if (lookahead == 's') ADVANCE(27);
      END_STATE();
    case 2:
      if (lookahead == 'a') ADVANCE(28);
      if (lookahead == 'l') ADVANCE(29);
      if (lookahead == 'o') ADVANCE(30);
      if (lookahead == 'r') ADVANCE(31);
      if (lookahead == 'y') ADVANCE(32);
      END_STATE();
    case 3:
      if (lookahead == 'a') ADVANCE(33);
      if (lookahead == 'h') ADVANCE(34);
      if (lookahead == 'o') ADVANCE(35);
      if (lookahead == 'r') ADVANCE(36);
      END_STATE();
    case 4:
      if (lookahead == 'a') ADVANCE(37);
      if (lookahead == 'e') ADVANCE(38);
      if (lookahead == 'i') ADVANCE(39);
      if (lookahead == 'o') ADVANCE(40);
      END_STATE();
    case 5:
      if (lookahead == 'l') ADVANCE(41);
      if (lookahead == 'm') ADVANCE(42);
      if (lookahead == 'n') ADVANCE(43);
      if (lookahead == 'q') ADVANCE(44);
      if (lookahead == 'r') ADVANCE(45);
      if (lookahead == 't') ADVANCE(46);
      if (lookahead == 'v') ADVANCE(47);
      if (lookahead == 'x') ADVANCE(48);
      END_STATE();
    case 6:
      if (lookahead == 'a') ADVANCE(49);
      if (lookahead == 'i') ADVANCE(50);
      if (lookahead == 'o') ADVANCE(51);
      if (lookahead == 'r') ADVANCE(52);
      if (lookahead == 'u') ADVANCE(53);
      END_STATE();
    case 7:
      if (lookahead == 'a') ADVANCE(54);
      if (lookahead == 't') ADVANCE(55);
      if (lookahead == 'w') ADVANCE(56);
      END_STATE();
    case 8:
      if (lookahead == 'e') ADVANCE(57);
      if (lookahead == 'o') ADVANCE(58);
      END_STATE();
    case 9:
      if (lookahead == 'f') ADVANCE(59);
      if (lookahead == 'm') ADVANCE(60);
      if (lookahead == 'n') ADVANCE(61);
      if (lookahead == 's') ADVANCE(62);
      END_STATE();
    case 10:
      if (lookahead == 'e') ADVANCE(63);
      END_STATE();
    case 11:
      if (lookahead == 'e') ADVANCE(64);
      if (lookahead == 'i') ADVANCE(65);
      if (lookahead == 'o') ADVANCE(66);
      if (lookahead == 't') ADVANCE(67);
      END_STATE();
    case 12:
      if (lookahead == 'a') ADVANCE(68);
      if (lookahead == 'e') ADVANCE(69);
      if (lookahead == 'i') ADVANCE(70);
      if (lookahead == 'l') ADVANCE(71);
      if (lookahead == 'o') ADVANCE(72);
      if (lookahead == 's') ADVANCE(73);
      if (lookahead == 'u') ADVANCE(74);
      END_STATE();
    case 13:
      if (lookahead == 'e') ADVANCE(75);
      if (lookahead == 'o') ADVANCE(76);
      if (lookahead == 'u') ADVANCE(77);
      END_STATE();
    case 14:
      if (lookahead == 'r') ADVANCE(78);
      if (lookahead == 'v') ADVANCE(79);
      END_STATE();
    case 15:
      if (lookahead == 'a') ADVANCE(80);
      if (lookahead == 'o') ADVANCE(81);
      if (lookahead == 'r') ADVANCE(82);
      if (lookahead == 'u') ADVANCE(83);
      END_STATE();
    case 16:
      if (lookahead == 'e') ADVANCE(84);
      END_STATE();
    case 17:
      if (lookahead == 'a') ADVANCE(85);
      if (lookahead == 'd') ADVANCE(86);
      if (lookahead == 'e') ADVANCE(87);
      if (lookahead == 'g') ADVANCE(88);
      if (lookahead == 'h') ADVANCE(89);
      if (lookahead == 'i') ADVANCE(90);
      if (lookahead == 'l') ADVANCE(91);
      if (lookahead == 'm') ADVANCE(92);
      if (lookahead == 'o') ADVANCE(93);
      if (lookahead == 's') ADVANCE(94);
      if (lookahead == 't') ADVANCE(95);
      if (lookahead == 'u') ADVANCE(96);
      if (lookahead == 'w') ADVANCE(97);
      if (lookahead == 'z') ADVANCE(98);
      END_STATE();
    case 18:
      if (lookahead == 'i') ADVANCE(99);
      if (lookahead == 'r') ADVANCE(100);
      if (lookahead == 'y') ADVANCE(101);
      END_STATE();
    case 19:
      if (lookahead == 'f') ADVANCE(102);
      if (lookahead == 'i') ADVANCE(103);
      if (lookahead == 'n') ADVANCE(104);
      if (lookahead == 's') ADVANCE(105);
      END_STATE();
    case 20:
      if (lookahead == 'a') ADVANCE(106);
      if (lookahead == 'i') ADVANCE(107);
      END_STATE();
    case 21:
      if (lookahead == 'e') ADVANCE(108);
      if (lookahead == 'h') ADVANCE(109);
      END_STATE();
    case 22:
      if (lookahead == 'o') ADVANCE(110);
      END_STATE();
    case 23:
      if (lookahead == 'e') ADVANCE(111);
      END_STATE();
    case 24:
      if (lookahead == 's') ADVANCE(112);
      END_STATE();
    case 25:
      if (lookahead == 'd') ADVANCE(113);
      END_STATE();
    case 26:
      if (lookahead == 'd') ADVANCE(114);
      if (lookahead == 'o') ADVANCE(115);
      END_STATE();
    case 27:
      ACCEPT_TOKEN(anon_sym_as);
      if (lookahead == 's') ADVANCE(116);
      END_STATE();
    case 28:
      if (lookahead == 'l') ADVANCE(117);
      END_STATE();
    case 29:
      if (lookahead == 'o') ADVANCE(118);
      END_STATE();
    case 30:
      if (lookahead == 'o') ADVANCE(119);
      END_STATE();
    case 31:
      if (lookahead == 'e') ADVANCE(120);
      END_STATE();
    case 32:
      if (lookahead == 't') ADVANCE(121);
      END_STATE();
    case 33:
      if (lookahead == 'l') ADVANCE(122);
      if (lookahead == 's') ADVANCE(123);
      if (lookahead == 't') ADVANCE(124);
      END_STATE();
    case 34:
      if (lookahead == 'a') ADVANCE(125);
      END_STATE();
    case 35:
      if (lookahead == 'i') ADVANCE(126);
      if (lookahead == 'n') ADVANCE(127);
      END_STATE();
    case 36:
      if (lookahead == 'e') ADVANCE(128);
      END_STATE();
    case 37:
      if (lookahead == 'y') ADVANCE(129);
      END_STATE();
    case 38:
      if (lookahead == 'f') ADVANCE(130);
      if (lookahead == 'l') ADVANCE(131);
      END_STATE();
    case 39:
      if (lookahead == 'f') ADVANCE(132);
      if (lookahead == 'v') ADVANCE(133);
      END_STATE();
    case 40:
      ACCEPT_TOKEN(anon_sym_do);
      END_STATE();
    case 41:
      if (lookahead == 's') ADVANCE(134);
      END_STATE();
    case 42:
      if (lookahead == 'i') ADVANCE(135);
      END_STATE();
    case 43:
      if (lookahead == 'u') ADVANCE(136);
      END_STATE();
    case 44:
      ACCEPT_TOKEN(anon_sym_eq);
      END_STATE();
    case 45:
      if (lookahead == 'r') ADVANCE(137);
      END_STATE();
    case 46:
      if (lookahead == 'h') ADVANCE(138);
      END_STATE();
    case 47:
      if (lookahead == 'e') ADVANCE(139);
      END_STATE();
    case 48:
      if (lookahead == 'p') ADVANCE(140);
      if (lookahead == 't') ADVANCE(141);
      END_STATE();
    case 49:
      if (lookahead == 'l') ADVANCE(142);
      END_STATE();
    case 50:
      if (lookahead == 'n') ADVANCE(143);
      if (lookahead == 'x') ADVANCE(144);
      END_STATE();
    case 51:
      if (lookahead == 'r') ADVANCE(145);
      END_STATE();
    case 52:
      if (lookahead == 'o') ADVANCE(146);
      END_STATE();
    case 53:
      if (lookahead == 'n') ADVANCE(147);
      END_STATE();
    case 54:
      if (lookahead == 's') ADVANCE(148);
      END_STATE();
    case 55:
      ACCEPT_TOKEN(anon_sym_gt);
      END_STATE();
    case 56:
      if (lookahead == 'e') ADVANCE(149);
      END_STATE();
    case 57:
      if (lookahead == 'x') ADVANCE(150);
      END_STATE();
    case 58:
      if (lookahead == 'u') ADVANCE(151);
      END_STATE();
    case 59:
      ACCEPT_TOKEN(anon_sym_if);
      END_STATE();
    case 60:
      if (lookahead == 'm') ADVANCE(152);
      if (lookahead == 'p') ADVANCE(153);
      END_STATE();
    case 61:
      if (lookahead == 'd') ADVANCE(154);
      if (lookahead == 't') ADVANCE(155);
      if (lookahead == 'v') ADVANCE(156);
      END_STATE();
    case 62:
      ACCEPT_TOKEN(anon_sym_is);
      if (lookahead == 'z') ADVANCE(157);
      END_STATE();
    case 63:
      if (lookahead == 'c') ADVANCE(158);
      END_STATE();
    case 64:
      if (lookahead == 'a') ADVANCE(159);
      if (lookahead == 't') ADVANCE(160);
      END_STATE();
    case 65:
      if (lookahead == 'b') ADVANCE(161);
      END_STATE();
    case 66:
      if (lookahead == 'g') ADVANCE(162);
      END_STATE();
    case 67:
      ACCEPT_TOKEN(anon_sym_lt);
      END_STATE();
    case 68:
      if (lookahead == 'p') ADVANCE(163);
      END_STATE();
    case 69:
      if (lookahead == 'm') ADVANCE(164);
      END_STATE();
    case 70:
      if (lookahead == 'n') ADVANCE(165);
      END_STATE();
    case 71:
      if (lookahead == 'o') ADVANCE(166);
      END_STATE();
    case 72:
      if (lookahead == 'd') ADVANCE(167);
      END_STATE();
    case 73:
      if (lookahead == 'i') ADVANCE(168);
      if (lookahead == 't') ADVANCE(169);
      END_STATE();
    case 74:
      if (lookahead == 'l') ADVANCE(170);
      END_STATE();
    case 75:
      if (lookahead == 'w') ADVANCE(171);
      END_STATE();
    case 76:
      if (lookahead == 't') ADVANCE(172);
      END_STATE();
    case 77:
      if (lookahead == 'm') ADVANCE(173);
      END_STATE();
    case 78:
      ACCEPT_TOKEN(anon_sym_or);
      if (lookahead == 'i') ADVANCE(174);
      END_STATE();
    case 79:
      if (lookahead == 'e') ADVANCE(175);
      END_STATE();
    case 80:
      if (lookahead == 'y') ADVANCE(176);
      END_STATE();
    case 81:
      if (lookahead == 'p') ADVANCE(177);
      END_STATE();
    case 82:
      if (lookahead == 'a') ADVANCE(178);
      if (lookahead == 'i') ADVANCE(179);
      END_STATE();
    case 83:
      if (lookahead == 'b') ADVANCE(180);
      if (lookahead == 'r') ADVANCE(181);
      END_STATE();
    case 84:
      if (lookahead == 'c') ADVANCE(182);
      if (lookahead == 't') ADVANCE(183);
      if (lookahead == 'v') ADVANCE(184);
      END_STATE();
    case 85:
      if (lookahead == 'r') ADVANCE(185);
      END_STATE();
    case 86:
      if (lookahead == 'i') ADVANCE(186);
      END_STATE();
    case 87:
      if (lookahead == 'c') ADVANCE(187);
      if (lookahead == 'l') ADVANCE(188);
      END_STATE();
    case 88:
      if (lookahead == 't') ADVANCE(189);
      END_STATE();
    case 89:
      if (lookahead == 'l') ADVANCE(190);
      if (lookahead == 'r') ADVANCE(191);
      END_STATE();
    case 90:
      if (lookahead == 'g') ADVANCE(192);
      END_STATE();
    case 91:
      if (lookahead == 'o') ADVANCE(193);
      if (lookahead == 't') ADVANCE(194);
      END_STATE();
    case 92:
      if (lookahead == 'o') ADVANCE(195);
      END_STATE();
    case 93:
      if (lookahead == 'l') ADVANCE(196);
      END_STATE();
    case 94:
      if (lookahead == 't') ADVANCE(197);
      END_STATE();
    case 95:
      if (lookahead == 'a') ADVANCE(198);
      if (lookahead == 'o') ADVANCE(199);
      if (lookahead == 'r') ADVANCE(200);
      END_STATE();
    case 96:
      if (lookahead == 'b') ADVANCE(201);
      END_STATE();
    case 97:
      if (lookahead == 'i') ADVANCE(202);
      END_STATE();
    case 98:
      if (lookahead == 'a') ADVANCE(203);
      END_STATE();
    case 99:
      if (lookahead == 'm') ADVANCE(204);
      END_STATE();
    case 100:
      if (lookahead == 'u') ADVANCE(205);
      if (lookahead == 'y') ADVANCE(206);
      END_STATE();
    case 101:
      if (lookahead == 'p') ADVANCE(207);
      END_STATE();
    case 102:
      if (lookahead == 'i') ADVANCE(208);
      END_STATE();
    case 103:
      if (lookahead == 'n') ADVANCE(209);
      END_STATE();
    case 104:
      if (lookahead == 'c') ADVANCE(210);
      if (lookahead == 'i') ADVANCE(211);
      END_STATE();
    case 105:
      if (lookahead == 'i') ADVANCE(212);
      END_STATE();
    case 106:
      if (lookahead == 'r') ADVANCE(213);
      END_STATE();
    case 107:
      if (lookahead == 'e') ADVANCE(214);
      if (lookahead == 'r') ADVANCE(215);
      END_STATE();
    case 108:
      if (lookahead == 'e') ADVANCE(216);
      if (lookahead == 'i') ADVANCE(217);
      END_STATE();
    case 109:
      if (lookahead == 'i') ADVANCE(218);
      END_STATE();
    case 110:
      if (lookahead == 'r') ADVANCE(219);
      END_STATE();
    case 111:
      if (lookahead == 'a') ADVANCE(220);
      END_STATE();
    case 112:
      if (lookahead == 't') ADVANCE(221);
      END_STATE();
    case 113:
      ACCEPT_TOKEN(anon_sym_add);
      if (lookahead == 'm') ADVANCE(222);
      if (lookahead == 'r') ADVANCE(223);
      END_STATE();
    case 114:
      ACCEPT_TOKEN(anon_sym_and);
      END_STATE();
    case 115:
      if (lookahead == 'n') ADVANCE(224);
      END_STATE();
    case 116:
      if (lookahead == 'e') ADVANCE(225);
      END_STATE();
    case 117:
      if (lookahead == 'a') ADVANCE(226);
      END_STATE();
    case 118:
      if (lookahead == 'c') ADVANCE(227);
      END_STATE();
    case 119:
      if (lookahead == 'l') ADVANCE(228);
      END_STATE();
    case 120:
      if (lookahead == 'a') ADVANCE(229);
      END_STATE();
    case 121:
      if (lookahead == 'e') ADVANCE(230);
      END_STATE();
    case 122:
      if (lookahead == 'l') ADVANCE(231);
      END_STATE();
    case 123:
      if (lookahead == 'e') ADVANCE(232);
      END_STATE();
    case 124:
      if (lookahead == 'c') ADVANCE(233);
      END_STATE();
    case 125:
      if (lookahead == 'i') ADVANCE(234);
      END_STATE();
    case 126:
      if (lookahead == 'n') ADVANCE(235);
      END_STATE();
    case 127:
      if (lookahead == 's') ADVANCE(236);
      if (lookahead == 't') ADVANCE(237);
      END_STATE();
    case 128:
      if (lookahead == 'a') ADVANCE(238);
      END_STATE();
    case 129:
      if (lookahead == 's') ADVANCE(239);
      END_STATE();
    case 130:
      if (lookahead == 'a') ADVANCE(240);
      END_STATE();
    case 131:
      if (lookahead == 'e') ADVANCE(241);
      END_STATE();
    case 132:
      if (lookahead == 'f') ADVANCE(242);
      END_STATE();
    case 133:
      ACCEPT_TOKEN(anon_sym_div);
      END_STATE();
    case 134:
      if (lookahead == 'e') ADVANCE(243);
      END_STATE();
    case 135:
      if (lookahead == 't') ADVANCE(244);
      END_STATE();
    case 136:
      if (lookahead == 'm') ADVANCE(245);
      END_STATE();
    case 137:
      if (lookahead == 'o') ADVANCE(246);
      END_STATE();
    case 138:
      if (lookahead == 'e') ADVANCE(247);
      END_STATE();
    case 139:
      if (lookahead == 'n') ADVANCE(248);
      END_STATE();
    case 140:
      ACCEPT_TOKEN(anon_sym_exp);
      END_STATE();
    case 141:
      if (lookahead == 'c') ADVANCE(249);
      if (lookahead == 'e') ADVANCE(250);
      END_STATE();
    case 142:
      if (lookahead == 'l') ADVANCE(251);
      if (lookahead == 's') ADVANCE(252);
      END_STATE();
    case 143:
      if (lookahead == 'n') ADVANCE(253);
      END_STATE();
    case 144:
      if (lookahead == 'e') ADVANCE(254);
      END_STATE();
    case 145:
      ACCEPT_TOKEN(anon_sym_for);
      END_STATE();
    case 146:
      if (lookahead == 'm') ADVANCE(255);
      END_STATE();
    case 147:
      if (lookahead == 'c') ADVANCE(256);
      END_STATE();
    case 148:
      ACCEPT_TOKEN(anon_sym_gas);
      if (lookahead == 'l') ADVANCE(257);
      if (lookahead == 'p') ADVANCE(258);
      END_STATE();
    case 149:
      if (lookahead == 'i') ADVANCE(259);
      END_STATE();
    case 150:
      ACCEPT_TOKEN(anon_sym_hex);
      END_STATE();
    case 151:
      if (lookahead == 'r') ADVANCE(260);
      END_STATE();
    case 152:
      if (lookahead == 'u') ADVANCE(261);
      END_STATE();
    case 153:
      if (lookahead == 'o') ADVANCE(262);
      END_STATE();
    case 154:
      if (lookahead == 'e') ADVANCE(263);
      END_STATE();
    case 155:
      ACCEPT_TOKEN(anon_sym_int);
      if (lookahead == '1') ADVANCE(264);
      if (lookahead == '2') ADVANCE(265);
      if (lookahead == '3') ADVANCE(266);
      if (lookahead == '4') ADVANCE(267);
      if (lookahead == '5') ADVANCE(268);
      if (lookahead == '6') ADVANCE(269);
      if (lookahead == '7') ADVANCE(270);
      if (lookahead == '8') ADVANCE(271);
      if (lookahead == '9') ADVANCE(272);
      if (lookahead == 'e') ADVANCE(273);
      END_STATE();
    case 156:
      if (lookahead == 'a') ADVANCE(274);
      END_STATE();
    case 157:
      if (lookahead == 'e') ADVANCE(275);
      END_STATE();
    case 158:
      if (lookahead == 'c') ADVANCE(276);
      END_STATE();
    case 159:
      if (lookahead == 'v') ADVANCE(277);
      END_STATE();
    case 160:
      ACCEPT_TOKEN(anon_sym_let);
      END_STATE();
    case 161:
      if (lookahead == 'r') ADVANCE(278);
      END_STATE();
    case 162:
      if (lookahead == '0') ADVANCE(279);
      if (lookahead == '1') ADVANCE(280);
      if (lookahead == '2') ADVANCE(281);
      if (lookahead == '3') ADVANCE(282);
      if (lookahead == '4') ADVANCE(283);
      END_STATE();
    case 163:
      if (lookahead == 'p') ADVANCE(284);
      END_STATE();
    case 164:
      if (lookahead == 'o') ADVANCE(285);
      END_STATE();
    case 165:
      if (lookahead == 'u') ADVANCE(286);
      END_STATE();
    case 166:
      if (lookahead == 'a') ADVANCE(287);
      END_STATE();
    case 167:
      ACCEPT_TOKEN(anon_sym_mod);
      if (lookahead == 'i') ADVANCE(288);
      END_STATE();
    case 168:
      if (lookahead == 'z') ADVANCE(289);
      END_STATE();
    case 169:
      if (lookahead == 'o') ADVANCE(290);
      END_STATE();
    case 170:
      ACCEPT_TOKEN(anon_sym_mul);
      if (lookahead == 'm') ADVANCE(291);
      END_STATE();
    case 171:
      ACCEPT_TOKEN(anon_sym_new);
      END_STATE();
    case 172:
      ACCEPT_TOKEN(anon_sym_not);
      END_STATE();
    case 173:
      if (lookahead == 'b') ADVANCE(292);
      END_STATE();
    case 174:
      if (lookahead == 'g') ADVANCE(293);
      END_STATE();
    case 175:
      if (lookahead == 'r') ADVANCE(294);
      END_STATE();
    case 176:
      if (lookahead == 'a') ADVANCE(295);
      END_STATE();
    case 177:
      ACCEPT_TOKEN(anon_sym_pop);
      END_STATE();
    case 178:
      if (lookahead == 'g') ADVANCE(296);
      END_STATE();
    case 179:
      if (lookahead == 'v') ADVANCE(297);
      END_STATE();
    case 180:
      if (lookahead == 'l') ADVANCE(298);
      END_STATE();
    case 181:
      if (lookahead == 'e') ADVANCE(299);
      END_STATE();
    case 182:
      if (lookahead == 'e') ADVANCE(300);
      END_STATE();
    case 183:
      if (lookahead == 'u') ADVANCE(301);
      END_STATE();
    case 184:
      if (lookahead == 'e') ADVANCE(302);
      END_STATE();
    case 185:
      ACCEPT_TOKEN(anon_sym_sar);
      END_STATE();
    case 186:
      if (lookahead == 'v') ADVANCE(303);
      END_STATE();
    case 187:
      if (lookahead == 'o') ADVANCE(304);
      END_STATE();
    case 188:
      if (lookahead == 'f') ADVANCE(305);
      END_STATE();
    case 189:
      ACCEPT_TOKEN(anon_sym_sgt);
      END_STATE();
    case 190:
      ACCEPT_TOKEN(anon_sym_shl);
      END_STATE();
    case 191:
      ACCEPT_TOKEN(anon_sym_shr);
      END_STATE();
    case 192:
      if (lookahead == 'n') ADVANCE(306);
      END_STATE();
    case 193:
      if (lookahead == 'a') ADVANCE(307);
      END_STATE();
    case 194:
      ACCEPT_TOKEN(anon_sym_slt);
      END_STATE();
    case 195:
      if (lookahead == 'd') ADVANCE(308);
      END_STATE();
    case 196:
      if (lookahead == 'i') ADVANCE(309);
      END_STATE();
    case 197:
      if (lookahead == 'o') ADVANCE(310);
      END_STATE();
    case 198:
      if (lookahead == 't') ADVANCE(311);
      END_STATE();
    case 199:
      if (lookahead == 'p') ADVANCE(312);
      if (lookahead == 'r') ADVANCE(313);
      END_STATE();
    case 200:
      if (lookahead == 'i') ADVANCE(314);
      if (lookahead == 'u') ADVANCE(315);
      END_STATE();
    case 201:
      ACCEPT_TOKEN(anon_sym_sub);
      END_STATE();
    case 202:
      if (lookahead == 't') ADVANCE(316);
      END_STATE();
    case 203:
      if (lookahead == 'b') ADVANCE(317);
      END_STATE();
    case 204:
      if (lookahead == 'e') ADVANCE(318);
      END_STATE();
    case 205:
      if (lookahead == 'e') ADVANCE(319);
      END_STATE();
    case 206:
      ACCEPT_TOKEN(anon_sym_try);
      END_STATE();
    case 207:
      if (lookahead == 'e') ADVANCE(320);
      END_STATE();
    case 208:
      if (lookahead == 'x') ADVANCE(321);
      END_STATE();
    case 209:
      if (lookahead == 't') ADVANCE(322);
      END_STATE();
    case 210:
      if (lookahead == 'h') ADVANCE(323);
      END_STATE();
    case 211:
      if (lookahead == 'c') ADVANCE(324);
      END_STATE();
    case 212:
      if (lookahead == 'n') ADVANCE(325);
      END_STATE();
    case 213:
      ACCEPT_TOKEN(anon_sym_var);
      END_STATE();
    case 214:
      if (lookahead == 'w') ADVANCE(326);
      END_STATE();
    case 215:
      if (lookahead == 't') ADVANCE(327);
      END_STATE();
    case 216:
      if (lookahead == 'k') ADVANCE(328);
      END_STATE();
    case 217:
      ACCEPT_TOKEN(anon_sym_wei);
      END_STATE();
    case 218:
      if (lookahead == 'l') ADVANCE(329);
      END_STATE();
    case 219:
      ACCEPT_TOKEN(anon_sym_xor);
      END_STATE();
    case 220:
      if (lookahead == 'r') ADVANCE(330);
      END_STATE();
    case 221:
      if (lookahead == 'r') ADVANCE(331);
      END_STATE();
    case 222:
      if (lookahead == 'o') ADVANCE(332);
      END_STATE();
    case 223:
      if (lookahead == 'e') ADVANCE(333);
      END_STATE();
    case 224:
      if (lookahead == 'y') ADVANCE(334);
      END_STATE();
    case 225:
      if (lookahead == 'm') ADVANCE(335);
      END_STATE();
    case 226:
      if (lookahead == 'n') ADVANCE(336);
      END_STATE();
    case 227:
      if (lookahead == 'k') ADVANCE(337);
      END_STATE();
    case 228:
      ACCEPT_TOKEN(anon_sym_bool);
      END_STATE();
    case 229:
      if (lookahead == 'k') ADVANCE(338);
      END_STATE();
    case 230:
      ACCEPT_TOKEN(anon_sym_byte);
      if (lookahead == 's') ADVANCE(339);
      END_STATE();
    case 231:
      ACCEPT_TOKEN(anon_sym_call);
      if (lookahead == 'c') ADVANCE(340);
      if (lookahead == 'd') ADVANCE(341);
      if (lookahead == 'e') ADVANCE(342);
      if (lookahead == 'v') ADVANCE(343);
      END_STATE();
    case 232:
      ACCEPT_TOKEN(anon_sym_case);
      END_STATE();
    case 233:
      if (lookahead == 'h') ADVANCE(344);
      END_STATE();
    case 234:
      if (lookahead == 'n') ADVANCE(345);
      END_STATE();
    case 235:
      if (lookahead == 'b') ADVANCE(346);
      END_STATE();
    case 236:
      if (lookahead == 't') ADVANCE(347);
      END_STATE();
    case 237:
      if (lookahead == 'i') ADVANCE(348);
      if (lookahead == 'r') ADVANCE(349);
      END_STATE();
    case 238:
      if (lookahead == 't') ADVANCE(350);
      END_STATE();
    case 239:
      ACCEPT_TOKEN(anon_sym_days);
      END_STATE();
    case 240:
      if (lookahead == 'u') ADVANCE(351);
      END_STATE();
    case 241:
      if (lookahead == 'g') ADVANCE(352);
      if (lookahead == 't') ADVANCE(353);
      END_STATE();
    case 242:
      if (lookahead == 'i') ADVANCE(354);
      END_STATE();
    case 243:
      ACCEPT_TOKEN(anon_sym_else);
      END_STATE();
    case 244:
      ACCEPT_TOKEN(anon_sym_emit);
      END_STATE();
    case 245:
      ACCEPT_TOKEN(anon_sym_enum);
      END_STATE();
    case 246:
      if (lookahead == 'r') ADVANCE(355);
      END_STATE();
    case 247:
      if (lookahead == 'r') ADVANCE(356);
      END_STATE();
    case 248:
      if (lookahead == 't') ADVANCE(357);
      END_STATE();
    case 249:
      if (lookahead == 'o') ADVANCE(358);
      END_STATE();
    case 250:
      if (lookahead == 'r') ADVANCE(359);
      END_STATE();
    case 251:
      if (lookahead == 'b') ADVANCE(360);
      END_STATE();
    case 252:
      if (lookahead == 'e') ADVANCE(361);
      END_STATE();
    case 253:
      if (lookahead == 'e') ADVANCE(362);
      END_STATE();
    case 254:
      if (lookahead == 'd') ADVANCE(363);
      END_STATE();
    case 255:
      ACCEPT_TOKEN(anon_sym_from);
      END_STATE();
    case 256:
      if (lookahead == 't') ADVANCE(364);
      END_STATE();
    case 257:
      if (lookahead == 'i') ADVANCE(365);
      END_STATE();
    case 258:
      if (lookahead == 'r') ADVANCE(366);
      END_STATE();
    case 259:
      ACCEPT_TOKEN(anon_sym_gwei);
      END_STATE();
    case 260:
      if (lookahead == 's') ADVANCE(367);
      END_STATE();
    case 261:
      if (lookahead == 't') ADVANCE(368);
      END_STATE();
    case 262:
      if (lookahead == 'r') ADVANCE(369);
      END_STATE();
    case 263:
      if (lookahead == 'x') ADVANCE(370);
      END_STATE();
    case 264:
      if (lookahead == '0') ADVANCE(371);
      if (lookahead == '1') ADVANCE(372);
      if (lookahead == '2') ADVANCE(373);
      if (lookahead == '3') ADVANCE(374);
      if (lookahead == '4') ADVANCE(375);
      if (lookahead == '5') ADVANCE(376);
      if (lookahead == '6') ADVANCE(377);
      if (lookahead == '7') ADVANCE(378);
      if (lookahead == '8') ADVANCE(379);
      if (lookahead == '9') ADVANCE(380);
      END_STATE();
    case 265:
      if (lookahead == '0') ADVANCE(381);
      if (lookahead == '1') ADVANCE(382);
      if (lookahead == '2') ADVANCE(383);
      if (lookahead == '3') ADVANCE(384);
      if (lookahead == '4') ADVANCE(385);
      if (lookahead == '5') ADVANCE(386);
      END_STATE();
    case 266:
      if (lookahead == '2') ADVANCE(387);
      END_STATE();
    case 267:
      if (lookahead == '0') ADVANCE(388);
      if (lookahead == '8') ADVANCE(389);
      END_STATE();
    case 268:
      if (lookahead == '6') ADVANCE(390);
      END_STATE();
    case 269:
      if (lookahead == '4') ADVANCE(391);
      END_STATE();
    case 270:
      if (lookahead == '2') ADVANCE(392);
      END_STATE();
    case 271:
      ACCEPT_TOKEN(anon_sym_int8);
      if (lookahead == '0') ADVANCE(393);
      if (lookahead == '8') ADVANCE(394);
      END_STATE();
    case 272:
      if (lookahead == '6') ADVANCE(395);
      END_STATE();
    case 273:
      if (lookahead == 'r') ADVANCE(396);
      END_STATE();
    case 274:
      if (lookahead == 'l') ADVANCE(397);
      END_STATE();
    case 275:
      if (lookahead == 'r') ADVANCE(398);
      END_STATE();
    case 276:
      if (lookahead == 'a') ADVANCE(399);
      END_STATE();
    case 277:
      if (lookahead == 'e') ADVANCE(400);
      END_STATE();
    case 278:
      if (lookahead == 'a') ADVANCE(401);
      END_STATE();
    case 279:
      ACCEPT_TOKEN(anon_sym_log0);
      END_STATE();
    case 280:
      ACCEPT_TOKEN(anon_sym_log1);
      END_STATE();
    case 281:
      ACCEPT_TOKEN(anon_sym_log2);
      END_STATE();
    case 282:
      ACCEPT_TOKEN(anon_sym_log3);
      END_STATE();
    case 283:
      ACCEPT_TOKEN(anon_sym_log4);
      END_STATE();
    case 284:
      if (lookahead == 'i') ADVANCE(402);
      END_STATE();
    case 285:
      if (lookahead == 'r') ADVANCE(403);
      END_STATE();
    case 286:
      if (lookahead == 't') ADVANCE(404);
      END_STATE();
    case 287:
      if (lookahead == 'd') ADVANCE(405);
      END_STATE();
    case 288:
      if (lookahead == 'f') ADVANCE(406);
      END_STATE();
    case 289:
      if (lookahead == 'e') ADVANCE(407);
      END_STATE();
    case 290:
      if (lookahead == 'r') ADVANCE(408);
      END_STATE();
    case 291:
      if (lookahead == 'o') ADVANCE(409);
      END_STATE();
    case 292:
      if (lookahead == 'e') ADVANCE(410);
      END_STATE();
    case 293:
      if (lookahead == 'i') ADVANCE(411);
      END_STATE();
    case 294:
      if (lookahead == 'r') ADVANCE(412);
      END_STATE();
    case 295:
      if (lookahead == 'b') ADVANCE(413);
      END_STATE();
    case 296:
      if (lookahead == 'm') ADVANCE(414);
      END_STATE();
    case 297:
      if (lookahead == 'a') ADVANCE(415);
      END_STATE();
    case 298:
      if (lookahead == 'i') ADVANCE(416);
      END_STATE();
    case 299:
      ACCEPT_TOKEN(anon_sym_pure);
      END_STATE();
    case 300:
      if (lookahead == 'i') ADVANCE(417);
      END_STATE();
    case 301:
      if (lookahead == 'r') ADVANCE(418);
      END_STATE();
    case 302:
      if (lookahead == 'r') ADVANCE(419);
      END_STATE();
    case 303:
      ACCEPT_TOKEN(anon_sym_sdiv);
      END_STATE();
    case 304:
      if (lookahead == 'n') ADVANCE(420);
      END_STATE();
    case 305:
      if (lookahead == 'b') ADVANCE(421);
      if (lookahead == 'd') ADVANCE(422);
      END_STATE();
    case 306:
      if (lookahead == 'e') ADVANCE(423);
      END_STATE();
    case 307:
      if (lookahead == 'd') ADVANCE(424);
      END_STATE();
    case 308:
      ACCEPT_TOKEN(anon_sym_smod);
      END_STATE();
    case 309:
      if (lookahead == 'd') ADVANCE(425);
      END_STATE();
    case 310:
      if (lookahead == 'r') ADVANCE(426);
      END_STATE();
    case 311:
      if (lookahead == 'i') ADVANCE(427);
      END_STATE();
    case 312:
      ACCEPT_TOKEN(anon_sym_stop);
      END_STATE();
    case 313:
      if (lookahead == 'a') ADVANCE(428);
      END_STATE();
    case 314:
      if (lookahead == 'n') ADVANCE(429);
      END_STATE();
    case 315:
      if (lookahead == 'c') ADVANCE(430);
      END_STATE();
    case 316:
      if (lookahead == 'c') ADVANCE(431);
      END_STATE();
    case 317:
      if (lookahead == 'o') ADVANCE(432);
      END_STATE();
    case 318:
      if (lookahead == 's') ADVANCE(433);
      END_STATE();
    case 319:
      ACCEPT_TOKEN(anon_sym_true);
      END_STATE();
    case 320:
      ACCEPT_TOKEN(anon_sym_type);
      END_STATE();
    case 321:
      if (lookahead == 'e') ADVANCE(434);
      END_STATE();
    case 322:
      ACCEPT_TOKEN(anon_sym_uint);
      if (lookahead == '1') ADVANCE(435);
      if (lookahead == '2') ADVANCE(436);
      if (lookahead == '3') ADVANCE(437);
      if (lookahead == '4') ADVANCE(438);
      if (lookahead == '5') ADVANCE(439);
      if (lookahead == '6') ADVANCE(440);
      if (lookahead == '7') ADVANCE(441);
      if (lookahead == '8') ADVANCE(442);
      if (lookahead == '9') ADVANCE(443);
      END_STATE();
    case 323:
      if (lookahead == 'e') ADVANCE(444);
      END_STATE();
    case 324:
      if (lookahead == 'o') ADVANCE(445);
      END_STATE();
    case 325:
      if (lookahead == 'g') ADVANCE(446);
      END_STATE();
    case 326:
      ACCEPT_TOKEN(anon_sym_view);
      END_STATE();
    case 327:
      if (lookahead == 'u') ADVANCE(447);
      END_STATE();
    case 328:
      if (lookahead == 's') ADVANCE(448);
      END_STATE();
    case 329:
      if (lookahead == 'e') ADVANCE(449);
      END_STATE();
    case 330:
      if (lookahead == 's') ADVANCE(450);
      END_STATE();
    case 331:
      if (lookahead == 'a') ADVANCE(451);
      END_STATE();
    case 332:
      if (lookahead == 'd') ADVANCE(452);
      END_STATE();
    case 333:
      if (lookahead == 's') ADVANCE(453);
      END_STATE();
    case 334:
      if (lookahead == 'm') ADVANCE(454);
      END_STATE();
    case 335:
      if (lookahead == 'b') ADVANCE(455);
      END_STATE();
    case 336:
      if (lookahead == 'c') ADVANCE(456);
      END_STATE();
    case 337:
      if (lookahead == 'h') ADVANCE(457);
      END_STATE();
    case 338:
      ACCEPT_TOKEN(anon_sym_break);
      END_STATE();
    case 339:
      ACCEPT_TOKEN(anon_sym_bytes);
      if (lookahead == '1') ADVANCE(458);
      if (lookahead == '2') ADVANCE(459);
      if (lookahead == '3') ADVANCE(460);
      if (lookahead == '4') ADVANCE(461);
      if (lookahead == '5') ADVANCE(462);
      if (lookahead == '6') ADVANCE(463);
      if (lookahead == '7') ADVANCE(464);
      if (lookahead == '8') ADVANCE(465);
      if (lookahead == '9') ADVANCE(466);
      END_STATE();
    case 340:
      if (lookahead == 'o') ADVANCE(467);
      END_STATE();
    case 341:
      if (lookahead == 'a') ADVANCE(468);
      END_STATE();
    case 342:
      if (lookahead == 'r') ADVANCE(469);
      END_STATE();
    case 343:
      if (lookahead == 'a') ADVANCE(470);
      END_STATE();
    case 344:
      ACCEPT_TOKEN(anon_sym_catch);
      END_STATE();
    case 345:
      if (lookahead == 'i') ADVANCE(471);
      END_STATE();
    case 346:
      if (lookahead == 'a') ADVANCE(472);
      END_STATE();
    case 347:
      if (lookahead == 'a') ADVANCE(473);
      if (lookahead == 'r') ADVANCE(474);
      END_STATE();
    case 348:
      if (lookahead == 'n') ADVANCE(475);
      END_STATE();
    case 349:
      if (lookahead == 'a') ADVANCE(476);
      END_STATE();
    case 350:
      if (lookahead == 'e') ADVANCE(477);
      END_STATE();
    case 351:
      if (lookahead == 'l') ADVANCE(478);
      END_STATE();
    case 352:
      if (lookahead == 'a') ADVANCE(479);
      END_STATE();
    case 353:
      if (lookahead == 'e') ADVANCE(480);
      END_STATE();
    case 354:
      if (lookahead == 'c') ADVANCE(481);
      END_STATE();
    case 355:
      ACCEPT_TOKEN(anon_sym_error);
      END_STATE();
    case 356:
      ACCEPT_TOKEN(anon_sym_ether);
      END_STATE();
    case 357:
      ACCEPT_TOKEN(anon_sym_event);
      END_STATE();
    case 358:
      if (lookahead == 'd') ADVANCE(482);
      END_STATE();
    case 359:
      if (lookahead == 'n') ADVANCE(483);
      END_STATE();
    case 360:
      if (lookahead == 'a') ADVANCE(484);
      END_STATE();
    case 361:
      ACCEPT_TOKEN(anon_sym_false);
      END_STATE();
    case 362:
      if (lookahead == 'y') ADVANCE(485);
      END_STATE();
    case 363:
      ACCEPT_TOKEN(anon_sym_fixed);
      if (('0' <= lookahead && lookahead <= '9')) ADVANCE(486);
      END_STATE();
    case 364:
      if (lookahead == 'i') ADVANCE(487);
      END_STATE();
    case 365:
      if (lookahead == 'm') ADVANCE(488);
      END_STATE();
    case 366:
      if (lookahead == 'i') ADVANCE(489);
      END_STATE();
    case 367:
      ACCEPT_TOKEN(anon_sym_hours);
      END_STATE();
    case 368:
      if (lookahead == 'a') ADVANCE(490);
      END_STATE();
    case 369:
      if (lookahead == 't') ADVANCE(491);
      END_STATE();
    case 370:
      if (lookahead == 'e') ADVANCE(492);
      END_STATE();
    case 371:
      if (lookahead == '4') ADVANCE(493);
      END_STATE();
    case 372:
      if (lookahead == '2') ADVANCE(494);
      END_STATE();
    case 373:
      if (lookahead == '0') ADVANCE(495);
      if (lookahead == '8') ADVANCE(496);
      END_STATE();
    case 374:
      if (lookahead == '6') ADVANCE(497);
      END_STATE();
    case 375:
      if (lookahead == '4') ADVANCE(498);
      END_STATE();
    case 376:
      if (lookahead == '2') ADVANCE(499);
      END_STATE();
    case 377:
      ACCEPT_TOKEN(anon_sym_int16);
      if (lookahead == '0') ADVANCE(500);
      if (lookahead == '8') ADVANCE(501);
      END_STATE();
    case 378:
      if (lookahead == '6') ADVANCE(502);
      END_STATE();
    case 379:
      if (lookahead == '4') ADVANCE(503);
      END_STATE();
    case 380:
      if (lookahead == '2') ADVANCE(504);
      END_STATE();
    case 381:
      if (lookahead == '0') ADVANCE(505);
      if (lookahead == '8') ADVANCE(506);
      END_STATE();
    case 382:
      if (lookahead == '6') ADVANCE(507);
      END_STATE();
    case 383:
      if (lookahead == '4') ADVANCE(508);
      END_STATE();
    case 384:
      if (lookahead == '2') ADVANCE(509);
      END_STATE();
    case 385:
      ACCEPT_TOKEN(anon_sym_int24);
      if (lookahead == '0') ADVANCE(510);
      if (lookahead == '8') ADVANCE(511);
      END_STATE();
    case 386:
      if (lookahead == '6') ADVANCE(512);
      END_STATE();
    case 387:
      ACCEPT_TOKEN(anon_sym_int32);
      END_STATE();
    case 388:
      ACCEPT_TOKEN(anon_sym_int40);
      END_STATE();
    case 389:
      ACCEPT_TOKEN(anon_sym_int48);
      END_STATE();
    case 390:
      ACCEPT_TOKEN(anon_sym_int56);
      END_STATE();
    case 391:
      ACCEPT_TOKEN(anon_sym_int64);
      END_STATE();
    case 392:
      ACCEPT_TOKEN(anon_sym_int72);
      END_STATE();
    case 393:
      ACCEPT_TOKEN(anon_sym_int80);
      END_STATE();
    case 394:
      ACCEPT_TOKEN(anon_sym_int88);
      END_STATE();
    case 395:
      ACCEPT_TOKEN(anon_sym_int96);
      END_STATE();
    case 396:
      if (lookahead == 'f') ADVANCE(513);
      if (lookahead == 'n') ADVANCE(514);
      END_STATE();
    case 397:
      if (lookahead == 'i') ADVANCE(515);
      END_STATE();
    case 398:
      if (lookahead == 'o') ADVANCE(516);
      END_STATE();
    case 399:
      if (lookahead == 'k') ADVANCE(517);
      END_STATE();
    case 400:
      ACCEPT_TOKEN(sym_yul_leave);
      END_STATE();
    case 401:
      if (lookahead == 'r') ADVANCE(518);
      END_STATE();
    case 402:
      if (lookahead == 'n') ADVANCE(519);
      END_STATE();
    case 403:
      if (lookahead == 'y') ADVANCE(520);
      END_STATE();
    case 404:
      if (lookahead == 'e') ADVANCE(521);
      END_STATE();
    case 405:
      ACCEPT_TOKEN(anon_sym_mload);
      END_STATE();
    case 406:
      if (lookahead == 'i') ADVANCE(522);
      END_STATE();
    case 407:
      ACCEPT_TOKEN(anon_sym_msize);
      END_STATE();
    case 408:
      if (lookahead == 'e') ADVANCE(523);
      END_STATE();
    case 409:
      if (lookahead == 'd') ADVANCE(524);
      END_STATE();
    case 410:
      if (lookahead == 'r') ADVANCE(525);
      END_STATE();
    case 411:
      if (lookahead == 'n') ADVANCE(526);
      END_STATE();
    case 412:
      if (lookahead == 'i') ADVANCE(527);
      END_STATE();
    case 413:
      if (lookahead == 'l') ADVANCE(528);
      END_STATE();
    case 414:
      if (lookahead == 'a') ADVANCE(529);
      END_STATE();
    case 415:
      if (lookahead == 't') ADVANCE(530);
      END_STATE();
    case 416:
      if (lookahead == 'c') ADVANCE(531);
      END_STATE();
    case 417:
      if (lookahead == 'v') ADVANCE(532);
      END_STATE();
    case 418:
      if (lookahead == 'n') ADVANCE(533);
      END_STATE();
    case 419:
      if (lookahead == 't') ADVANCE(534);
      END_STATE();
    case 420:
      if (lookahead == 'd') ADVANCE(535);
      END_STATE();
    case 421:
      if (lookahead == 'a') ADVANCE(536);
      END_STATE();
    case 422:
      if (lookahead == 'e') ADVANCE(537);
      END_STATE();
    case 423:
      if (lookahead == 'x') ADVANCE(538);
      END_STATE();
    case 424:
      ACCEPT_TOKEN(anon_sym_sload);
      END_STATE();
    case 425:
      if (lookahead == 'i') ADVANCE(539);
      END_STATE();
    case 426:
      if (lookahead == 'e') ADVANCE(540);
      END_STATE();
    case 427:
      if (lookahead == 'c') ADVANCE(541);
      END_STATE();
    case 428:
      if (lookahead == 'g') ADVANCE(542);
      END_STATE();
    case 429:
      if (lookahead == 'g') ADVANCE(543);
      END_STATE();
    case 430:
      if (lookahead == 't') ADVANCE(544);
      END_STATE();
    case 431:
      if (lookahead == 'h') ADVANCE(545);
      END_STATE();
    case 432:
      ACCEPT_TOKEN(anon_sym_szabo);
      END_STATE();
    case 433:
      if (lookahead == 't') ADVANCE(546);
      END_STATE();
    case 434:
      if (lookahead == 'd') ADVANCE(547);
      END_STATE();
    case 435:
      if (lookahead == '0') ADVANCE(548);
      if (lookahead == '1') ADVANCE(549);
      if (lookahead == '2') ADVANCE(550);
      if (lookahead == '3') ADVANCE(551);
      if (lookahead == '4') ADVANCE(552);
      if (lookahead == '5') ADVANCE(553);
      if (lookahead == '6') ADVANCE(554);
      if (lookahead == '7') ADVANCE(555);
      if (lookahead == '8') ADVANCE(556);
      if (lookahead == '9') ADVANCE(557);
      END_STATE();
    case 436:
      if (lookahead == '0') ADVANCE(558);
      if (lookahead == '1') ADVANCE(559);
      if (lookahead == '2') ADVANCE(560);
      if (lookahead == '3') ADVANCE(561);
      if (lookahead == '4') ADVANCE(562);
      if (lookahead == '5') ADVANCE(563);
      END_STATE();
    case 437:
      if (lookahead == '2') ADVANCE(564);
      END_STATE();
    case 438:
      if (lookahead == '0') ADVANCE(565);
      if (lookahead == '8') ADVANCE(566);
      END_STATE();
    case 439:
      if (lookahead == '6') ADVANCE(567);
      END_STATE();
    case 440:
      if (lookahead == '4') ADVANCE(568);
      END_STATE();
    case 441:
      if (lookahead == '2') ADVANCE(569);
      END_STATE();
    case 442:
      ACCEPT_TOKEN(anon_sym_uint8);
      if (lookahead == '0') ADVANCE(570);
      if (lookahead == '8') ADVANCE(571);
      END_STATE();
    case 443:
      if (lookahead == '6') ADVANCE(572);
      END_STATE();
    case 444:
      if (lookahead == 'c') ADVANCE(573);
      END_STATE();
    case 445:
      if (lookahead == 'd') ADVANCE(574);
      END_STATE();
    case 446:
      ACCEPT_TOKEN(anon_sym_using);
      END_STATE();
    case 447:
      if (lookahead == 'a') ADVANCE(575);
      END_STATE();
    case 448:
      ACCEPT_TOKEN(anon_sym_weeks);
      END_STATE();
    case 449:
      ACCEPT_TOKEN(anon_sym_while);
      END_STATE();
    case 450:
      ACCEPT_TOKEN(anon_sym_years);
      END_STATE();
    case 451:
      if (lookahead == 'c') ADVANCE(576);
      END_STATE();
    case 452:
      ACCEPT_TOKEN(anon_sym_addmod);
      END_STATE();
    case 453:
      if (lookahead == 's') ADVANCE(577);
      END_STATE();
    case 454:
      if (lookahead == 'o') ADVANCE(578);
      END_STATE();
    case 455:
      if (lookahead == 'l') ADVANCE(579);
      END_STATE();
    case 456:
      if (lookahead == 'e') ADVANCE(580);
      END_STATE();
    case 457:
      if (lookahead == 'a') ADVANCE(581);
      END_STATE();
    case 458:
      ACCEPT_TOKEN(anon_sym_bytes1);
      if (lookahead == '0') ADVANCE(582);
      if (lookahead == '1') ADVANCE(583);
      if (lookahead == '2') ADVANCE(584);
      if (lookahead == '3') ADVANCE(585);
      if (lookahead == '4') ADVANCE(586);
      if (lookahead == '5') ADVANCE(587);
      if (lookahead == '6') ADVANCE(588);
      if (lookahead == '7') ADVANCE(589);
      if (lookahead == '8') ADVANCE(590);
      if (lookahead == '9') ADVANCE(591);
      END_STATE();
    case 459:
      ACCEPT_TOKEN(anon_sym_bytes2);
      if (lookahead == '0') ADVANCE(592);
      if (lookahead == '1') ADVANCE(593);
      if (lookahead == '2') ADVANCE(594);
      if (lookahead == '3') ADVANCE(595);
      if (lookahead == '4') ADVANCE(596);
      if (lookahead == '5') ADVANCE(597);
      if (lookahead == '6') ADVANCE(598);
      if (lookahead == '7') ADVANCE(599);
      if (lookahead == '8') ADVANCE(600);
      if (lookahead == '9') ADVANCE(601);
      END_STATE();
    case 460:
      ACCEPT_TOKEN(anon_sym_bytes3);
      if (lookahead == '0') ADVANCE(602);
      if (lookahead == '1') ADVANCE(603);
      if (lookahead == '2') ADVANCE(604);
      END_STATE();
    case 461:
      ACCEPT_TOKEN(anon_sym_bytes4);
      END_STATE();
    case 462:
      ACCEPT_TOKEN(anon_sym_bytes5);
      END_STATE();
    case 463:
      ACCEPT_TOKEN(anon_sym_bytes6);
      END_STATE();
    case 464:
      ACCEPT_TOKEN(anon_sym_bytes7);
      END_STATE();
    case 465:
      ACCEPT_TOKEN(anon_sym_bytes8);
      END_STATE();
    case 466:
      ACCEPT_TOKEN(anon_sym_bytes9);
      END_STATE();
    case 467:
      if (lookahead == 'd') ADVANCE(605);
      END_STATE();
    case 468:
      if (lookahead == 't') ADVANCE(606);
      END_STATE();
    case 469:
      ACCEPT_TOKEN(anon_sym_caller);
      END_STATE();
    case 470:
      if (lookahead == 'l') ADVANCE(607);
      END_STATE();
    case 471:
      if (lookahead == 'd') ADVANCE(608);
      END_STATE();
    case 472:
      if (lookahead == 's') ADVANCE(609);
      END_STATE();
    case 473:
      if (lookahead == 'n') ADVANCE(610);
      END_STATE();
    case 474:
      if (lookahead == 'u') ADVANCE(611);
      END_STATE();
    case 475:
      if (lookahead == 'u') ADVANCE(612);
      END_STATE();
    case 476:
      if (lookahead == 'c') ADVANCE(613);
      END_STATE();
    case 477:
      ACCEPT_TOKEN(anon_sym_create);
      if (lookahead == '2') ADVANCE(614);
      END_STATE();
    case 478:
      if (lookahead == 't') ADVANCE(615);
      END_STATE();
    case 479:
      if (lookahead == 't') ADVANCE(616);
      END_STATE();
    case 480:
      ACCEPT_TOKEN(anon_sym_delete);
      END_STATE();
    case 481:
      if (lookahead == 'u') ADVANCE(617);
      END_STATE();
    case 482:
      if (lookahead == 'e') ADVANCE(618);
      END_STATE();
    case 483:
      if (lookahead == 'a') ADVANCE(619);
      END_STATE();
    case 484:
      if (lookahead == 'c') ADVANCE(620);
      END_STATE();
    case 485:
      ACCEPT_TOKEN(anon_sym_finney);
      END_STATE();
    case 486:
      if (lookahead == 'x') ADVANCE(621);
      if (('0' <= lookahead && lookahead <= '9')) ADVANCE(486);
      END_STATE();
    case 487:
      if (lookahead == 'o') ADVANCE(622);
      END_STATE();
    case 488:
      if (lookahead == 'i') ADVANCE(623);
      END_STATE();
    case 489:
      if (lookahead == 'c') ADVANCE(624);
      END_STATE();
    case 490:
      if (lookahead == 'b') ADVANCE(625);
      END_STATE();
    case 491:
      ACCEPT_TOKEN(anon_sym_import);
      END_STATE();
    case 492:
      if (lookahead == 'd') ADVANCE(626);
      END_STATE();
    case 493:
      ACCEPT_TOKEN(anon_sym_int104);
      END_STATE();
    case 494:
      ACCEPT_TOKEN(anon_sym_int112);
      END_STATE();
    case 495:
      ACCEPT_TOKEN(anon_sym_int120);
      END_STATE();
    case 496:
      ACCEPT_TOKEN(anon_sym_int128);
      END_STATE();
    case 497:
      ACCEPT_TOKEN(anon_sym_int136);
      END_STATE();
    case 498:
      ACCEPT_TOKEN(anon_sym_int144);
      END_STATE();
    case 499:
      ACCEPT_TOKEN(anon_sym_int152);
      END_STATE();
    case 500:
      ACCEPT_TOKEN(anon_sym_int160);
      END_STATE();
    case 501:
      ACCEPT_TOKEN(anon_sym_int168);
      END_STATE();
    case 502:
      ACCEPT_TOKEN(anon_sym_int176);
      END_STATE();
    case 503:
      ACCEPT_TOKEN(anon_sym_int184);
      END_STATE();
    case 504:
      ACCEPT_TOKEN(anon_sym_int192);
      END_STATE();
    case 505:
      ACCEPT_TOKEN(anon_sym_int200);
      END_STATE();
    case 506:
      ACCEPT_TOKEN(anon_sym_int208);
      END_STATE();
    case 507:
      ACCEPT_TOKEN(anon_sym_int216);
      END_STATE();
    case 508:
      ACCEPT_TOKEN(anon_sym_int224);
      END_STATE();
    case 509:
      ACCEPT_TOKEN(anon_sym_int232);
      END_STATE();
    case 510:
      ACCEPT_TOKEN(anon_sym_int240);
      END_STATE();
    case 511:
      ACCEPT_TOKEN(anon_sym_int248);
      END_STATE();
    case 512:
      ACCEPT_TOKEN(anon_sym_int256);
      END_STATE();
    case 513:
      if (lookahead == 'a') ADVANCE(627);
      END_STATE();
    case 514:
      if (lookahead == 'a') ADVANCE(628);
      END_STATE();
    case 515:
      if (lookahead == 'd') ADVANCE(629);
      END_STATE();
    case 516:
      ACCEPT_TOKEN(anon_sym_iszero);
      END_STATE();
    case 517:
      if (lookahead == '2') ADVANCE(630);
      END_STATE();
    case 518:
      if (lookahead == 'y') ADVANCE(631);
      END_STATE();
    case 519:
      if (lookahead == 'g') ADVANCE(632);
      END_STATE();
    case 520:
      ACCEPT_TOKEN(anon_sym_memory);
      END_STATE();
    case 521:
      if (lookahead == 's') ADVANCE(633);
      END_STATE();
    case 522:
      if (lookahead == 'e') ADVANCE(634);
      END_STATE();
    case 523:
      ACCEPT_TOKEN(anon_sym_mstore);
      if (lookahead == '8') ADVANCE(635);
      END_STATE();
    case 524:
      ACCEPT_TOKEN(anon_sym_mulmod);
      END_STATE();
    case 525:
      ACCEPT_TOKEN(anon_sym_number);
      END_STATE();
    case 526:
      ACCEPT_TOKEN(anon_sym_origin);
      END_STATE();
    case 527:
      if (lookahead == 'd') ADVANCE(636);
      END_STATE();
    case 528:
      if (lookahead == 'e') ADVANCE(637);
      END_STATE();
    case 529:
      ACCEPT_TOKEN(anon_sym_pragma);
      END_STATE();
    case 530:
      if (lookahead == 'e') ADVANCE(638);
      END_STATE();
    case 531:
      ACCEPT_TOKEN(anon_sym_public);
      END_STATE();
    case 532:
      if (lookahead == 'e') ADVANCE(639);
      END_STATE();
    case 533:
      ACCEPT_TOKEN(anon_sym_return);
      if (lookahead == 'd') ADVANCE(640);
      if (lookahead == 's') ADVANCE(641);
      END_STATE();
    case 534:
      ACCEPT_TOKEN(anon_sym_revert);
      END_STATE();
    case 535:
      if (lookahead == 's') ADVANCE(642);
      END_STATE();
    case 536:
      if (lookahead == 'l') ADVANCE(643);
      END_STATE();
    case 537:
      if (lookahead == 's') ADVANCE(644);
      END_STATE();
    case 538:
      if (lookahead == 't') ADVANCE(645);
      END_STATE();
    case 539:
      if (lookahead == 't') ADVANCE(646);
      END_STATE();
    case 540:
      ACCEPT_TOKEN(anon_sym_sstore);
      END_STATE();
    case 541:
      if (lookahead == 'c') ADVANCE(647);
      END_STATE();
    case 542:
      if (lookahead == 'e') ADVANCE(648);
      END_STATE();
    case 543:
      ACCEPT_TOKEN(anon_sym_string);
      END_STATE();
    case 544:
      ACCEPT_TOKEN(anon_sym_struct);
      END_STATE();
    case 545:
      ACCEPT_TOKEN(anon_sym_switch);
      END_STATE();
    case 546:
      if (lookahead == 'a') ADVANCE(649);
      END_STATE();
    case 547:
      ACCEPT_TOKEN(anon_sym_ufixed);
      if (('0' <= lookahead && lookahead <= '9')) ADVANCE(650);
      END_STATE();
    case 548:
      if (lookahead == '4') ADVANCE(651);
      END_STATE();
    case 549:
      if (lookahead == '2') ADVANCE(652);
      END_STATE();
    case 550:
      if (lookahead == '0') ADVANCE(653);
      if (lookahead == '8') ADVANCE(654);
      END_STATE();
    case 551:
      if (lookahead == '6') ADVANCE(655);
      END_STATE();
    case 552:
      if (lookahead == '4') ADVANCE(656);
      END_STATE();
    case 553:
      if (lookahead == '2') ADVANCE(657);
      END_STATE();
    case 554:
      ACCEPT_TOKEN(anon_sym_uint16);
      if (lookahead == '0') ADVANCE(658);
      if (lookahead == '8') ADVANCE(659);
      END_STATE();
    case 555:
      if (lookahead == '6') ADVANCE(660);
      END_STATE();
    case 556:
      if (lookahead == '4') ADVANCE(661);
      END_STATE();
    case 557:
      if (lookahead == '2') ADVANCE(662);
      END_STATE();
    case 558:
      if (lookahead == '0') ADVANCE(663);
      if (lookahead == '8') ADVANCE(664);
      END_STATE();
    case 559:
      if (lookahead == '6') ADVANCE(665);
      END_STATE();
    case 560:
      if (lookahead == '4') ADVANCE(666);
      END_STATE();
    case 561:
      if (lookahead == '2') ADVANCE(667);
      END_STATE();
    case 562:
      ACCEPT_TOKEN(anon_sym_uint24);
      if (lookahead == '0') ADVANCE(668);
      if (lookahead == '8') ADVANCE(669);
      END_STATE();
    case 563:
      if (lookahead == '6') ADVANCE(670);
      END_STATE();
    case 564:
      ACCEPT_TOKEN(anon_sym_uint32);
      END_STATE();
    case 565:
      ACCEPT_TOKEN(anon_sym_uint40);
      END_STATE();
    case 566:
      ACCEPT_TOKEN(anon_sym_uint48);
      END_STATE();
    case 567:
      ACCEPT_TOKEN(anon_sym_uint56);
      END_STATE();
    case 568:
      ACCEPT_TOKEN(anon_sym_uint64);
      END_STATE();
    case 569:
      ACCEPT_TOKEN(anon_sym_uint72);
      END_STATE();
    case 570:
      ACCEPT_TOKEN(anon_sym_uint80);
      END_STATE();
    case 571:
      ACCEPT_TOKEN(anon_sym_uint88);
      END_STATE();
    case 572:
      ACCEPT_TOKEN(anon_sym_uint96);
      END_STATE();
    case 573:
      if (lookahead == 'k') ADVANCE(671);
      END_STATE();
    case 574:
      if (lookahead == 'e') ADVANCE(672);
      END_STATE();
    case 575:
      if (lookahead == 'l') ADVANCE(673);
      END_STATE();
    case 576:
      if (lookahead == 't') ADVANCE(674);
      END_STATE();
    case 577:
      ACCEPT_TOKEN(anon_sym_address);
      END_STATE();
    case 578:
      if (lookahead == 'u') ADVANCE(675);
      END_STATE();
    case 579:
      if (lookahead == 'y') ADVANCE(676);
      END_STATE();
    case 580:
      ACCEPT_TOKEN(anon_sym_balance);
      END_STATE();
    case 581:
      if (lookahead == 's') ADVANCE(677);
      END_STATE();
    case 582:
      ACCEPT_TOKEN(anon_sym_bytes10);
      END_STATE();
    case 583:
      ACCEPT_TOKEN(anon_sym_bytes11);
      END_STATE();
    case 584:
      ACCEPT_TOKEN(anon_sym_bytes12);
      END_STATE();
    case 585:
      ACCEPT_TOKEN(anon_sym_bytes13);
      END_STATE();
    case 586:
      ACCEPT_TOKEN(anon_sym_bytes14);
      END_STATE();
    case 587:
      ACCEPT_TOKEN(anon_sym_bytes15);
      END_STATE();
    case 588:
      ACCEPT_TOKEN(anon_sym_bytes16);
      END_STATE();
    case 589:
      ACCEPT_TOKEN(anon_sym_bytes17);
      END_STATE();
    case 590:
      ACCEPT_TOKEN(anon_sym_bytes18);
      END_STATE();
    case 591:
      ACCEPT_TOKEN(anon_sym_bytes19);
      END_STATE();
    case 592:
      ACCEPT_TOKEN(anon_sym_bytes20);
      END_STATE();
    case 593:
      ACCEPT_TOKEN(anon_sym_bytes21);
      END_STATE();
    case 594:
      ACCEPT_TOKEN(anon_sym_bytes22);
      END_STATE();
    case 595:
      ACCEPT_TOKEN(anon_sym_bytes23);
      END_STATE();
    case 596:
      ACCEPT_TOKEN(anon_sym_bytes24);
      END_STATE();
    case 597:
      ACCEPT_TOKEN(anon_sym_bytes25);
      END_STATE();
    case 598:
      ACCEPT_TOKEN(anon_sym_bytes26);
      END_STATE();
    case 599:
      ACCEPT_TOKEN(anon_sym_bytes27);
      END_STATE();
    case 600:
      ACCEPT_TOKEN(anon_sym_bytes28);
      END_STATE();
    case 601:
      ACCEPT_TOKEN(anon_sym_bytes29);
      END_STATE();
    case 602:
      ACCEPT_TOKEN(anon_sym_bytes30);
      END_STATE();
    case 603:
      ACCEPT_TOKEN(anon_sym_bytes31);
      END_STATE();
    case 604:
      ACCEPT_TOKEN(anon_sym_bytes32);
      END_STATE();
    case 605:
      if (lookahead == 'e') ADVANCE(678);
      END_STATE();
    case 606:
      if (lookahead == 'a') ADVANCE(679);
      END_STATE();
    case 607:
      if (lookahead == 'u') ADVANCE(680);
      END_STATE();
    case 608:
      ACCEPT_TOKEN(anon_sym_chainid);
      END_STATE();
    case 609:
      if (lookahead == 'e') ADVANCE(681);
      END_STATE();
    case 610:
      if (lookahead == 't') ADVANCE(682);
      END_STATE();
    case 611:
      if (lookahead == 'c') ADVANCE(683);
      END_STATE();
    case 612:
      if (lookahead == 'e') ADVANCE(684);
      END_STATE();
    case 613:
      if (lookahead == 't') ADVANCE(685);
      END_STATE();
    case 614:
      ACCEPT_TOKEN(anon_sym_create2);
      END_STATE();
    case 615:
      ACCEPT_TOKEN(anon_sym_default);
      END_STATE();
    case 616:
      if (lookahead == 'e') ADVANCE(686);
      END_STATE();
    case 617:
      if (lookahead == 'l') ADVANCE(687);
      END_STATE();
    case 618:
      if (lookahead == 'c') ADVANCE(688);
      if (lookahead == 'h') ADVANCE(689);
      if (lookahead == 's') ADVANCE(690);
      END_STATE();
    case 619:
      if (lookahead == 'l') ADVANCE(691);
      END_STATE();
    case 620:
      if (lookahead == 'k') ADVANCE(692);
      END_STATE();
    case 621:
      if (('0' <= lookahead && lookahead <= '9')) ADVANCE(693);
      END_STATE();
    case 622:
      if (lookahead == 'n') ADVANCE(694);
      END_STATE();
    case 623:
      if (lookahead == 't') ADVANCE(695);
      END_STATE();
    case 624:
      if (lookahead == 'e') ADVANCE(696);
      END_STATE();
    case 625:
      if (lookahead == 'l') ADVANCE(697);
      END_STATE();
    case 626:
      ACCEPT_TOKEN(anon_sym_indexed);
      END_STATE();
    case 627:
      if (lookahead == 'c') ADVANCE(698);
      END_STATE();
    case 628:
      if (lookahead == 'l') ADVANCE(699);
      END_STATE();
    case 629:
      ACCEPT_TOKEN(anon_sym_invalid);
      END_STATE();
    case 630:
      if (lookahead == '5') ADVANCE(700);
      END_STATE();
    case 631:
      ACCEPT_TOKEN(anon_sym_library);
      END_STATE();
    case 632:
      ACCEPT_TOKEN(anon_sym_mapping);
      END_STATE();
    case 633:
      ACCEPT_TOKEN(anon_sym_minutes);
      END_STATE();
    case 634:
      if (lookahead == 'r') ADVANCE(701);
      END_STATE();
    case 635:
      ACCEPT_TOKEN(anon_sym_mstore8);
      END_STATE();
    case 636:
      if (lookahead == 'e') ADVANCE(702);
      END_STATE();
    case 637:
      ACCEPT_TOKEN(anon_sym_payable);
      END_STATE();
    case 638:
      ACCEPT_TOKEN(anon_sym_private);
      END_STATE();
    case 639:
      ACCEPT_TOKEN(anon_sym_receive);
      END_STATE();
    case 640:
      if (lookahead == 'a') ADVANCE(703);
      END_STATE();
    case 641:
      ACCEPT_TOKEN(anon_sym_returns);
      END_STATE();
    case 642:
      ACCEPT_TOKEN(anon_sym_seconds);
      END_STATE();
    case 643:
      if (lookahead == 'a') ADVANCE(704);
      END_STATE();
    case 644:
      if (lookahead == 't') ADVANCE(705);
      END_STATE();
    case 645:
      if (lookahead == 'e') ADVANCE(706);
      END_STATE();
    case 646:
      if (lookahead == 'y') ADVANCE(707);
      END_STATE();
    case 647:
      if (lookahead == 'a') ADVANCE(708);
      END_STATE();
    case 648:
      ACCEPT_TOKEN(anon_sym_storage);
      END_STATE();
    case 649:
      if (lookahead == 'm') ADVANCE(709);
      END_STATE();
    case 650:
      if (lookahead == 'x') ADVANCE(710);
      if (('0' <= lookahead && lookahead <= '9')) ADVANCE(650);
      END_STATE();
    case 651:
      ACCEPT_TOKEN(anon_sym_uint104);
      END_STATE();
    case 652:
      ACCEPT_TOKEN(anon_sym_uint112);
      END_STATE();
    case 653:
      ACCEPT_TOKEN(anon_sym_uint120);
      END_STATE();
    case 654:
      ACCEPT_TOKEN(anon_sym_uint128);
      END_STATE();
    case 655:
      ACCEPT_TOKEN(anon_sym_uint136);
      END_STATE();
    case 656:
      ACCEPT_TOKEN(anon_sym_uint144);
      END_STATE();
    case 657:
      ACCEPT_TOKEN(anon_sym_uint152);
      END_STATE();
    case 658:
      ACCEPT_TOKEN(anon_sym_uint160);
      END_STATE();
    case 659:
      ACCEPT_TOKEN(anon_sym_uint168);
      END_STATE();
    case 660:
      ACCEPT_TOKEN(anon_sym_uint176);
      END_STATE();
    case 661:
      ACCEPT_TOKEN(anon_sym_uint184);
      END_STATE();
    case 662:
      ACCEPT_TOKEN(anon_sym_uint192);
      END_STATE();
    case 663:
      ACCEPT_TOKEN(anon_sym_uint200);
      END_STATE();
    case 664:
      ACCEPT_TOKEN(anon_sym_uint208);
      END_STATE();
    case 665:
      ACCEPT_TOKEN(anon_sym_uint216);
      END_STATE();
    case 666:
      ACCEPT_TOKEN(anon_sym_uint224);
      END_STATE();
    case 667:
      ACCEPT_TOKEN(anon_sym_uint232);
      END_STATE();
    case 668:
      ACCEPT_TOKEN(anon_sym_uint240);
      END_STATE();
    case 669:
      ACCEPT_TOKEN(anon_sym_uint248);
      END_STATE();
    case 670:
      ACCEPT_TOKEN(anon_sym_uint256);
      END_STATE();
    case 671:
      if (lookahead == 'e') ADVANCE(711);
      END_STATE();
    case 672:
      ACCEPT_TOKEN(anon_sym_unicode);
      END_STATE();
    case 673:
      ACCEPT_TOKEN(sym_virtual);
      END_STATE();
    case 674:
      ACCEPT_TOKEN(anon_sym_abstract);
      END_STATE();
    case 675:
      if (lookahead == 's') ADVANCE(712);
      END_STATE();
    case 676:
      ACCEPT_TOKEN(anon_sym_assembly);
      END_STATE();
    case 677:
      if (lookahead == 'h') ADVANCE(713);
      END_STATE();
    case 678:
      ACCEPT_TOKEN(anon_sym_callcode);
      END_STATE();
    case 679:
      ACCEPT_TOKEN(anon_sym_calldata);
      if (lookahead == 'c') ADVANCE(714);
      if (lookahead == 'l') ADVANCE(715);
      if (lookahead == 's') ADVANCE(716);
      END_STATE();
    case 680:
      if (lookahead == 'e') ADVANCE(717);
      END_STATE();
    case 681:
      ACCEPT_TOKEN(anon_sym_coinbase);
      END_STATE();
    case 682:
      ACCEPT_TOKEN(anon_sym_constant);
      END_STATE();
    case 683:
      if (lookahead == 't') ADVANCE(718);
      END_STATE();
    case 684:
      ACCEPT_TOKEN(anon_sym_continue);
      END_STATE();
    case 685:
      ACCEPT_TOKEN(anon_sym_contract);
      END_STATE();
    case 686:
      if (lookahead == 'c') ADVANCE(719);
      END_STATE();
    case 687:
      if (lookahead == 't') ADVANCE(720);
      END_STATE();
    case 688:
      if (lookahead == 'o') ADVANCE(721);
      END_STATE();
    case 689:
      if (lookahead == 'a') ADVANCE(722);
      END_STATE();
    case 690:
      if (lookahead == 'i') ADVANCE(723);
      END_STATE();
    case 691:
      ACCEPT_TOKEN(anon_sym_external);
      END_STATE();
    case 692:
      ACCEPT_TOKEN(anon_sym_fallback);
      END_STATE();
    case 693:
      ACCEPT_TOKEN(aux_sym__fixed_token1);
      if (('0' <= lookahead && lookahead <= '9')) ADVANCE(693);
      END_STATE();
    case 694:
      ACCEPT_TOKEN(anon_sym_function);
      END_STATE();
    case 695:
      ACCEPT_TOKEN(anon_sym_gaslimit);
      END_STATE();
    case 696:
      ACCEPT_TOKEN(anon_sym_gasprice);
      END_STATE();
    case 697:
      if (lookahead == 'e') ADVANCE(724);
      END_STATE();
    case 698:
      if (lookahead == 'e') ADVANCE(725);
      END_STATE();
    case 699:
      ACCEPT_TOKEN(anon_sym_internal);
      END_STATE();
    case 700:
      if (lookahead == '6') ADVANCE(726);
      END_STATE();
    case 701:
      ACCEPT_TOKEN(anon_sym_modifier);
      END_STATE();
    case 702:
      ACCEPT_TOKEN(anon_sym_override);
      END_STATE();
    case 703:
      if (lookahead == 't') ADVANCE(727);
      END_STATE();
    case 704:
      if (lookahead == 'n') ADVANCE(728);
      END_STATE();
    case 705:
      if (lookahead == 'r') ADVANCE(729);
      END_STATE();
    case 706:
      if (lookahead == 'n') ADVANCE(730);
      END_STATE();
    case 707:
      ACCEPT_TOKEN(anon_sym_solidity);
      END_STATE();
    case 708:
      if (lookahead == 'l') ADVANCE(731);
      END_STATE();
    case 709:
      if (lookahead == 'p') ADVANCE(732);
      END_STATE();
    case 710:
      if (('0' <= lookahead && lookahead <= '9')) ADVANCE(733);
      END_STATE();
    case 711:
      if (lookahead == 'd') ADVANCE(734);
      END_STATE();
    case 712:
      ACCEPT_TOKEN(anon_sym_anonymous);
      END_STATE();
    case 713:
      ACCEPT_TOKEN(anon_sym_blockhash);
      END_STATE();
    case 714:
      if (lookahead == 'o') ADVANCE(735);
      END_STATE();
    case 715:
      if (lookahead == 'o') ADVANCE(736);
      END_STATE();
    case 716:
      if (lookahead == 'i') ADVANCE(737);
      END_STATE();
    case 717:
      ACCEPT_TOKEN(anon_sym_callvalue);
      END_STATE();
    case 718:
      if (lookahead == 'o') ADVANCE(738);
      END_STATE();
    case 719:
      if (lookahead == 'a') ADVANCE(739);
      END_STATE();
    case 720:
      if (lookahead == 'y') ADVANCE(740);
      END_STATE();
    case 721:
      if (lookahead == 'p') ADVANCE(741);
      END_STATE();
    case 722:
      if (lookahead == 's') ADVANCE(742);
      END_STATE();
    case 723:
      if (lookahead == 'z') ADVANCE(743);
      END_STATE();
    case 724:
      ACCEPT_TOKEN(sym_immutable);
      END_STATE();
    case 725:
      ACCEPT_TOKEN(anon_sym_interface);
      END_STATE();
    case 726:
      ACCEPT_TOKEN(anon_sym_keccak256);
      END_STATE();
    case 727:
      if (lookahead == 'a') ADVANCE(744);
      END_STATE();
    case 728:
      if (lookahead == 'c') ADVANCE(745);
      END_STATE();
    case 729:
      if (lookahead == 'u') ADVANCE(746);
      END_STATE();
    case 730:
      if (lookahead == 'd') ADVANCE(747);
      END_STATE();
    case 731:
      if (lookahead == 'l') ADVANCE(748);
      END_STATE();
    case 732:
      ACCEPT_TOKEN(anon_sym_timestamp);
      END_STATE();
    case 733:
      ACCEPT_TOKEN(aux_sym__ufixed_token1);
      if (('0' <= lookahead && lookahead <= '9')) ADVANCE(733);
      END_STATE();
    case 734:
      ACCEPT_TOKEN(sym__unchecked);
      END_STATE();
    case 735:
      if (lookahead == 'p') ADVANCE(749);
      END_STATE();
    case 736:
      if (lookahead == 'a') ADVANCE(750);
      END_STATE();
    case 737:
      if (lookahead == 'z') ADVANCE(751);
      END_STATE();
    case 738:
      if (lookahead == 'r') ADVANCE(752);
      END_STATE();
    case 739:
      if (lookahead == 'l') ADVANCE(753);
      END_STATE();
    case 740:
      ACCEPT_TOKEN(anon_sym_difficulty);
      END_STATE();
    case 741:
      if (lookahead == 'y') ADVANCE(754);
      END_STATE();
    case 742:
      if (lookahead == 'h') ADVANCE(755);
      END_STATE();
    case 743:
      if (lookahead == 'e') ADVANCE(756);
      END_STATE();
    case 744:
      if (lookahead == 'c') ADVANCE(757);
      if (lookahead == 's') ADVANCE(758);
      END_STATE();
    case 745:
      if (lookahead == 'e') ADVANCE(759);
      END_STATE();
    case 746:
      if (lookahead == 'c') ADVANCE(760);
      END_STATE();
    case 747:
      ACCEPT_TOKEN(anon_sym_signextend);
      END_STATE();
    case 748:
      ACCEPT_TOKEN(anon_sym_staticcall);
      END_STATE();
    case 749:
      if (lookahead == 'y') ADVANCE(761);
      END_STATE();
    case 750:
      if (lookahead == 'd') ADVANCE(762);
      END_STATE();
    case 751:
      if (lookahead == 'e') ADVANCE(763);
      END_STATE();
    case 752:
      ACCEPT_TOKEN(anon_sym_constructor);
      END_STATE();
    case 753:
      if (lookahead == 'l') ADVANCE(764);
      END_STATE();
    case 754:
      ACCEPT_TOKEN(anon_sym_extcodecopy);
      END_STATE();
    case 755:
      ACCEPT_TOKEN(anon_sym_extcodehash);
      END_STATE();
    case 756:
      ACCEPT_TOKEN(anon_sym_extcodesize);
      END_STATE();
    case 757:
      if (lookahead == 'o') ADVANCE(765);
      END_STATE();
    case 758:
      if (lookahead == 'i') ADVANCE(766);
      END_STATE();
    case 759:
      ACCEPT_TOKEN(anon_sym_selfbalance);
      END_STATE();
    case 760:
      if (lookahead == 't') ADVANCE(767);
      END_STATE();
    case 761:
      ACCEPT_TOKEN(anon_sym_calldatacopy);
      END_STATE();
    case 762:
      ACCEPT_TOKEN(anon_sym_calldataload);
      END_STATE();
    case 763:
      ACCEPT_TOKEN(anon_sym_calldatasize);
      END_STATE();
    case 764:
      ACCEPT_TOKEN(anon_sym_delegatecall);
      END_STATE();
    case 765:
      if (lookahead == 'p') ADVANCE(768);
      END_STATE();
    case 766:
      if (lookahead == 'z') ADVANCE(769);
      END_STATE();
    case 767:
      ACCEPT_TOKEN(anon_sym_selfdestruct);
      END_STATE();
    case 768:
      if (lookahead == 'y') ADVANCE(770);
      END_STATE();
    case 769:
      if (lookahead == 'e') ADVANCE(771);
      END_STATE();
    case 770:
      ACCEPT_TOKEN(anon_sym_returndatacopy);
      END_STATE();
    case 771:
      ACCEPT_TOKEN(anon_sym_returndatasize);
      END_STATE();
    default:
      return false;
  }
}

static const TSLexMode ts_lex_modes[STATE_COUNT] = {
  [0] = {.lex_state = 0},
  [1] = {.lex_state = 50},
  [2] = {.lex_state = 11},
  [3] = {.lex_state = 11},
  [4] = {.lex_state = 11},
  [5] = {.lex_state = 11},
  [6] = {.lex_state = 11},
  [7] = {.lex_state = 11},
  [8] = {.lex_state = 11},
  [9] = {.lex_state = 11},
  [10] = {.lex_state = 11},
  [11] = {.lex_state = 11},
  [12] = {.lex_state = 11},
  [13] = {.lex_state = 11},
  [14] = {.lex_state = 11},
  [15] = {.lex_state = 11},
  [16] = {.lex_state = 11},
  [17] = {.lex_state = 11},
  [18] = {.lex_state = 11},
  [19] = {.lex_state = 11},
  [20] = {.lex_state = 11},
  [21] = {.lex_state = 11},
  [22] = {.lex_state = 11},
  [23] = {.lex_state = 11},
  [24] = {.lex_state = 11},
  [25] = {.lex_state = 11},
  [26] = {.lex_state = 11},
  [27] = {.lex_state = 11},
  [28] = {.lex_state = 11},
  [29] = {.lex_state = 11},
  [30] = {.lex_state = 11},
  [31] = {.lex_state = 11},
  [32] = {.lex_state = 11},
  [33] = {.lex_state = 11},
  [34] = {.lex_state = 11},
  [35] = {.lex_state = 11},
  [36] = {.lex_state = 11},
  [37] = {.lex_state = 11},
  [38] = {.lex_state = 11},
  [39] = {.lex_state = 11},
  [40] = {.lex_state = 11},
  [41] = {.lex_state = 11},
  [42] = {.lex_state = 11},
  [43] = {.lex_state = 11},
  [44] = {.lex_state = 11},
  [45] = {.lex_state = 11},
  [46] = {.lex_state = 11},
  [47] = {.lex_state = 11},
  [48] = {.lex_state = 11},
  [49] = {.lex_state = 11},
  [50] = {.lex_state = 11},
  [51] = {.lex_state = 11},
  [52] = {.lex_state = 11},
  [53] = {.lex_state = 11},
  [54] = {.lex_state = 11},
  [55] = {.lex_state = 11},
  [56] = {.lex_state = 11},
  [57] = {.lex_state = 11},
  [58] = {.lex_state = 11},
  [59] = {.lex_state = 11},
  [60] = {.lex_state = 11},
  [61] = {.lex_state = 11},
  [62] = {.lex_state = 11},
  [63] = {.lex_state = 11},
  [64] = {.lex_state = 11},
  [65] = {.lex_state = 11},
  [66] = {.lex_state = 11},
  [67] = {.lex_state = 11},
  [68] = {.lex_state = 11},
  [69] = {.lex_state = 11},
  [70] = {.lex_state = 11},
  [71] = {.lex_state = 11},
  [72] = {.lex_state = 50},
  [73] = {.lex_state = 50},
  [74] = {.lex_state = 11},
  [75] = {.lex_state = 11},
  [76] = {.lex_state = 11},
  [77] = {.lex_state = 11},
  [78] = {.lex_state = 11},
  [79] = {.lex_state = 11},
  [80] = {.lex_state = 11},
  [81] = {.lex_state = 11},
  [82] = {.lex_state = 11},
  [83] = {.lex_state = 11},
  [84] = {.lex_state = 11},
  [85] = {.lex_state = 11},
  [86] = {.lex_state = 11},
  [87] = {.lex_state = 50},
  [88] = {.lex_state = 11},
  [89] = {.lex_state = 11},
  [90] = {.lex_state = 50},
  [91] = {.lex_state = 50},
  [92] = {.lex_state = 11},
  [93] = {.lex_state = 11},
  [94] = {.lex_state = 11},
  [95] = {.lex_state = 11},
  [96] = {.lex_state = 11},
  [97] = {.lex_state = 11},
  [98] = {.lex_state = 11},
  [99] = {.lex_state = 11},
  [100] = {.lex_state = 11},
  [101] = {.lex_state = 11},
  [102] = {.lex_state = 11},
  [103] = {.lex_state = 11},
  [104] = {.lex_state = 50},
  [105] = {.lex_state = 50},
  [106] = {.lex_state = 50},
  [107] = {.lex_state = 50},
  [108] = {.lex_state = 50},
  [109] = {.lex_state = 50},
  [110] = {.lex_state = 50},
  [111] = {.lex_state = 50},
  [112] = {.lex_state = 50},
  [113] = {.lex_state = 50},
  [114] = {.lex_state = 50},
  [115] = {.lex_state = 50},
  [116] = {.lex_state = 50},
  [117] = {.lex_state = 50},
  [118] = {.lex_state = 50},
  [119] = {.lex_state = 50},
  [120] = {.lex_state = 50},
  [121] = {.lex_state = 50},
  [122] = {.lex_state = 50},
  [123] = {.lex_state = 50},
  [124] = {.lex_state = 50},
  [125] = {.lex_state = 50},
  [126] = {.lex_state = 50},
  [127] = {.lex_state = 50},
  [128] = {.lex_state = 50},
  [129] = {.lex_state = 50},
  [130] = {.lex_state = 50},
  [131] = {.lex_state = 50},
  [132] = {.lex_state = 50},
  [133] = {.lex_state = 50},
  [134] = {.lex_state = 50},
  [135] = {.lex_state = 50},
  [136] = {.lex_state = 50},
  [137] = {.lex_state = 50},
  [138] = {.lex_state = 50},
  [139] = {.lex_state = 50},
  [140] = {.lex_state = 50},
  [141] = {.lex_state = 50},
  [142] = {.lex_state = 50},
  [143] = {.lex_state = 50},
  [144] = {.lex_state = 50},
  [145] = {.lex_state = 50},
  [146] = {.lex_state = 50},
  [147] = {.lex_state = 50},
  [148] = {.lex_state = 50},
  [149] = {.lex_state = 50},
  [150] = {.lex_state = 50},
  [151] = {.lex_state = 50},
  [152] = {.lex_state = 50},
  [153] = {.lex_state = 50},
  [154] = {.lex_state = 50},
  [155] = {.lex_state = 50},
  [156] = {.lex_state = 50},
  [157] = {.lex_state = 50},
  [158] = {.lex_state = 50},
  [159] = {.lex_state = 50},
  [160] = {.lex_state = 50},
  [161] = {.lex_state = 50},
  [162] = {.lex_state = 50},
  [163] = {.lex_state = 50},
  [164] = {.lex_state = 50},
  [165] = {.lex_state = 50},
  [166] = {.lex_state = 50},
  [167] = {.lex_state = 50},
  [168] = {.lex_state = 50},
  [169] = {.lex_state = 50},
  [170] = {.lex_state = 50},
  [171] = {.lex_state = 50},
  [172] = {.lex_state = 50},
  [173] = {.lex_state = 50},
  [174] = {.lex_state = 50},
  [175] = {.lex_state = 50},
  [176] = {.lex_state = 50},
  [177] = {.lex_state = 50},
  [178] = {.lex_state = 50},
  [179] = {.lex_state = 50},
  [180] = {.lex_state = 50},
  [181] = {.lex_state = 50},
  [182] = {.lex_state = 50},
  [183] = {.lex_state = 50},
  [184] = {.lex_state = 50},
  [185] = {.lex_state = 50},
  [186] = {.lex_state = 50},
  [187] = {.lex_state = 50},
  [188] = {.lex_state = 50},
  [189] = {.lex_state = 50},
  [190] = {.lex_state = 50},
  [191] = {.lex_state = 50},
  [192] = {.lex_state = 50},
  [193] = {.lex_state = 50},
  [194] = {.lex_state = 50},
  [195] = {.lex_state = 50},
  [196] = {.lex_state = 50},
  [197] = {.lex_state = 50},
  [198] = {.lex_state = 50},
  [199] = {.lex_state = 50},
  [200] = {.lex_state = 50},
  [201] = {.lex_state = 50},
  [202] = {.lex_state = 50},
  [203] = {.lex_state = 50},
  [204] = {.lex_state = 50},
  [205] = {.lex_state = 50},
  [206] = {.lex_state = 50},
  [207] = {.lex_state = 50},
  [208] = {.lex_state = 50},
  [209] = {.lex_state = 50},
  [210] = {.lex_state = 50},
  [211] = {.lex_state = 50},
  [212] = {.lex_state = 50},
  [213] = {.lex_state = 50},
  [214] = {.lex_state = 50},
  [215] = {.lex_state = 50},
  [216] = {.lex_state = 50},
  [217] = {.lex_state = 50},
  [218] = {.lex_state = 50},
  [219] = {.lex_state = 50},
  [220] = {.lex_state = 50},
  [221] = {.lex_state = 50},
  [222] = {.lex_state = 50},
  [223] = {.lex_state = 50},
  [224] = {.lex_state = 50},
  [225] = {.lex_state = 50},
  [226] = {.lex_state = 50},
  [227] = {.lex_state = 50},
  [228] = {.lex_state = 50},
  [229] = {.lex_state = 50},
  [230] = {.lex_state = 50},
  [231] = {.lex_state = 50},
  [232] = {.lex_state = 50},
  [233] = {.lex_state = 50},
  [234] = {.lex_state = 50},
  [235] = {.lex_state = 50},
  [236] = {.lex_state = 50},
  [237] = {.lex_state = 50},
  [238] = {.lex_state = 50},
  [239] = {.lex_state = 50},
  [240] = {.lex_state = 50},
  [241] = {.lex_state = 50},
  [242] = {.lex_state = 50},
  [243] = {.lex_state = 50},
  [244] = {.lex_state = 50},
  [245] = {.lex_state = 50},
  [246] = {.lex_state = 50},
  [247] = {.lex_state = 50},
  [248] = {.lex_state = 50},
  [249] = {.lex_state = 50},
  [250] = {.lex_state = 50},
  [251] = {.lex_state = 50},
  [252] = {.lex_state = 50},
  [253] = {.lex_state = 50},
  [254] = {.lex_state = 50},
  [255] = {.lex_state = 50},
  [256] = {.lex_state = 50},
  [257] = {.lex_state = 50},
  [258] = {.lex_state = 50},
  [259] = {.lex_state = 50},
  [260] = {.lex_state = 50},
  [261] = {.lex_state = 50},
  [262] = {.lex_state = 50},
  [263] = {.lex_state = 50},
  [264] = {.lex_state = 50},
  [265] = {.lex_state = 50},
  [266] = {.lex_state = 50},
  [267] = {.lex_state = 50},
  [268] = {.lex_state = 50},
  [269] = {.lex_state = 50},
  [270] = {.lex_state = 50},
  [271] = {.lex_state = 50},
  [272] = {.lex_state = 50},
  [273] = {.lex_state = 50},
  [274] = {.lex_state = 50},
  [275] = {.lex_state = 50},
  [276] = {.lex_state = 50},
  [277] = {.lex_state = 50},
  [278] = {.lex_state = 50},
  [279] = {.lex_state = 50},
  [280] = {.lex_state = 50},
  [281] = {.lex_state = 50},
  [282] = {.lex_state = 50},
  [283] = {.lex_state = 50},
  [284] = {.lex_state = 50},
  [285] = {.lex_state = 50},
  [286] = {.lex_state = 50},
  [287] = {.lex_state = 50},
  [288] = {.lex_state = 50},
  [289] = {.lex_state = 50},
  [290] = {.lex_state = 50},
  [291] = {.lex_state = 50},
  [292] = {.lex_state = 50},
  [293] = {.lex_state = 50},
  [294] = {.lex_state = 50},
  [295] = {.lex_state = 50},
  [296] = {.lex_state = 10},
  [297] = {.lex_state = 9},
  [298] = {.lex_state = 9},
  [299] = {.lex_state = 10},
  [300] = {.lex_state = 9},
  [301] = {.lex_state = 9},
  [302] = {.lex_state = 9},
  [303] = {.lex_state = 9},
  [304] = {.lex_state = 9},
  [305] = {.lex_state = 9},
  [306] = {.lex_state = 9},
  [307] = {.lex_state = 10},
  [308] = {.lex_state = 10},
  [309] = {.lex_state = 10},
  [310] = {.lex_state = 10},
  [311] = {.lex_state = 9},
  [312] = {.lex_state = 9},
  [313] = {.lex_state = 9},
  [314] = {.lex_state = 9},
  [315] = {.lex_state = 9},
  [316] = {.lex_state = 9},
  [317] = {.lex_state = 9},
  [318] = {.lex_state = 9},
  [319] = {.lex_state = 9},
  [320] = {.lex_state = 9},
  [321] = {.lex_state = 9},
  [322] = {.lex_state = 9},
  [323] = {.lex_state = 9},
  [324] = {.lex_state = 9},
  [325] = {.lex_state = 9},
  [326] = {.lex_state = 9},
  [327] = {.lex_state = 9},
  [328] = {.lex_state = 9},
  [329] = {.lex_state = 9},
  [330] = {.lex_state = 9},
  [331] = {.lex_state = 9},
  [332] = {.lex_state = 9},
  [333] = {.lex_state = 9},
  [334] = {.lex_state = 9},
  [335] = {.lex_state = 9},
  [336] = {.lex_state = 9},
  [337] = {.lex_state = 9},
  [338] = {.lex_state = 9},
  [339] = {.lex_state = 9},
  [340] = {.lex_state = 9},
  [341] = {.lex_state = 9},
  [342] = {.lex_state = 9},
  [343] = {.lex_state = 9},
  [344] = {.lex_state = 9},
  [345] = {.lex_state = 9},
  [346] = {.lex_state = 9},
  [347] = {.lex_state = 9},
  [348] = {.lex_state = 9},
  [349] = {.lex_state = 9},
  [350] = {.lex_state = 9},
  [351] = {.lex_state = 9},
  [352] = {.lex_state = 9},
  [353] = {.lex_state = 9},
  [354] = {.lex_state = 9},
  [355] = {.lex_state = 9},
  [356] = {.lex_state = 9},
  [357] = {.lex_state = 9},
  [358] = {.lex_state = 9},
  [359] = {.lex_state = 9},
  [360] = {.lex_state = 9},
  [361] = {.lex_state = 9},
  [362] = {.lex_state = 9},
  [363] = {.lex_state = 9},
  [364] = {.lex_state = 9},
  [365] = {.lex_state = 9},
  [366] = {.lex_state = 9},
  [367] = {.lex_state = 9},
  [368] = {.lex_state = 9},
  [369] = {.lex_state = 9},
  [370] = {.lex_state = 9},
  [371] = {.lex_state = 9},
  [372] = {.lex_state = 9},
  [373] = {.lex_state = 9},
  [374] = {.lex_state = 9},
  [375] = {.lex_state = 9},
  [376] = {.lex_state = 9},
  [377] = {.lex_state = 9},
  [378] = {.lex_state = 9},
  [379] = {.lex_state = 9},
  [380] = {.lex_state = 9},
  [381] = {.lex_state = 9},
  [382] = {.lex_state = 9},
  [383] = {.lex_state = 9},
  [384] = {.lex_state = 9},
  [385] = {.lex_state = 9},
  [386] = {.lex_state = 9},
  [387] = {.lex_state = 9},
  [388] = {.lex_state = 9},
  [389] = {.lex_state = 9},
  [390] = {.lex_state = 50},
  [391] = {.lex_state = 50},
  [392] = {.lex_state = 9},
  [393] = {.lex_state = 50},
  [394] = {.lex_state = 50},
  [395] = {.lex_state = 50},
  [396] = {.lex_state = 50},
  [397] = {.lex_state = 50},
  [398] = {.lex_state = 50},
  [399] = {.lex_state = 50},
  [400] = {.lex_state = 50},
  [401] = {.lex_state = 50},
  [402] = {.lex_state = 50},
  [403] = {.lex_state = 50},
  [404] = {.lex_state = 9},
  [405] = {.lex_state = 50},
  [406] = {.lex_state = 50},
  [407] = {.lex_state = 50},
  [408] = {.lex_state = 50},
  [409] = {.lex_state = 50},
  [410] = {.lex_state = 50},
  [411] = {.lex_state = 50},
  [412] = {.lex_state = 50},
  [413] = {.lex_state = 50},
  [414] = {.lex_state = 50},
  [415] = {.lex_state = 50},
  [416] = {.lex_state = 50},
  [417] = {.lex_state = 9},
  [418] = {.lex_state = 50},
  [419] = {.lex_state = 50},
  [420] = {.lex_state = 50},
  [421] = {.lex_state = 50},
  [422] = {.lex_state = 50},
  [423] = {.lex_state = 50},
  [424] = {.lex_state = 50},
  [425] = {.lex_state = 50},
  [426] = {.lex_state = 50},
  [427] = {.lex_state = 16},
  [428] = {.lex_state = 16},
  [429] = {.lex_state = 50},
  [430] = {.lex_state = 50},
  [431] = {.lex_state = 50},
  [432] = {.lex_state = 50},
  [433] = {.lex_state = 50},
  [434] = {.lex_state = 50},
  [435] = {.lex_state = 50},
  [436] = {.lex_state = 50},
  [437] = {.lex_state = 50},
  [438] = {.lex_state = 50},
  [439] = {.lex_state = 50},
  [440] = {.lex_state = 50},
  [441] = {.lex_state = 50},
  [442] = {.lex_state = 50},
  [443] = {.lex_state = 50},
  [444] = {.lex_state = 50},
  [445] = {.lex_state = 5},
  [446] = {.lex_state = 5},
  [447] = {.lex_state = 5},
  [448] = {.lex_state = 50},
  [449] = {.lex_state = 5},
  [450] = {.lex_state = 50},
  [451] = {.lex_state = 50},
  [452] = {.lex_state = 5},
  [453] = {.lex_state = 50},
  [454] = {.lex_state = 50},
  [455] = {.lex_state = 50},
  [456] = {.lex_state = 50},
  [457] = {.lex_state = 5},
  [458] = {.lex_state = 50},
  [459] = {.lex_state = 50},
  [460] = {.lex_state = 50},
  [461] = {.lex_state = 50},
  [462] = {.lex_state = 50},
  [463] = {.lex_state = 50},
  [464] = {.lex_state = 50},
  [465] = {.lex_state = 50},
  [466] = {.lex_state = 50},
  [467] = {.lex_state = 50},
  [468] = {.lex_state = 1},
  [469] = {.lex_state = 3},
  [470] = {.lex_state = 50},
  [471] = {.lex_state = 12},
  [472] = {.lex_state = 1},
  [473] = {.lex_state = 3},
  [474] = {.lex_state = 50},
  [475] = {.lex_state = 1},
  [476] = {.lex_state = 3},
  [477] = {.lex_state = 50},
  [478] = {.lex_state = 3},
  [479] = {.lex_state = 1},
  [480] = {.lex_state = 50},
  [481] = {.lex_state = 3},
  [482] = {.lex_state = 1},
  [483] = {.lex_state = 50},
  [484] = {.lex_state = 50},
  [485] = {.lex_state = 50},
  [486] = {.lex_state = 50},
  [487] = {.lex_state = 0},
  [488] = {.lex_state = 50},
  [489] = {.lex_state = 0},
  [490] = {.lex_state = 0},
  [491] = {.lex_state = 50},
  [492] = {.lex_state = 50},
  [493] = {.lex_state = 0},
  [494] = {.lex_state = 0},
  [495] = {.lex_state = 50},
  [496] = {.lex_state = 0},
  [497] = {.lex_state = 0},
  [498] = {.lex_state = 50},
  [499] = {.lex_state = 50},
  [500] = {.lex_state = 12},
  [501] = {.lex_state = 0},
  [502] = {.lex_state = 50},
  [503] = {.lex_state = 50},
  [504] = {.lex_state = 50},
  [505] = {.lex_state = 50},
  [506] = {.lex_state = 50},
  [507] = {.lex_state = 50},
  [508] = {.lex_state = 50},
  [509] = {.lex_state = 12},
  [510] = {.lex_state = 3},
  [511] = {.lex_state = 0},
  [512] = {.lex_state = 3},
  [513] = {.lex_state = 1},
  [514] = {.lex_state = 1},
  [515] = {.lex_state = 50},
  [516] = {.lex_state = 12},
  [517] = {.lex_state = 12},
  [518] = {.lex_state = 3},
  [519] = {.lex_state = 1},
  [520] = {.lex_state = 50},
  [521] = {.lex_state = 12},
  [522] = {.lex_state = 0},
  [523] = {.lex_state = 50},
  [524] = {.lex_state = 0},
  [525] = {.lex_state = 0},
  [526] = {.lex_state = 50},
  [527] = {.lex_state = 0},
  [528] = {.lex_state = 0},
  [529] = {.lex_state = 0},
  [530] = {.lex_state = 0},
  [531] = {.lex_state = 0},
  [532] = {.lex_state = 0},
  [533] = {.lex_state = 0},
  [534] = {.lex_state = 50},
  [535] = {.lex_state = 0},
  [536] = {.lex_state = 0},
  [537] = {.lex_state = 0},
  [538] = {.lex_state = 0},
  [539] = {.lex_state = 50},
  [540] = {.lex_state = 0},
  [541] = {.lex_state = 0},
  [542] = {.lex_state = 0},
  [543] = {.lex_state = 50},
  [544] = {.lex_state = 50},
  [545] = {.lex_state = 50},
  [546] = {.lex_state = 50},
  [547] = {.lex_state = 0},
  [548] = {.lex_state = 0},
  [549] = {.lex_state = 0},
  [550] = {.lex_state = 0},
  [551] = {.lex_state = 50},
  [552] = {.lex_state = 0},
  [553] = {.lex_state = 0},
  [554] = {.lex_state = 50},
  [555] = {.lex_state = 50},
  [556] = {.lex_state = 50},
  [557] = {.lex_state = 50},
  [558] = {.lex_state = 50},
  [559] = {.lex_state = 50},
  [560] = {.lex_state = 0},
  [561] = {.lex_state = 0},
  [562] = {.lex_state = 0},
  [563] = {.lex_state = 0},
  [564] = {.lex_state = 0},
  [565] = {.lex_state = 0},
  [566] = {.lex_state = 0},
  [567] = {.lex_state = 50},
  [568] = {.lex_state = 0},
  [569] = {.lex_state = 0},
  [570] = {.lex_state = 16},
  [571] = {.lex_state = 0},
  [572] = {.lex_state = 0},
  [573] = {.lex_state = 50},
  [574] = {.lex_state = 50},
  [575] = {.lex_state = 16},
  [576] = {.lex_state = 50},
  [577] = {.lex_state = 0},
  [578] = {.lex_state = 0},
  [579] = {.lex_state = 0},
  [580] = {.lex_state = 0},
  [581] = {.lex_state = 0},
  [582] = {.lex_state = 0},
  [583] = {.lex_state = 50},
  [584] = {.lex_state = 0},
  [585] = {.lex_state = 16},
  [586] = {.lex_state = 50},
  [587] = {.lex_state = 0},
  [588] = {.lex_state = 0},
  [589] = {.lex_state = 50},
  [590] = {.lex_state = 0},
  [591] = {.lex_state = 0},
  [592] = {.lex_state = 0},
  [593] = {.lex_state = 50},
  [594] = {.lex_state = 50},
  [595] = {.lex_state = 50},
  [596] = {.lex_state = 0},
  [597] = {.lex_state = 50},
  [598] = {.lex_state = 0},
  [599] = {.lex_state = 0},
  [600] = {.lex_state = 50},
  [601] = {.lex_state = 16},
  [602] = {.lex_state = 50},
  [603] = {.lex_state = 0},
  [604] = {.lex_state = 0},
  [605] = {.lex_state = 0},
  [606] = {.lex_state = 0},
  [607] = {.lex_state = 0},
  [608] = {.lex_state = 50},
  [609] = {.lex_state = 0},
  [610] = {.lex_state = 0},
  [611] = {.lex_state = 50},
  [612] = {.lex_state = 50},
  [613] = {.lex_state = 0},
  [614] = {.lex_state = 0},
  [615] = {.lex_state = 0},
  [616] = {.lex_state = 50},
  [617] = {.lex_state = 0},
  [618] = {.lex_state = 50},
  [619] = {.lex_state = 0},
  [620] = {.lex_state = 50},
  [621] = {.lex_state = 0},
  [622] = {.lex_state = 50},
  [623] = {.lex_state = 50},
  [624] = {.lex_state = 50},
  [625] = {.lex_state = 50},
  [626] = {.lex_state = 0},
  [627] = {.lex_state = 0},
  [628] = {.lex_state = 0},
  [629] = {.lex_state = 0},
  [630] = {.lex_state = 12},
  [631] = {.lex_state = 0},
  [632] = {.lex_state = 0},
  [633] = {.lex_state = 0},
  [634] = {.lex_state = 50},
  [635] = {.lex_state = 0},
  [636] = {.lex_state = 50},
  [637] = {.lex_state = 12},
  [638] = {.lex_state = 0},
  [639] = {.lex_state = 50},
  [640] = {.lex_state = 0},
  [641] = {.lex_state = 50},
  [642] = {.lex_state = 0},
  [643] = {.lex_state = 50},
  [644] = {.lex_state = 0},
  [645] = {.lex_state = 0},
  [646] = {.lex_state = 0},
  [647] = {.lex_state = 0},
  [648] = {.lex_state = 0},
  [649] = {.lex_state = 0},
  [650] = {.lex_state = 50},
  [651] = {.lex_state = 50},
  [652] = {.lex_state = 0},
  [653] = {.lex_state = 0},
  [654] = {.lex_state = 50},
  [655] = {.lex_state = 0},
  [656] = {.lex_state = 0},
  [657] = {.lex_state = 0},
  [658] = {.lex_state = 50},
  [659] = {.lex_state = 0},
  [660] = {.lex_state = 0},
  [661] = {.lex_state = 0},
  [662] = {.lex_state = 10},
  [663] = {.lex_state = 50},
  [664] = {.lex_state = 0},
  [665] = {.lex_state = 0},
  [666] = {.lex_state = 0},
  [667] = {.lex_state = 0},
  [668] = {.lex_state = 0},
  [669] = {.lex_state = 50},
  [670] = {.lex_state = 0},
  [671] = {.lex_state = 0},
  [672] = {.lex_state = 50},
  [673] = {.lex_state = 22},
  [674] = {.lex_state = 50},
  [675] = {.lex_state = 0},
  [676] = {.lex_state = 0},
  [677] = {.lex_state = 0},
  [678] = {.lex_state = 50},
  [679] = {.lex_state = 0},
  [680] = {.lex_state = 50},
  [681] = {.lex_state = 50},
  [682] = {.lex_state = 0},
  [683] = {.lex_state = 50},
  [684] = {.lex_state = 50},
  [685] = {.lex_state = 0},
  [686] = {.lex_state = 0},
  [687] = {.lex_state = 50},
  [688] = {.lex_state = 0},
  [689] = {.lex_state = 50},
  [690] = {.lex_state = 50},
  [691] = {.lex_state = 0},
  [692] = {.lex_state = 0},
  [693] = {.lex_state = 50},
  [694] = {.lex_state = 0},
  [695] = {.lex_state = 0},
  [696] = {.lex_state = 0},
  [697] = {.lex_state = 0},
  [698] = {.lex_state = 50},
  [699] = {.lex_state = 0},
  [700] = {.lex_state = 0},
  [701] = {.lex_state = 0},
  [702] = {.lex_state = 50},
  [703] = {.lex_state = 50},
  [704] = {.lex_state = 0},
  [705] = {.lex_state = 50},
  [706] = {.lex_state = 0},
  [707] = {.lex_state = 0},
  [708] = {.lex_state = 0},
  [709] = {.lex_state = 50},
  [710] = {.lex_state = 50},
  [711] = {.lex_state = 50},
  [712] = {.lex_state = 50},
  [713] = {.lex_state = 0},
  [714] = {.lex_state = 50},
  [715] = {.lex_state = 50},
  [716] = {.lex_state = 5},
  [717] = {.lex_state = 0},
  [718] = {.lex_state = 0},
  [719] = {.lex_state = 0},
  [720] = {.lex_state = 50},
  [721] = {.lex_state = 50},
  [722] = {.lex_state = 0},
  [723] = {.lex_state = 0},
  [724] = {.lex_state = 5},
  [725] = {.lex_state = 0},
  [726] = {.lex_state = 50},
  [727] = {.lex_state = 50},
  [728] = {.lex_state = 50},
  [729] = {.lex_state = 50},
  [730] = {.lex_state = 0},
  [731] = {.lex_state = 11},
  [732] = {.lex_state = 50},
  [733] = {.lex_state = 0},
  [734] = {.lex_state = 50},
  [735] = {.lex_state = 0},
  [736] = {.lex_state = 50},
  [737] = {.lex_state = 50},
  [738] = {.lex_state = 0},
  [739] = {.lex_state = 50},
  [740] = {.lex_state = 0},
  [741] = {.lex_state = 0},
  [742] = {.lex_state = 50},
  [743] = {.lex_state = 50},
  [744] = {.lex_state = 0},
  [745] = {.lex_state = 0},
  [746] = {.lex_state = 0},
  [747] = {.lex_state = 0},
  [748] = {.lex_state = 50},
  [749] = {.lex_state = 0},
  [750] = {.lex_state = 0},
  [751] = {.lex_state = 50},
  [752] = {.lex_state = 0},
  [753] = {.lex_state = 50},
  [754] = {.lex_state = 0},
  [755] = {.lex_state = 0},
  [756] = {.lex_state = 50},
  [757] = {.lex_state = 0},
  [758] = {.lex_state = 0},
  [759] = {.lex_state = 50},
  [760] = {.lex_state = 0},
  [761] = {.lex_state = 50},
  [762] = {.lex_state = 50},
  [763] = {.lex_state = 0},
  [764] = {.lex_state = 11},
  [765] = {.lex_state = 50},
  [766] = {.lex_state = 0},
  [767] = {.lex_state = 50},
  [768] = {.lex_state = 12},
  [769] = {.lex_state = 0},
  [770] = {.lex_state = 0},
  [771] = {.lex_state = 50},
  [772] = {.lex_state = 0},
  [773] = {.lex_state = 50},
  [774] = {.lex_state = 0},
  [775] = {.lex_state = 50},
  [776] = {.lex_state = 0},
  [777] = {.lex_state = 0},
  [778] = {.lex_state = 0},
  [779] = {.lex_state = 50},
  [780] = {.lex_state = 11},
  [781] = {.lex_state = 0},
  [782] = {.lex_state = 50},
  [783] = {.lex_state = 0},
  [784] = {.lex_state = 0},
  [785] = {.lex_state = 0},
  [786] = {.lex_state = 50},
  [787] = {.lex_state = 50},
  [788] = {.lex_state = 50},
  [789] = {.lex_state = 0},
  [790] = {.lex_state = 50},
  [791] = {.lex_state = 0},
  [792] = {.lex_state = 0},
  [793] = {.lex_state = 50},
  [794] = {.lex_state = 50},
  [795] = {.lex_state = 0},
  [796] = {.lex_state = 0},
  [797] = {.lex_state = 50},
  [798] = {.lex_state = 50},
  [799] = {.lex_state = 50},
};

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_pragma] = ACTIONS(1),
    [anon_sym_PIPE_PIPE] = ACTIONS(1),
    [anon_sym_DASH] = ACTIONS(1),
    [anon_sym_solidity] = ACTIONS(1),
    [anon_sym_LT_EQ] = ACTIONS(1),
    [anon_sym_LT] = ACTIONS(1),
    [anon_sym_CARET] = ACTIONS(1),
    [anon_sym_GT] = ACTIONS(1),
    [anon_sym_GT_EQ] = ACTIONS(1),
    [anon_sym_TILDE] = ACTIONS(1),
    [anon_sym_EQ] = ACTIONS(1),
    [anon_sym_import] = ACTIONS(1),
    [anon_sym_from] = ACTIONS(1),
    [anon_sym_STAR] = ACTIONS(1),
    [anon_sym_LBRACE] = ACTIONS(1),
    [anon_sym_COMMA] = ACTIONS(1),
    [anon_sym_RBRACE] = ACTIONS(1),
    [anon_sym_as] = ACTIONS(1),
    [anon_sym_type] = ACTIONS(1),
    [anon_sym_is] = ACTIONS(1),
    [anon_sym_constant] = ACTIONS(1),
    [anon_sym_abstract] = ACTIONS(1),
    [anon_sym_contract] = ACTIONS(1),
    [anon_sym_error] = ACTIONS(1),
    [anon_sym_LPAREN] = ACTIONS(1),
    [anon_sym_RPAREN] = ACTIONS(1),
    [anon_sym_interface] = ACTIONS(1),
    [anon_sym_library] = ACTIONS(1),
    [anon_sym_struct] = ACTIONS(1),
    [anon_sym_enum] = ACTIONS(1),
    [anon_sym_event] = ACTIONS(1),
    [anon_sym_anonymous] = ACTIONS(1),
    [anon_sym_indexed] = ACTIONS(1),
    [anon_sym_using] = ACTIONS(1),
    [anon_sym_for] = ACTIONS(1),
    [anon_sym_assembly] = ACTIONS(1),
    [anon_sym_COLON] = ACTIONS(1),
    [sym_yul_leave] = ACTIONS(1),
    [anon_sym_break] = ACTIONS(1),
    [anon_sym_continue] = ACTIONS(1),
    [anon_sym_DOT] = ACTIONS(1),
    [sym_yul_decimal_number] = ACTIONS(1),
    [sym_yul_hex_number] = ACTIONS(1),
    [anon_sym_true] = ACTIONS(1),
    [anon_sym_false] = ACTIONS(1),
    [anon_sym_let] = ACTIONS(1),
    [anon_sym_COLON_EQ] = ACTIONS(1),
    [anon_sym_if] = ACTIONS(1),
    [anon_sym_switch] = ACTIONS(1),
    [anon_sym_default] = ACTIONS(1),
    [anon_sym_case] = ACTIONS(1),
    [anon_sym_function] = ACTIONS(1),
    [anon_sym_stop] = ACTIONS(1),
    [anon_sym_add] = ACTIONS(1),
    [anon_sym_sub] = ACTIONS(1),
    [anon_sym_mul] = ACTIONS(1),
    [anon_sym_div] = ACTIONS(1),
    [anon_sym_sdiv] = ACTIONS(1),
    [anon_sym_mod] = ACTIONS(1),
    [anon_sym_smod] = ACTIONS(1),
    [anon_sym_exp] = ACTIONS(1),
    [anon_sym_not] = ACTIONS(1),
    [anon_sym_lt] = ACTIONS(1),
    [anon_sym_gt] = ACTIONS(1),
    [anon_sym_slt] = ACTIONS(1),
    [anon_sym_sgt] = ACTIONS(1),
    [anon_sym_eq] = ACTIONS(1),
    [anon_sym_iszero] = ACTIONS(1),
    [anon_sym_and] = ACTIONS(1),
    [anon_sym_or] = ACTIONS(1),
    [anon_sym_xor] = ACTIONS(1),
    [anon_sym_byte] = ACTIONS(1),
    [anon_sym_shl] = ACTIONS(1),
    [anon_sym_shr] = ACTIONS(1),
    [anon_sym_sar] = ACTIONS(1),
    [anon_sym_addmod] = ACTIONS(1),
    [anon_sym_mulmod] = ACTIONS(1),
    [anon_sym_signextend] = ACTIONS(1),
    [anon_sym_keccak256] = ACTIONS(1),
    [anon_sym_pop] = ACTIONS(1),
    [anon_sym_mload] = ACTIONS(1),
    [anon_sym_mstore] = ACTIONS(1),
    [anon_sym_mstore8] = ACTIONS(1),
    [anon_sym_sload] = ACTIONS(1),
    [anon_sym_sstore] = ACTIONS(1),
    [anon_sym_msize] = ACTIONS(1),
    [anon_sym_gas] = ACTIONS(1),
    [anon_sym_address] = ACTIONS(1),
    [anon_sym_balance] = ACTIONS(1),
    [anon_sym_selfbalance] = ACTIONS(1),
    [anon_sym_caller] = ACTIONS(1),
    [anon_sym_callvalue] = ACTIONS(1),
    [anon_sym_calldataload] = ACTIONS(1),
    [anon_sym_calldatasize] = ACTIONS(1),
    [anon_sym_calldatacopy] = ACTIONS(1),
    [anon_sym_extcodesize] = ACTIONS(1),
    [anon_sym_extcodecopy] = ACTIONS(1),
    [anon_sym_returndatasize] = ACTIONS(1),
    [anon_sym_returndatacopy] = ACTIONS(1),
    [anon_sym_extcodehash] = ACTIONS(1),
    [anon_sym_create] = ACTIONS(1),
    [anon_sym_create2] = ACTIONS(1),
    [anon_sym_call] = ACTIONS(1),
    [anon_sym_callcode] = ACTIONS(1),
    [anon_sym_delegatecall] = ACTIONS(1),
    [anon_sym_staticcall] = ACTIONS(1),
    [anon_sym_return] = ACTIONS(1),
    [anon_sym_revert] = ACTIONS(1),
    [anon_sym_selfdestruct] = ACTIONS(1),
    [anon_sym_invalid] = ACTIONS(1),
    [anon_sym_log0] = ACTIONS(1),
    [anon_sym_log1] = ACTIONS(1),
    [anon_sym_log2] = ACTIONS(1),
    [anon_sym_log3] = ACTIONS(1),
    [anon_sym_log4] = ACTIONS(1),
    [anon_sym_chainid] = ACTIONS(1),
    [anon_sym_origin] = ACTIONS(1),
    [anon_sym_gasprice] = ACTIONS(1),
    [anon_sym_blockhash] = ACTIONS(1),
    [anon_sym_coinbase] = ACTIONS(1),
    [anon_sym_timestamp] = ACTIONS(1),
    [anon_sym_number] = ACTIONS(1),
    [anon_sym_difficulty] = ACTIONS(1),
    [anon_sym_gaslimit] = ACTIONS(1),
    [sym__unchecked] = ACTIONS(1),
    [anon_sym_memory] = ACTIONS(1),
    [anon_sym_storage] = ACTIONS(1),
    [anon_sym_calldata] = ACTIONS(1),
    [anon_sym_var] = ACTIONS(1),
    [anon_sym_else] = ACTIONS(1),
    [anon_sym_while] = ACTIONS(1),
    [anon_sym_do] = ACTIONS(1),
    [anon_sym_try] = ACTIONS(1),
    [anon_sym_returns] = ACTIONS(1),
    [anon_sym_catch] = ACTIONS(1),
    [anon_sym_emit] = ACTIONS(1),
    [anon_sym_public] = ACTIONS(1),
    [anon_sym_internal] = ACTIONS(1),
    [anon_sym_private] = ACTIONS(1),
    [anon_sym_external] = ACTIONS(1),
    [anon_sym_pure] = ACTIONS(1),
    [anon_sym_view] = ACTIONS(1),
    [anon_sym_payable] = ACTIONS(1),
    [sym_immutable] = ACTIONS(1),
    [anon_sym_override] = ACTIONS(1),
    [anon_sym_modifier] = ACTIONS(1),
    [anon_sym_constructor] = ACTIONS(1),
    [anon_sym_fallback] = ACTIONS(1),
    [anon_sym_receive] = ACTIONS(1),
    [sym_virtual] = ACTIONS(1),
    [anon_sym_QMARK] = ACTIONS(1),
    [anon_sym_new] = ACTIONS(1),
    [anon_sym_LBRACK] = ACTIONS(1),
    [anon_sym_RBRACK] = ACTIONS(1),
    [anon_sym_AMP_AMP] = ACTIONS(1),
    [anon_sym_GT_GT] = ACTIONS(1),
    [anon_sym_GT_GT_GT] = ACTIONS(1),
    [anon_sym_LT_LT] = ACTIONS(1),
    [anon_sym_AMP] = ACTIONS(1),
    [anon_sym_PIPE] = ACTIONS(1),
    [anon_sym_PLUS] = ACTIONS(1),
    [anon_sym_SLASH] = ACTIONS(1),
    [anon_sym_PERCENT] = ACTIONS(1),
    [anon_sym_STAR_STAR] = ACTIONS(1),
    [anon_sym_EQ_EQ] = ACTIONS(1),
    [anon_sym_BANG_EQ] = ACTIONS(1),
    [anon_sym_BANG_EQ_EQ] = ACTIONS(1),
    [anon_sym_BANG] = ACTIONS(1),
    [anon_sym_delete] = ACTIONS(1),
    [anon_sym_PLUS_PLUS] = ACTIONS(1),
    [anon_sym_DASH_DASH] = 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_CARET_EQ] = ACTIONS(1),
    [anon_sym_AMP_EQ] = ACTIONS(1),
    [anon_sym_PIPE_EQ] = ACTIONS(1),
    [anon_sym_GT_GT_EQ] = ACTIONS(1),
    [anon_sym_GT_GT_GT_EQ] = ACTIONS(1),
    [anon_sym_LT_LT_EQ] = ACTIONS(1),
    [anon_sym_mapping] = ACTIONS(1),
    [anon_sym_EQ_GT] = ACTIONS(1),
    [anon_sym_bool] = ACTIONS(1),
    [anon_sym_string] = ACTIONS(1),
    [anon_sym_int] = ACTIONS(1),
    [anon_sym_int8] = ACTIONS(1),
    [anon_sym_int16] = ACTIONS(1),
    [anon_sym_int24] = ACTIONS(1),
    [anon_sym_int32] = ACTIONS(1),
    [anon_sym_int40] = ACTIONS(1),
    [anon_sym_int48] = ACTIONS(1),
    [anon_sym_int56] = ACTIONS(1),
    [anon_sym_int64] = ACTIONS(1),
    [anon_sym_int72] = ACTIONS(1),
    [anon_sym_int80] = ACTIONS(1),
    [anon_sym_int88] = ACTIONS(1),
    [anon_sym_int96] = ACTIONS(1),
    [anon_sym_int104] = ACTIONS(1),
    [anon_sym_int112] = ACTIONS(1),
    [anon_sym_int120] = ACTIONS(1),
    [anon_sym_int128] = ACTIONS(1),
    [anon_sym_int136] = ACTIONS(1),
    [anon_sym_int144] = ACTIONS(1),
    [anon_sym_int152] = ACTIONS(1),
    [anon_sym_int160] = ACTIONS(1),
    [anon_sym_int168] = ACTIONS(1),
    [anon_sym_int176] = ACTIONS(1),
    [anon_sym_int184] = ACTIONS(1),
    [anon_sym_int192] = ACTIONS(1),
    [anon_sym_int200] = ACTIONS(1),
    [anon_sym_int208] = ACTIONS(1),
    [anon_sym_int216] = ACTIONS(1),
    [anon_sym_int224] = ACTIONS(1),
    [anon_sym_int232] = ACTIONS(1),
    [anon_sym_int240] = ACTIONS(1),
    [anon_sym_int248] = ACTIONS(1),
    [anon_sym_int256] = ACTIONS(1),
    [anon_sym_uint] = ACTIONS(1),
    [anon_sym_uint8] = ACTIONS(1),
    [anon_sym_uint16] = ACTIONS(1),
    [anon_sym_uint24] = ACTIONS(1),
    [anon_sym_uint32] = ACTIONS(1),
    [anon_sym_uint40] = ACTIONS(1),
    [anon_sym_uint48] = ACTIONS(1),
    [anon_sym_uint56] = ACTIONS(1),
    [anon_sym_uint64] = ACTIONS(1),
    [anon_sym_uint72] = ACTIONS(1),
    [anon_sym_uint80] = ACTIONS(1),
    [anon_sym_uint88] = ACTIONS(1),
    [anon_sym_uint96] = ACTIONS(1),
    [anon_sym_uint104] = ACTIONS(1),
    [anon_sym_uint112] = ACTIONS(1),
    [anon_sym_uint120] = ACTIONS(1),
    [anon_sym_uint128] = ACTIONS(1),
    [anon_sym_uint136] = ACTIONS(1),
    [anon_sym_uint144] = ACTIONS(1),
    [anon_sym_uint152] = ACTIONS(1),
    [anon_sym_uint160] = ACTIONS(1),
    [anon_sym_uint168] = ACTIONS(1),
    [anon_sym_uint176] = ACTIONS(1),
    [anon_sym_uint184] = ACTIONS(1),
    [anon_sym_uint192] = ACTIONS(1),
    [anon_sym_uint200] = ACTIONS(1),
    [anon_sym_uint208] = ACTIONS(1),
    [anon_sym_uint216] = ACTIONS(1),
    [anon_sym_uint224] = ACTIONS(1),
    [anon_sym_uint232] = ACTIONS(1),
    [anon_sym_uint240] = ACTIONS(1),
    [anon_sym_uint248] = ACTIONS(1),
    [anon_sym_uint256] = ACTIONS(1),
    [anon_sym_bytes] = ACTIONS(1),
    [anon_sym_bytes1] = ACTIONS(1),
    [anon_sym_bytes2] = ACTIONS(1),
    [anon_sym_bytes3] = ACTIONS(1),
    [anon_sym_bytes4] = ACTIONS(1),
    [anon_sym_bytes5] = ACTIONS(1),
    [anon_sym_bytes6] = ACTIONS(1),
    [anon_sym_bytes7] = ACTIONS(1),
    [anon_sym_bytes8] = ACTIONS(1),
    [anon_sym_bytes9] = ACTIONS(1),
    [anon_sym_bytes10] = ACTIONS(1),
    [anon_sym_bytes11] = ACTIONS(1),
    [anon_sym_bytes12] = ACTIONS(1),
    [anon_sym_bytes13] = ACTIONS(1),
    [anon_sym_bytes14] = ACTIONS(1),
    [anon_sym_bytes15] = ACTIONS(1),
    [anon_sym_bytes16] = ACTIONS(1),
    [anon_sym_bytes17] = ACTIONS(1),
    [anon_sym_bytes18] = ACTIONS(1),
    [anon_sym_bytes19] = ACTIONS(1),
    [anon_sym_bytes20] = ACTIONS(1),
    [anon_sym_bytes21] = ACTIONS(1),
    [anon_sym_bytes22] = ACTIONS(1),
    [anon_sym_bytes23] = ACTIONS(1),
    [anon_sym_bytes24] = ACTIONS(1),
    [anon_sym_bytes25] = ACTIONS(1),
    [anon_sym_bytes26] = ACTIONS(1),
    [anon_sym_bytes27] = ACTIONS(1),
    [anon_sym_bytes28] = ACTIONS(1),
    [anon_sym_bytes29] = ACTIONS(1),
    [anon_sym_bytes30] = ACTIONS(1),
    [anon_sym_bytes31] = ACTIONS(1),
    [anon_sym_bytes32] = ACTIONS(1),
    [anon_sym_fixed] = ACTIONS(1),
    [aux_sym__fixed_token1] = ACTIONS(1),
    [anon_sym_ufixed] = ACTIONS(1),
    [aux_sym__ufixed_token1] = ACTIONS(1),
    [sym__semicolon] = ACTIONS(1),
    [anon_sym_wei] = ACTIONS(1),
    [anon_sym_szabo] = ACTIONS(1),
    [anon_sym_finney] = ACTIONS(1),
    [anon_sym_gwei] = ACTIONS(1),
    [anon_sym_ether] = ACTIONS(1),
    [anon_sym_seconds] = ACTIONS(1),
    [anon_sym_minutes] = ACTIONS(1),
    [anon_sym_hours] = ACTIONS(1),
    [anon_sym_days] = ACTIONS(1),
    [anon_sym_weeks] = ACTIONS(1),
    [anon_sym_years] = ACTIONS(1),
    [anon_sym_hex] = ACTIONS(1),
    [anon_sym_DQUOTE] = ACTIONS(1),
    [anon_sym__] = ACTIONS(1),
    [anon_sym_SQUOTE] = ACTIONS(1),
    [sym__escape_sequence] = ACTIONS(1),
    [anon_sym_unicode] = ACTIONS(1),
    [sym_comment] = ACTIONS(3),
  },
  [1] = {
    [sym_source_file] = STATE(758),
    [sym__source_unit] = STATE(72),
    [sym__directive] = STATE(72),
    [sym_pragma_directive] = STATE(72),
    [sym_import_directive] = STATE(72),
    [sym__declaration] = STATE(72),
    [sym_user_defined_type_definition] = STATE(72),
    [sym_constant_variable_declaration] = STATE(72),
    [sym_contract_declaration] = STATE(72),
    [sym_error_declaration] = STATE(72),
    [sym_interface_declaration] = STATE(72),
    [sym_library_declaration] = STATE(72),
    [sym_struct_declaration] = STATE(72),
    [sym_enum_declaration] = STATE(72),
    [sym_function_definition] = STATE(72),
    [sym_type_name] = STATE(663),
    [sym__array_type] = STATE(321),
    [sym__function_type] = STATE(323),
    [sym_user_defined_type] = STATE(321),
    [sym__identifier_path] = STATE(308),
    [sym__mapping] = STATE(317),
    [sym_primitive_type] = STATE(321),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [aux_sym_source_file_repeat1] = STATE(72),
    [ts_builtin_sym_end] = ACTIONS(5),
    [sym_identifier] = ACTIONS(7),
    [anon_sym_pragma] = ACTIONS(9),
    [anon_sym_import] = ACTIONS(11),
    [anon_sym_type] = ACTIONS(13),
    [anon_sym_abstract] = ACTIONS(15),
    [anon_sym_contract] = ACTIONS(17),
    [anon_sym_error] = ACTIONS(19),
    [anon_sym_interface] = ACTIONS(21),
    [anon_sym_library] = ACTIONS(23),
    [anon_sym_struct] = ACTIONS(25),
    [anon_sym_enum] = ACTIONS(27),
    [anon_sym_function] = ACTIONS(29),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_mapping] = ACTIONS(35),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [sym_comment] = ACTIONS(3),
  },
  [2] = {
    [sym__statement] = STATE(11),
    [sym_assembly_statement] = STATE(11),
    [sym_block_statement] = STATE(11),
    [sym_variable_declaration_statement] = STATE(11),
    [sym_variable_declaration] = STATE(703),
    [sym_variable_declaration_tuple] = STATE(721),
    [sym_expression_statement] = STATE(11),
    [sym_if_statement] = STATE(11),
    [sym_for_statement] = STATE(11),
    [sym_while_statement] = STATE(11),
    [sym_do_while_statement] = STATE(11),
    [sym_continue_statement] = STATE(11),
    [sym_break_statement] = STATE(11),
    [sym_revert_statement] = STATE(11),
    [sym_try_statement] = STATE(11),
    [sym_return_statement] = STATE(11),
    [sym_emit_statement] = STATE(11),
    [sym__expression] = STATE(415),
    [sym__primary_expression] = STATE(415),
    [sym_type_cast_expression] = STATE(415),
    [sym_ternary_expression] = STATE(415),
    [sym_new_expression] = STATE(415),
    [sym_tuple_expression] = STATE(415),
    [sym_inline_array_expression] = STATE(415),
    [sym_binary_expression] = STATE(415),
    [sym_unary_expression] = STATE(415),
    [sym_update_expression] = STATE(415),
    [sym_member_expression] = STATE(415),
    [sym_array_access] = STATE(415),
    [sym_slice_access] = STATE(415),
    [sym_struct_expression] = STATE(415),
    [sym_struct_field_assignment] = STATE(553),
    [sym_parenthesized_expression] = STATE(415),
    [sym_assignment_expression] = STATE(415),
    [sym_augmented_assignment_expression] = STATE(415),
    [sym_call_expression] = STATE(415),
    [sym_payable_conversion_expression] = STATE(415),
    [sym_meta_type_expression] = STATE(415),
    [sym_type_name] = STATE(470),
    [sym__array_type] = STATE(321),
    [sym__function_type] = STATE(323),
    [sym_user_defined_type] = STATE(390),
    [sym__identifier_path] = STATE(308),
    [sym__mapping] = STATE(317),
    [sym_primitive_type] = STATE(391),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym__literal] = STATE(415),
    [sym_string_literal] = STATE(415),
    [sym_number_literal] = STATE(415),
    [sym__decimal_number] = STATE(316),
    [sym__hex_number] = STATE(316),
    [sym_true] = STATE(371),
    [sym_false] = STATE(371),
    [sym_boolean_literal] = STATE(415),
    [sym_hex_string_literal] = STATE(415),
    [sym_unicode_string_literal] = STATE(415),
    [sym_string] = STATE(333),
    [aux_sym_block_statement_repeat1] = STATE(11),
    [aux_sym_string_literal_repeat1] = STATE(333),
    [aux_sym_hex_string_literal_repeat2] = STATE(336),
    [aux_sym_unicode_string_literal_repeat3] = STATE(335),
    [sym_identifier] = ACTIONS(37),
    [anon_sym_DASH] = ACTIONS(39),
    [anon_sym_TILDE] = ACTIONS(41),
    [anon_sym_LBRACE] = ACTIONS(43),
    [anon_sym_RBRACE] = ACTIONS(45),
    [anon_sym_type] = ACTIONS(47),
    [anon_sym_LPAREN] = ACTIONS(49),
    [anon_sym_for] = ACTIONS(51),
    [anon_sym_assembly] = ACTIONS(53),
    [anon_sym_break] = ACTIONS(55),
    [anon_sym_continue] = ACTIONS(57),
    [anon_sym_true] = ACTIONS(59),
    [anon_sym_false] = ACTIONS(61),
    [anon_sym_if] = ACTIONS(63),
    [anon_sym_function] = ACTIONS(65),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_return] = ACTIONS(67),
    [anon_sym_revert] = ACTIONS(69),
    [sym__unchecked] = ACTIONS(71),
    [anon_sym_var] = ACTIONS(73),
    [anon_sym_while] = ACTIONS(75),
    [anon_sym_do] = ACTIONS(77),
    [anon_sym_try] = ACTIONS(79),
    [anon_sym_emit] = ACTIONS(81),
    [anon_sym_payable] = ACTIONS(83),
    [anon_sym_new] = ACTIONS(85),
    [anon_sym_LBRACK] = ACTIONS(87),
    [anon_sym_PLUS] = ACTIONS(39),
    [anon_sym_BANG] = ACTIONS(41),
    [anon_sym_delete] = ACTIONS(89),
    [anon_sym_PLUS_PLUS] = ACTIONS(91),
    [anon_sym_DASH_DASH] = ACTIONS(91),
    [anon_sym_mapping] = ACTIONS(35),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [aux_sym__decimal_number_token1] = ACTIONS(93),
    [aux_sym__decimal_number_token2] = ACTIONS(95),
    [aux_sym__hex_number_token1] = ACTIONS(95),
    [anon_sym_hex] = ACTIONS(97),
    [anon_sym_DQUOTE] = ACTIONS(99),
    [anon_sym_SQUOTE] = ACTIONS(101),
    [anon_sym_unicode] = ACTIONS(103),
    [sym_comment] = ACTIONS(3),
  },
  [3] = {
    [sym__statement] = STATE(4),
    [sym_assembly_statement] = STATE(4),
    [sym_block_statement] = STATE(4),
    [sym_variable_declaration_statement] = STATE(4),
    [sym_variable_declaration] = STATE(703),
    [sym_variable_declaration_tuple] = STATE(721),
    [sym_expression_statement] = STATE(4),
    [sym_if_statement] = STATE(4),
    [sym_for_statement] = STATE(4),
    [sym_while_statement] = STATE(4),
    [sym_do_while_statement] = STATE(4),
    [sym_continue_statement] = STATE(4),
    [sym_break_statement] = STATE(4),
    [sym_revert_statement] = STATE(4),
    [sym_try_statement] = STATE(4),
    [sym_return_statement] = STATE(4),
    [sym_emit_statement] = STATE(4),
    [sym__expression] = STATE(415),
    [sym__primary_expression] = STATE(415),
    [sym_type_cast_expression] = STATE(415),
    [sym_ternary_expression] = STATE(415),
    [sym_new_expression] = STATE(415),
    [sym_tuple_expression] = STATE(415),
    [sym_inline_array_expression] = STATE(415),
    [sym_binary_expression] = STATE(415),
    [sym_unary_expression] = STATE(415),
    [sym_update_expression] = STATE(415),
    [sym_member_expression] = STATE(415),
    [sym_array_access] = STATE(415),
    [sym_slice_access] = STATE(415),
    [sym_struct_expression] = STATE(415),
    [sym_parenthesized_expression] = STATE(415),
    [sym_assignment_expression] = STATE(415),
    [sym_augmented_assignment_expression] = STATE(415),
    [sym_call_expression] = STATE(415),
    [sym_payable_conversion_expression] = STATE(415),
    [sym_meta_type_expression] = STATE(415),
    [sym_type_name] = STATE(470),
    [sym__array_type] = STATE(321),
    [sym__function_type] = STATE(323),
    [sym_user_defined_type] = STATE(390),
    [sym__identifier_path] = STATE(308),
    [sym__mapping] = STATE(317),
    [sym_primitive_type] = STATE(391),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym__literal] = STATE(415),
    [sym_string_literal] = STATE(415),
    [sym_number_literal] = STATE(415),
    [sym__decimal_number] = STATE(316),
    [sym__hex_number] = STATE(316),
    [sym_true] = STATE(371),
    [sym_false] = STATE(371),
    [sym_boolean_literal] = STATE(415),
    [sym_hex_string_literal] = STATE(415),
    [sym_unicode_string_literal] = STATE(415),
    [sym_string] = STATE(333),
    [aux_sym_block_statement_repeat1] = STATE(4),
    [aux_sym_string_literal_repeat1] = STATE(333),
    [aux_sym_hex_string_literal_repeat2] = STATE(336),
    [aux_sym_unicode_string_literal_repeat3] = STATE(335),
    [sym_identifier] = ACTIONS(105),
    [anon_sym_DASH] = ACTIONS(39),
    [anon_sym_TILDE] = ACTIONS(41),
    [anon_sym_LBRACE] = ACTIONS(43),
    [anon_sym_RBRACE] = ACTIONS(107),
    [anon_sym_type] = ACTIONS(47),
    [anon_sym_LPAREN] = ACTIONS(49),
    [anon_sym_for] = ACTIONS(51),
    [anon_sym_assembly] = ACTIONS(53),
    [anon_sym_break] = ACTIONS(55),
    [anon_sym_continue] = ACTIONS(57),
    [anon_sym_true] = ACTIONS(59),
    [anon_sym_false] = ACTIONS(61),
    [anon_sym_if] = ACTIONS(63),
    [anon_sym_function] = ACTIONS(65),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_return] = ACTIONS(67),
    [anon_sym_revert] = ACTIONS(69),
    [sym__unchecked] = ACTIONS(71),
    [anon_sym_var] = ACTIONS(73),
    [anon_sym_while] = ACTIONS(75),
    [anon_sym_do] = ACTIONS(77),
    [anon_sym_try] = ACTIONS(79),
    [anon_sym_emit] = ACTIONS(81),
    [anon_sym_payable] = ACTIONS(83),
    [anon_sym_new] = ACTIONS(85),
    [anon_sym_LBRACK] = ACTIONS(87),
    [anon_sym_PLUS] = ACTIONS(39),
    [anon_sym_BANG] = ACTIONS(41),
    [anon_sym_delete] = ACTIONS(89),
    [anon_sym_PLUS_PLUS] = ACTIONS(91),
    [anon_sym_DASH_DASH] = ACTIONS(91),
    [anon_sym_mapping] = ACTIONS(35),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [aux_sym__decimal_number_token1] = ACTIONS(93),
    [aux_sym__decimal_number_token2] = ACTIONS(95),
    [aux_sym__hex_number_token1] = ACTIONS(95),
    [anon_sym_hex] = ACTIONS(97),
    [anon_sym_DQUOTE] = ACTIONS(99),
    [anon_sym_SQUOTE] = ACTIONS(101),
    [anon_sym_unicode] = ACTIONS(103),
    [sym_comment] = ACTIONS(3),
  },
  [4] = {
    [sym__statement] = STATE(5),
    [sym_assembly_statement] = STATE(5),
    [sym_block_statement] = STATE(5),
    [sym_variable_declaration_statement] = STATE(5),
    [sym_variable_declaration] = STATE(703),
    [sym_variable_declaration_tuple] = STATE(721),
    [sym_expression_statement] = STATE(5),
    [sym_if_statement] = STATE(5),
    [sym_for_statement] = STATE(5),
    [sym_while_statement] = STATE(5),
    [sym_do_while_statement] = STATE(5),
    [sym_continue_statement] = STATE(5),
    [sym_break_statement] = STATE(5),
    [sym_revert_statement] = STATE(5),
    [sym_try_statement] = STATE(5),
    [sym_return_statement] = STATE(5),
    [sym_emit_statement] = STATE(5),
    [sym__expression] = STATE(415),
    [sym__primary_expression] = STATE(415),
    [sym_type_cast_expression] = STATE(415),
    [sym_ternary_expression] = STATE(415),
    [sym_new_expression] = STATE(415),
    [sym_tuple_expression] = STATE(415),
    [sym_inline_array_expression] = STATE(415),
    [sym_binary_expression] = STATE(415),
    [sym_unary_expression] = STATE(415),
    [sym_update_expression] = STATE(415),
    [sym_member_expression] = STATE(415),
    [sym_array_access] = STATE(415),
    [sym_slice_access] = STATE(415),
    [sym_struct_expression] = STATE(415),
    [sym_parenthesized_expression] = STATE(415),
    [sym_assignment_expression] = STATE(415),
    [sym_augmented_assignment_expression] = STATE(415),
    [sym_call_expression] = STATE(415),
    [sym_payable_conversion_expression] = STATE(415),
    [sym_meta_type_expression] = STATE(415),
    [sym_type_name] = STATE(470),
    [sym__array_type] = STATE(321),
    [sym__function_type] = STATE(323),
    [sym_user_defined_type] = STATE(390),
    [sym__identifier_path] = STATE(308),
    [sym__mapping] = STATE(317),
    [sym_primitive_type] = STATE(391),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym__literal] = STATE(415),
    [sym_string_literal] = STATE(415),
    [sym_number_literal] = STATE(415),
    [sym__decimal_number] = STATE(316),
    [sym__hex_number] = STATE(316),
    [sym_true] = STATE(371),
    [sym_false] = STATE(371),
    [sym_boolean_literal] = STATE(415),
    [sym_hex_string_literal] = STATE(415),
    [sym_unicode_string_literal] = STATE(415),
    [sym_string] = STATE(333),
    [aux_sym_block_statement_repeat1] = STATE(5),
    [aux_sym_string_literal_repeat1] = STATE(333),
    [aux_sym_hex_string_literal_repeat2] = STATE(336),
    [aux_sym_unicode_string_literal_repeat3] = STATE(335),
    [sym_identifier] = ACTIONS(105),
    [anon_sym_DASH] = ACTIONS(39),
    [anon_sym_TILDE] = ACTIONS(41),
    [anon_sym_LBRACE] = ACTIONS(43),
    [anon_sym_RBRACE] = ACTIONS(109),
    [anon_sym_type] = ACTIONS(47),
    [anon_sym_LPAREN] = ACTIONS(49),
    [anon_sym_for] = ACTIONS(51),
    [anon_sym_assembly] = ACTIONS(53),
    [anon_sym_break] = ACTIONS(55),
    [anon_sym_continue] = ACTIONS(57),
    [anon_sym_true] = ACTIONS(59),
    [anon_sym_false] = ACTIONS(61),
    [anon_sym_if] = ACTIONS(63),
    [anon_sym_function] = ACTIONS(65),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_return] = ACTIONS(67),
    [anon_sym_revert] = ACTIONS(69),
    [sym__unchecked] = ACTIONS(71),
    [anon_sym_var] = ACTIONS(73),
    [anon_sym_while] = ACTIONS(75),
    [anon_sym_do] = ACTIONS(77),
    [anon_sym_try] = ACTIONS(79),
    [anon_sym_emit] = ACTIONS(81),
    [anon_sym_payable] = ACTIONS(83),
    [anon_sym_new] = ACTIONS(85),
    [anon_sym_LBRACK] = ACTIONS(87),
    [anon_sym_PLUS] = ACTIONS(39),
    [anon_sym_BANG] = ACTIONS(41),
    [anon_sym_delete] = ACTIONS(89),
    [anon_sym_PLUS_PLUS] = ACTIONS(91),
    [anon_sym_DASH_DASH] = ACTIONS(91),
    [anon_sym_mapping] = ACTIONS(35),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [aux_sym__decimal_number_token1] = ACTIONS(93),
    [aux_sym__decimal_number_token2] = ACTIONS(95),
    [aux_sym__hex_number_token1] = ACTIONS(95),
    [anon_sym_hex] = ACTIONS(97),
    [anon_sym_DQUOTE] = ACTIONS(99),
    [anon_sym_SQUOTE] = ACTIONS(101),
    [anon_sym_unicode] = ACTIONS(103),
    [sym_comment] = ACTIONS(3),
  },
  [5] = {
    [sym__statement] = STATE(5),
    [sym_assembly_statement] = STATE(5),
    [sym_block_statement] = STATE(5),
    [sym_variable_declaration_statement] = STATE(5),
    [sym_variable_declaration] = STATE(703),
    [sym_variable_declaration_tuple] = STATE(721),
    [sym_expression_statement] = STATE(5),
    [sym_if_statement] = STATE(5),
    [sym_for_statement] = STATE(5),
    [sym_while_statement] = STATE(5),
    [sym_do_while_statement] = STATE(5),
    [sym_continue_statement] = STATE(5),
    [sym_break_statement] = STATE(5),
    [sym_revert_statement] = STATE(5),
    [sym_try_statement] = STATE(5),
    [sym_return_statement] = STATE(5),
    [sym_emit_statement] = STATE(5),
    [sym__expression] = STATE(415),
    [sym__primary_expression] = STATE(415),
    [sym_type_cast_expression] = STATE(415),
    [sym_ternary_expression] = STATE(415),
    [sym_new_expression] = STATE(415),
    [sym_tuple_expression] = STATE(415),
    [sym_inline_array_expression] = STATE(415),
    [sym_binary_expression] = STATE(415),
    [sym_unary_expression] = STATE(415),
    [sym_update_expression] = STATE(415),
    [sym_member_expression] = STATE(415),
    [sym_array_access] = STATE(415),
    [sym_slice_access] = STATE(415),
    [sym_struct_expression] = STATE(415),
    [sym_parenthesized_expression] = STATE(415),
    [sym_assignment_expression] = STATE(415),
    [sym_augmented_assignment_expression] = STATE(415),
    [sym_call_expression] = STATE(415),
    [sym_payable_conversion_expression] = STATE(415),
    [sym_meta_type_expression] = STATE(415),
    [sym_type_name] = STATE(470),
    [sym__array_type] = STATE(321),
    [sym__function_type] = STATE(323),
    [sym_user_defined_type] = STATE(390),
    [sym__identifier_path] = STATE(308),
    [sym__mapping] = STATE(317),
    [sym_primitive_type] = STATE(391),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym__literal] = STATE(415),
    [sym_string_literal] = STATE(415),
    [sym_number_literal] = STATE(415),
    [sym__decimal_number] = STATE(316),
    [sym__hex_number] = STATE(316),
    [sym_true] = STATE(371),
    [sym_false] = STATE(371),
    [sym_boolean_literal] = STATE(415),
    [sym_hex_string_literal] = STATE(415),
    [sym_unicode_string_literal] = STATE(415),
    [sym_string] = STATE(333),
    [aux_sym_block_statement_repeat1] = STATE(5),
    [aux_sym_string_literal_repeat1] = STATE(333),
    [aux_sym_hex_string_literal_repeat2] = STATE(336),
    [aux_sym_unicode_string_literal_repeat3] = STATE(335),
    [sym_identifier] = ACTIONS(111),
    [anon_sym_DASH] = ACTIONS(114),
    [anon_sym_TILDE] = ACTIONS(117),
    [anon_sym_LBRACE] = ACTIONS(120),
    [anon_sym_RBRACE] = ACTIONS(123),
    [anon_sym_type] = ACTIONS(125),
    [anon_sym_LPAREN] = ACTIONS(128),
    [anon_sym_for] = ACTIONS(131),
    [anon_sym_assembly] = ACTIONS(134),
    [anon_sym_break] = ACTIONS(137),
    [anon_sym_continue] = ACTIONS(140),
    [anon_sym_true] = ACTIONS(143),
    [anon_sym_false] = ACTIONS(146),
    [anon_sym_if] = ACTIONS(149),
    [anon_sym_function] = ACTIONS(152),
    [anon_sym_byte] = ACTIONS(155),
    [anon_sym_address] = ACTIONS(158),
    [anon_sym_return] = ACTIONS(161),
    [anon_sym_revert] = ACTIONS(164),
    [sym__unchecked] = ACTIONS(167),
    [anon_sym_var] = ACTIONS(170),
    [anon_sym_while] = ACTIONS(173),
    [anon_sym_do] = ACTIONS(176),
    [anon_sym_try] = ACTIONS(179),
    [anon_sym_emit] = ACTIONS(182),
    [anon_sym_payable] = ACTIONS(185),
    [anon_sym_new] = ACTIONS(188),
    [anon_sym_LBRACK] = ACTIONS(191),
    [anon_sym_PLUS] = ACTIONS(114),
    [anon_sym_BANG] = ACTIONS(117),
    [anon_sym_delete] = ACTIONS(194),
    [anon_sym_PLUS_PLUS] = ACTIONS(197),
    [anon_sym_DASH_DASH] = ACTIONS(197),
    [anon_sym_mapping] = ACTIONS(200),
    [anon_sym_bool] = ACTIONS(155),
    [anon_sym_string] = ACTIONS(155),
    [anon_sym_int] = ACTIONS(155),
    [anon_sym_int8] = ACTIONS(155),
    [anon_sym_int16] = ACTIONS(155),
    [anon_sym_int24] = ACTIONS(155),
    [anon_sym_int32] = ACTIONS(155),
    [anon_sym_int40] = ACTIONS(155),
    [anon_sym_int48] = ACTIONS(155),
    [anon_sym_int56] = ACTIONS(155),
    [anon_sym_int64] = ACTIONS(155),
    [anon_sym_int72] = ACTIONS(155),
    [anon_sym_int80] = ACTIONS(155),
    [anon_sym_int88] = ACTIONS(155),
    [anon_sym_int96] = ACTIONS(155),
    [anon_sym_int104] = ACTIONS(155),
    [anon_sym_int112] = ACTIONS(155),
    [anon_sym_int120] = ACTIONS(155),
    [anon_sym_int128] = ACTIONS(155),
    [anon_sym_int136] = ACTIONS(155),
    [anon_sym_int144] = ACTIONS(155),
    [anon_sym_int152] = ACTIONS(155),
    [anon_sym_int160] = ACTIONS(155),
    [anon_sym_int168] = ACTIONS(155),
    [anon_sym_int176] = ACTIONS(155),
    [anon_sym_int184] = ACTIONS(155),
    [anon_sym_int192] = ACTIONS(155),
    [anon_sym_int200] = ACTIONS(155),
    [anon_sym_int208] = ACTIONS(155),
    [anon_sym_int216] = ACTIONS(155),
    [anon_sym_int224] = ACTIONS(155),
    [anon_sym_int232] = ACTIONS(155),
    [anon_sym_int240] = ACTIONS(155),
    [anon_sym_int248] = ACTIONS(155),
    [anon_sym_int256] = ACTIONS(155),
    [anon_sym_uint] = ACTIONS(155),
    [anon_sym_uint8] = ACTIONS(155),
    [anon_sym_uint16] = ACTIONS(155),
    [anon_sym_uint24] = ACTIONS(155),
    [anon_sym_uint32] = ACTIONS(155),
    [anon_sym_uint40] = ACTIONS(155),
    [anon_sym_uint48] = ACTIONS(155),
    [anon_sym_uint56] = ACTIONS(155),
    [anon_sym_uint64] = ACTIONS(155),
    [anon_sym_uint72] = ACTIONS(155),
    [anon_sym_uint80] = ACTIONS(155),
    [anon_sym_uint88] = ACTIONS(155),
    [anon_sym_uint96] = ACTIONS(155),
    [anon_sym_uint104] = ACTIONS(155),
    [anon_sym_uint112] = ACTIONS(155),
    [anon_sym_uint120] = ACTIONS(155),
    [anon_sym_uint128] = ACTIONS(155),
    [anon_sym_uint136] = ACTIONS(155),
    [anon_sym_uint144] = ACTIONS(155),
    [anon_sym_uint152] = ACTIONS(155),
    [anon_sym_uint160] = ACTIONS(155),
    [anon_sym_uint168] = ACTIONS(155),
    [anon_sym_uint176] = ACTIONS(155),
    [anon_sym_uint184] = ACTIONS(155),
    [anon_sym_uint192] = ACTIONS(155),
    [anon_sym_uint200] = ACTIONS(155),
    [anon_sym_uint208] = ACTIONS(155),
    [anon_sym_uint216] = ACTIONS(155),
    [anon_sym_uint224] = ACTIONS(155),
    [anon_sym_uint232] = ACTIONS(155),
    [anon_sym_uint240] = ACTIONS(155),
    [anon_sym_uint248] = ACTIONS(155),
    [anon_sym_uint256] = ACTIONS(155),
    [anon_sym_bytes] = ACTIONS(155),
    [anon_sym_bytes1] = ACTIONS(155),
    [anon_sym_bytes2] = ACTIONS(155),
    [anon_sym_bytes3] = ACTIONS(155),
    [anon_sym_bytes4] = ACTIONS(155),
    [anon_sym_bytes5] = ACTIONS(155),
    [anon_sym_bytes6] = ACTIONS(155),
    [anon_sym_bytes7] = ACTIONS(155),
    [anon_sym_bytes8] = ACTIONS(155),
    [anon_sym_bytes9] = ACTIONS(155),
    [anon_sym_bytes10] = ACTIONS(155),
    [anon_sym_bytes11] = ACTIONS(155),
    [anon_sym_bytes12] = ACTIONS(155),
    [anon_sym_bytes13] = ACTIONS(155),
    [anon_sym_bytes14] = ACTIONS(155),
    [anon_sym_bytes15] = ACTIONS(155),
    [anon_sym_bytes16] = ACTIONS(155),
    [anon_sym_bytes17] = ACTIONS(155),
    [anon_sym_bytes18] = ACTIONS(155),
    [anon_sym_bytes19] = ACTIONS(155),
    [anon_sym_bytes20] = ACTIONS(155),
    [anon_sym_bytes21] = ACTIONS(155),
    [anon_sym_bytes22] = ACTIONS(155),
    [anon_sym_bytes23] = ACTIONS(155),
    [anon_sym_bytes24] = ACTIONS(155),
    [anon_sym_bytes25] = ACTIONS(155),
    [anon_sym_bytes26] = ACTIONS(155),
    [anon_sym_bytes27] = ACTIONS(155),
    [anon_sym_bytes28] = ACTIONS(155),
    [anon_sym_bytes29] = ACTIONS(155),
    [anon_sym_bytes30] = ACTIONS(155),
    [anon_sym_bytes31] = ACTIONS(155),
    [anon_sym_bytes32] = ACTIONS(155),
    [anon_sym_fixed] = ACTIONS(155),
    [aux_sym__fixed_token1] = ACTIONS(155),
    [anon_sym_ufixed] = ACTIONS(155),
    [aux_sym__ufixed_token1] = ACTIONS(155),
    [aux_sym__decimal_number_token1] = ACTIONS(203),
    [aux_sym__decimal_number_token2] = ACTIONS(206),
    [aux_sym__hex_number_token1] = ACTIONS(206),
    [anon_sym_hex] = ACTIONS(209),
    [anon_sym_DQUOTE] = ACTIONS(212),
    [anon_sym_SQUOTE] = ACTIONS(215),
    [anon_sym_unicode] = ACTIONS(218),
    [sym_comment] = ACTIONS(3),
  },
  [6] = {
    [sym__statement] = STATE(10),
    [sym_assembly_statement] = STATE(10),
    [sym_block_statement] = STATE(10),
    [sym_variable_declaration_statement] = STATE(10),
    [sym_variable_declaration] = STATE(703),
    [sym_variable_declaration_tuple] = STATE(721),
    [sym_expression_statement] = STATE(10),
    [sym_if_statement] = STATE(10),
    [sym_for_statement] = STATE(10),
    [sym_while_statement] = STATE(10),
    [sym_do_while_statement] = STATE(10),
    [sym_continue_statement] = STATE(10),
    [sym_break_statement] = STATE(10),
    [sym_revert_statement] = STATE(10),
    [sym_try_statement] = STATE(10),
    [sym_return_statement] = STATE(10),
    [sym_emit_statement] = STATE(10),
    [sym__expression] = STATE(415),
    [sym__primary_expression] = STATE(415),
    [sym_type_cast_expression] = STATE(415),
    [sym_ternary_expression] = STATE(415),
    [sym_new_expression] = STATE(415),
    [sym_tuple_expression] = STATE(415),
    [sym_inline_array_expression] = STATE(415),
    [sym_binary_expression] = STATE(415),
    [sym_unary_expression] = STATE(415),
    [sym_update_expression] = STATE(415),
    [sym_member_expression] = STATE(415),
    [sym_array_access] = STATE(415),
    [sym_slice_access] = STATE(415),
    [sym_struct_expression] = STATE(415),
    [sym_parenthesized_expression] = STATE(415),
    [sym_assignment_expression] = STATE(415),
    [sym_augmented_assignment_expression] = STATE(415),
    [sym_call_expression] = STATE(415),
    [sym_payable_conversion_expression] = STATE(415),
    [sym_meta_type_expression] = STATE(415),
    [sym_type_name] = STATE(470),
    [sym__array_type] = STATE(321),
    [sym__function_type] = STATE(323),
    [sym_user_defined_type] = STATE(390),
    [sym__identifier_path] = STATE(308),
    [sym__mapping] = STATE(317),
    [sym_primitive_type] = STATE(391),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym__literal] = STATE(415),
    [sym_string_literal] = STATE(415),
    [sym_number_literal] = STATE(415),
    [sym__decimal_number] = STATE(316),
    [sym__hex_number] = STATE(316),
    [sym_true] = STATE(371),
    [sym_false] = STATE(371),
    [sym_boolean_literal] = STATE(415),
    [sym_hex_string_literal] = STATE(415),
    [sym_unicode_string_literal] = STATE(415),
    [sym_string] = STATE(333),
    [aux_sym_block_statement_repeat1] = STATE(10),
    [aux_sym_string_literal_repeat1] = STATE(333),
    [aux_sym_hex_string_literal_repeat2] = STATE(336),
    [aux_sym_unicode_string_literal_repeat3] = STATE(335),
    [sym_identifier] = ACTIONS(105),
    [anon_sym_DASH] = ACTIONS(39),
    [anon_sym_TILDE] = ACTIONS(41),
    [anon_sym_LBRACE] = ACTIONS(43),
    [anon_sym_RBRACE] = ACTIONS(221),
    [anon_sym_type] = ACTIONS(47),
    [anon_sym_LPAREN] = ACTIONS(49),
    [anon_sym_for] = ACTIONS(51),
    [anon_sym_assembly] = ACTIONS(53),
    [anon_sym_break] = ACTIONS(55),
    [anon_sym_continue] = ACTIONS(57),
    [anon_sym_true] = ACTIONS(59),
    [anon_sym_false] = ACTIONS(61),
    [anon_sym_if] = ACTIONS(63),
    [anon_sym_function] = ACTIONS(65),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_return] = ACTIONS(67),
    [anon_sym_revert] = ACTIONS(69),
    [sym__unchecked] = ACTIONS(71),
    [anon_sym_var] = ACTIONS(73),
    [anon_sym_while] = ACTIONS(75),
    [anon_sym_do] = ACTIONS(77),
    [anon_sym_try] = ACTIONS(79),
    [anon_sym_emit] = ACTIONS(81),
    [anon_sym_payable] = ACTIONS(83),
    [anon_sym_new] = ACTIONS(85),
    [anon_sym_LBRACK] = ACTIONS(87),
    [anon_sym_PLUS] = ACTIONS(39),
    [anon_sym_BANG] = ACTIONS(41),
    [anon_sym_delete] = ACTIONS(89),
    [anon_sym_PLUS_PLUS] = ACTIONS(91),
    [anon_sym_DASH_DASH] = ACTIONS(91),
    [anon_sym_mapping] = ACTIONS(35),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [aux_sym__decimal_number_token1] = ACTIONS(93),
    [aux_sym__decimal_number_token2] = ACTIONS(95),
    [aux_sym__hex_number_token1] = ACTIONS(95),
    [anon_sym_hex] = ACTIONS(97),
    [anon_sym_DQUOTE] = ACTIONS(99),
    [anon_sym_SQUOTE] = ACTIONS(101),
    [anon_sym_unicode] = ACTIONS(103),
    [sym_comment] = ACTIONS(3),
  },
  [7] = {
    [sym__statement] = STATE(11),
    [sym_assembly_statement] = STATE(11),
    [sym_block_statement] = STATE(11),
    [sym_variable_declaration_statement] = STATE(11),
    [sym_variable_declaration] = STATE(703),
    [sym_variable_declaration_tuple] = STATE(721),
    [sym_expression_statement] = STATE(11),
    [sym_if_statement] = STATE(11),
    [sym_for_statement] = STATE(11),
    [sym_while_statement] = STATE(11),
    [sym_do_while_statement] = STATE(11),
    [sym_continue_statement] = STATE(11),
    [sym_break_statement] = STATE(11),
    [sym_revert_statement] = STATE(11),
    [sym_try_statement] = STATE(11),
    [sym_return_statement] = STATE(11),
    [sym_emit_statement] = STATE(11),
    [sym__expression] = STATE(415),
    [sym__primary_expression] = STATE(415),
    [sym_type_cast_expression] = STATE(415),
    [sym_ternary_expression] = STATE(415),
    [sym_new_expression] = STATE(415),
    [sym_tuple_expression] = STATE(415),
    [sym_inline_array_expression] = STATE(415),
    [sym_binary_expression] = STATE(415),
    [sym_unary_expression] = STATE(415),
    [sym_update_expression] = STATE(415),
    [sym_member_expression] = STATE(415),
    [sym_array_access] = STATE(415),
    [sym_slice_access] = STATE(415),
    [sym_struct_expression] = STATE(415),
    [sym_parenthesized_expression] = STATE(415),
    [sym_assignment_expression] = STATE(415),
    [sym_augmented_assignment_expression] = STATE(415),
    [sym_call_expression] = STATE(415),
    [sym_payable_conversion_expression] = STATE(415),
    [sym_meta_type_expression] = STATE(415),
    [sym_type_name] = STATE(470),
    [sym__array_type] = STATE(321),
    [sym__function_type] = STATE(323),
    [sym_user_defined_type] = STATE(390),
    [sym__identifier_path] = STATE(308),
    [sym__mapping] = STATE(317),
    [sym_primitive_type] = STATE(391),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym__literal] = STATE(415),
    [sym_string_literal] = STATE(415),
    [sym_number_literal] = STATE(415),
    [sym__decimal_number] = STATE(316),
    [sym__hex_number] = STATE(316),
    [sym_true] = STATE(371),
    [sym_false] = STATE(371),
    [sym_boolean_literal] = STATE(415),
    [sym_hex_string_literal] = STATE(415),
    [sym_unicode_string_literal] = STATE(415),
    [sym_string] = STATE(333),
    [aux_sym_block_statement_repeat1] = STATE(11),
    [aux_sym_string_literal_repeat1] = STATE(333),
    [aux_sym_hex_string_literal_repeat2] = STATE(336),
    [aux_sym_unicode_string_literal_repeat3] = STATE(335),
    [sym_identifier] = ACTIONS(105),
    [anon_sym_DASH] = ACTIONS(39),
    [anon_sym_TILDE] = ACTIONS(41),
    [anon_sym_LBRACE] = ACTIONS(43),
    [anon_sym_RBRACE] = ACTIONS(223),
    [anon_sym_type] = ACTIONS(47),
    [anon_sym_LPAREN] = ACTIONS(49),
    [anon_sym_for] = ACTIONS(51),
    [anon_sym_assembly] = ACTIONS(53),
    [anon_sym_break] = ACTIONS(55),
    [anon_sym_continue] = ACTIONS(57),
    [anon_sym_true] = ACTIONS(59),
    [anon_sym_false] = ACTIONS(61),
    [anon_sym_if] = ACTIONS(63),
    [anon_sym_function] = ACTIONS(65),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_return] = ACTIONS(67),
    [anon_sym_revert] = ACTIONS(69),
    [sym__unchecked] = ACTIONS(71),
    [anon_sym_var] = ACTIONS(73),
    [anon_sym_while] = ACTIONS(75),
    [anon_sym_do] = ACTIONS(77),
    [anon_sym_try] = ACTIONS(79),
    [anon_sym_emit] = ACTIONS(81),
    [anon_sym_payable] = ACTIONS(83),
    [anon_sym_new] = ACTIONS(85),
    [anon_sym_LBRACK] = ACTIONS(87),
    [anon_sym_PLUS] = ACTIONS(39),
    [anon_sym_BANG] = ACTIONS(41),
    [anon_sym_delete] = ACTIONS(89),
    [anon_sym_PLUS_PLUS] = ACTIONS(91),
    [anon_sym_DASH_DASH] = ACTIONS(91),
    [anon_sym_mapping] = ACTIONS(35),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [aux_sym__decimal_number_token1] = ACTIONS(93),
    [aux_sym__decimal_number_token2] = ACTIONS(95),
    [aux_sym__hex_number_token1] = ACTIONS(95),
    [anon_sym_hex] = ACTIONS(97),
    [anon_sym_DQUOTE] = ACTIONS(99),
    [anon_sym_SQUOTE] = ACTIONS(101),
    [anon_sym_unicode] = ACTIONS(103),
    [sym_comment] = ACTIONS(3),
  },
  [8] = {
    [sym__statement] = STATE(5),
    [sym_assembly_statement] = STATE(5),
    [sym_block_statement] = STATE(5),
    [sym_variable_declaration_statement] = STATE(5),
    [sym_variable_declaration] = STATE(703),
    [sym_variable_declaration_tuple] = STATE(721),
    [sym_expression_statement] = STATE(5),
    [sym_if_statement] = STATE(5),
    [sym_for_statement] = STATE(5),
    [sym_while_statement] = STATE(5),
    [sym_do_while_statement] = STATE(5),
    [sym_continue_statement] = STATE(5),
    [sym_break_statement] = STATE(5),
    [sym_revert_statement] = STATE(5),
    [sym_try_statement] = STATE(5),
    [sym_return_statement] = STATE(5),
    [sym_emit_statement] = STATE(5),
    [sym__expression] = STATE(415),
    [sym__primary_expression] = STATE(415),
    [sym_type_cast_expression] = STATE(415),
    [sym_ternary_expression] = STATE(415),
    [sym_new_expression] = STATE(415),
    [sym_tuple_expression] = STATE(415),
    [sym_inline_array_expression] = STATE(415),
    [sym_binary_expression] = STATE(415),
    [sym_unary_expression] = STATE(415),
    [sym_update_expression] = STATE(415),
    [sym_member_expression] = STATE(415),
    [sym_array_access] = STATE(415),
    [sym_slice_access] = STATE(415),
    [sym_struct_expression] = STATE(415),
    [sym_parenthesized_expression] = STATE(415),
    [sym_assignment_expression] = STATE(415),
    [sym_augmented_assignment_expression] = STATE(415),
    [sym_call_expression] = STATE(415),
    [sym_payable_conversion_expression] = STATE(415),
    [sym_meta_type_expression] = STATE(415),
    [sym_type_name] = STATE(470),
    [sym__array_type] = STATE(321),
    [sym__function_type] = STATE(323),
    [sym_user_defined_type] = STATE(390),
    [sym__identifier_path] = STATE(308),
    [sym__mapping] = STATE(317),
    [sym_primitive_type] = STATE(391),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym__literal] = STATE(415),
    [sym_string_literal] = STATE(415),
    [sym_number_literal] = STATE(415),
    [sym__decimal_number] = STATE(316),
    [sym__hex_number] = STATE(316),
    [sym_true] = STATE(371),
    [sym_false] = STATE(371),
    [sym_boolean_literal] = STATE(415),
    [sym_hex_string_literal] = STATE(415),
    [sym_unicode_string_literal] = STATE(415),
    [sym_string] = STATE(333),
    [aux_sym_block_statement_repeat1] = STATE(5),
    [aux_sym_string_literal_repeat1] = STATE(333),
    [aux_sym_hex_string_literal_repeat2] = STATE(336),
    [aux_sym_unicode_string_literal_repeat3] = STATE(335),
    [sym_identifier] = ACTIONS(105),
    [anon_sym_DASH] = ACTIONS(39),
    [anon_sym_TILDE] = ACTIONS(41),
    [anon_sym_LBRACE] = ACTIONS(43),
    [anon_sym_RBRACE] = ACTIONS(225),
    [anon_sym_type] = ACTIONS(47),
    [anon_sym_LPAREN] = ACTIONS(49),
    [anon_sym_for] = ACTIONS(51),
    [anon_sym_assembly] = ACTIONS(53),
    [anon_sym_break] = ACTIONS(55),
    [anon_sym_continue] = ACTIONS(57),
    [anon_sym_true] = ACTIONS(59),
    [anon_sym_false] = ACTIONS(61),
    [anon_sym_if] = ACTIONS(63),
    [anon_sym_function] = ACTIONS(65),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_return] = ACTIONS(67),
    [anon_sym_revert] = ACTIONS(69),
    [sym__unchecked] = ACTIONS(71),
    [anon_sym_var] = ACTIONS(73),
    [anon_sym_while] = ACTIONS(75),
    [anon_sym_do] = ACTIONS(77),
    [anon_sym_try] = ACTIONS(79),
    [anon_sym_emit] = ACTIONS(81),
    [anon_sym_payable] = ACTIONS(83),
    [anon_sym_new] = ACTIONS(85),
    [anon_sym_LBRACK] = ACTIONS(87),
    [anon_sym_PLUS] = ACTIONS(39),
    [anon_sym_BANG] = ACTIONS(41),
    [anon_sym_delete] = ACTIONS(89),
    [anon_sym_PLUS_PLUS] = ACTIONS(91),
    [anon_sym_DASH_DASH] = ACTIONS(91),
    [anon_sym_mapping] = ACTIONS(35),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [aux_sym__decimal_number_token1] = ACTIONS(93),
    [aux_sym__decimal_number_token2] = ACTIONS(95),
    [aux_sym__hex_number_token1] = ACTIONS(95),
    [anon_sym_hex] = ACTIONS(97),
    [anon_sym_DQUOTE] = ACTIONS(99),
    [anon_sym_SQUOTE] = ACTIONS(101),
    [anon_sym_unicode] = ACTIONS(103),
    [sym_comment] = ACTIONS(3),
  },
  [9] = {
    [sym__statement] = STATE(8),
    [sym_assembly_statement] = STATE(8),
    [sym_block_statement] = STATE(8),
    [sym_variable_declaration_statement] = STATE(8),
    [sym_variable_declaration] = STATE(703),
    [sym_variable_declaration_tuple] = STATE(721),
    [sym_expression_statement] = STATE(8),
    [sym_if_statement] = STATE(8),
    [sym_for_statement] = STATE(8),
    [sym_while_statement] = STATE(8),
    [sym_do_while_statement] = STATE(8),
    [sym_continue_statement] = STATE(8),
    [sym_break_statement] = STATE(8),
    [sym_revert_statement] = STATE(8),
    [sym_try_statement] = STATE(8),
    [sym_return_statement] = STATE(8),
    [sym_emit_statement] = STATE(8),
    [sym__expression] = STATE(415),
    [sym__primary_expression] = STATE(415),
    [sym_type_cast_expression] = STATE(415),
    [sym_ternary_expression] = STATE(415),
    [sym_new_expression] = STATE(415),
    [sym_tuple_expression] = STATE(415),
    [sym_inline_array_expression] = STATE(415),
    [sym_binary_expression] = STATE(415),
    [sym_unary_expression] = STATE(415),
    [sym_update_expression] = STATE(415),
    [sym_member_expression] = STATE(415),
    [sym_array_access] = STATE(415),
    [sym_slice_access] = STATE(415),
    [sym_struct_expression] = STATE(415),
    [sym_parenthesized_expression] = STATE(415),
    [sym_assignment_expression] = STATE(415),
    [sym_augmented_assignment_expression] = STATE(415),
    [sym_call_expression] = STATE(415),
    [sym_payable_conversion_expression] = STATE(415),
    [sym_meta_type_expression] = STATE(415),
    [sym_type_name] = STATE(470),
    [sym__array_type] = STATE(321),
    [sym__function_type] = STATE(323),
    [sym_user_defined_type] = STATE(390),
    [sym__identifier_path] = STATE(308),
    [sym__mapping] = STATE(317),
    [sym_primitive_type] = STATE(391),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym__literal] = STATE(415),
    [sym_string_literal] = STATE(415),
    [sym_number_literal] = STATE(415),
    [sym__decimal_number] = STATE(316),
    [sym__hex_number] = STATE(316),
    [sym_true] = STATE(371),
    [sym_false] = STATE(371),
    [sym_boolean_literal] = STATE(415),
    [sym_hex_string_literal] = STATE(415),
    [sym_unicode_string_literal] = STATE(415),
    [sym_string] = STATE(333),
    [aux_sym_block_statement_repeat1] = STATE(8),
    [aux_sym_string_literal_repeat1] = STATE(333),
    [aux_sym_hex_string_literal_repeat2] = STATE(336),
    [aux_sym_unicode_string_literal_repeat3] = STATE(335),
    [sym_identifier] = ACTIONS(105),
    [anon_sym_DASH] = ACTIONS(39),
    [anon_sym_TILDE] = ACTIONS(41),
    [anon_sym_LBRACE] = ACTIONS(43),
    [anon_sym_RBRACE] = ACTIONS(227),
    [anon_sym_type] = ACTIONS(47),
    [anon_sym_LPAREN] = ACTIONS(49),
    [anon_sym_for] = ACTIONS(51),
    [anon_sym_assembly] = ACTIONS(53),
    [anon_sym_break] = ACTIONS(55),
    [anon_sym_continue] = ACTIONS(57),
    [anon_sym_true] = ACTIONS(59),
    [anon_sym_false] = ACTIONS(61),
    [anon_sym_if] = ACTIONS(63),
    [anon_sym_function] = ACTIONS(65),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_return] = ACTIONS(67),
    [anon_sym_revert] = ACTIONS(69),
    [sym__unchecked] = ACTIONS(71),
    [anon_sym_var] = ACTIONS(73),
    [anon_sym_while] = ACTIONS(75),
    [anon_sym_do] = ACTIONS(77),
    [anon_sym_try] = ACTIONS(79),
    [anon_sym_emit] = ACTIONS(81),
    [anon_sym_payable] = ACTIONS(83),
    [anon_sym_new] = ACTIONS(85),
    [anon_sym_LBRACK] = ACTIONS(87),
    [anon_sym_PLUS] = ACTIONS(39),
    [anon_sym_BANG] = ACTIONS(41),
    [anon_sym_delete] = ACTIONS(89),
    [anon_sym_PLUS_PLUS] = ACTIONS(91),
    [anon_sym_DASH_DASH] = ACTIONS(91),
    [anon_sym_mapping] = ACTIONS(35),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [aux_sym__decimal_number_token1] = ACTIONS(93),
    [aux_sym__decimal_number_token2] = ACTIONS(95),
    [aux_sym__hex_number_token1] = ACTIONS(95),
    [anon_sym_hex] = ACTIONS(97),
    [anon_sym_DQUOTE] = ACTIONS(99),
    [anon_sym_SQUOTE] = ACTIONS(101),
    [anon_sym_unicode] = ACTIONS(103),
    [sym_comment] = ACTIONS(3),
  },
  [10] = {
    [sym__statement] = STATE(5),
    [sym_assembly_statement] = STATE(5),
    [sym_block_statement] = STATE(5),
    [sym_variable_declaration_statement] = STATE(5),
    [sym_variable_declaration] = STATE(703),
    [sym_variable_declaration_tuple] = STATE(721),
    [sym_expression_statement] = STATE(5),
    [sym_if_statement] = STATE(5),
    [sym_for_statement] = STATE(5),
    [sym_while_statement] = STATE(5),
    [sym_do_while_statement] = STATE(5),
    [sym_continue_statement] = STATE(5),
    [sym_break_statement] = STATE(5),
    [sym_revert_statement] = STATE(5),
    [sym_try_statement] = STATE(5),
    [sym_return_statement] = STATE(5),
    [sym_emit_statement] = STATE(5),
    [sym__expression] = STATE(415),
    [sym__primary_expression] = STATE(415),
    [sym_type_cast_expression] = STATE(415),
    [sym_ternary_expression] = STATE(415),
    [sym_new_expression] = STATE(415),
    [sym_tuple_expression] = STATE(415),
    [sym_inline_array_expression] = STATE(415),
    [sym_binary_expression] = STATE(415),
    [sym_unary_expression] = STATE(415),
    [sym_update_expression] = STATE(415),
    [sym_member_expression] = STATE(415),
    [sym_array_access] = STATE(415),
    [sym_slice_access] = STATE(415),
    [sym_struct_expression] = STATE(415),
    [sym_parenthesized_expression] = STATE(415),
    [sym_assignment_expression] = STATE(415),
    [sym_augmented_assignment_expression] = STATE(415),
    [sym_call_expression] = STATE(415),
    [sym_payable_conversion_expression] = STATE(415),
    [sym_meta_type_expression] = STATE(415),
    [sym_type_name] = STATE(470),
    [sym__array_type] = STATE(321),
    [sym__function_type] = STATE(323),
    [sym_user_defined_type] = STATE(390),
    [sym__identifier_path] = STATE(308),
    [sym__mapping] = STATE(317),
    [sym_primitive_type] = STATE(391),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym__literal] = STATE(415),
    [sym_string_literal] = STATE(415),
    [sym_number_literal] = STATE(415),
    [sym__decimal_number] = STATE(316),
    [sym__hex_number] = STATE(316),
    [sym_true] = STATE(371),
    [sym_false] = STATE(371),
    [sym_boolean_literal] = STATE(415),
    [sym_hex_string_literal] = STATE(415),
    [sym_unicode_string_literal] = STATE(415),
    [sym_string] = STATE(333),
    [aux_sym_block_statement_repeat1] = STATE(5),
    [aux_sym_string_literal_repeat1] = STATE(333),
    [aux_sym_hex_string_literal_repeat2] = STATE(336),
    [aux_sym_unicode_string_literal_repeat3] = STATE(335),
    [sym_identifier] = ACTIONS(105),
    [anon_sym_DASH] = ACTIONS(39),
    [anon_sym_TILDE] = ACTIONS(41),
    [anon_sym_LBRACE] = ACTIONS(43),
    [anon_sym_RBRACE] = ACTIONS(229),
    [anon_sym_type] = ACTIONS(47),
    [anon_sym_LPAREN] = ACTIONS(49),
    [anon_sym_for] = ACTIONS(51),
    [anon_sym_assembly] = ACTIONS(53),
    [anon_sym_break] = ACTIONS(55),
    [anon_sym_continue] = ACTIONS(57),
    [anon_sym_true] = ACTIONS(59),
    [anon_sym_false] = ACTIONS(61),
    [anon_sym_if] = ACTIONS(63),
    [anon_sym_function] = ACTIONS(65),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_return] = ACTIONS(67),
    [anon_sym_revert] = ACTIONS(69),
    [sym__unchecked] = ACTIONS(71),
    [anon_sym_var] = ACTIONS(73),
    [anon_sym_while] = ACTIONS(75),
    [anon_sym_do] = ACTIONS(77),
    [anon_sym_try] = ACTIONS(79),
    [anon_sym_emit] = ACTIONS(81),
    [anon_sym_payable] = ACTIONS(83),
    [anon_sym_new] = ACTIONS(85),
    [anon_sym_LBRACK] = ACTIONS(87),
    [anon_sym_PLUS] = ACTIONS(39),
    [anon_sym_BANG] = ACTIONS(41),
    [anon_sym_delete] = ACTIONS(89),
    [anon_sym_PLUS_PLUS] = ACTIONS(91),
    [anon_sym_DASH_DASH] = ACTIONS(91),
    [anon_sym_mapping] = ACTIONS(35),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [aux_sym__decimal_number_token1] = ACTIONS(93),
    [aux_sym__decimal_number_token2] = ACTIONS(95),
    [aux_sym__hex_number_token1] = ACTIONS(95),
    [anon_sym_hex] = ACTIONS(97),
    [anon_sym_DQUOTE] = ACTIONS(99),
    [anon_sym_SQUOTE] = ACTIONS(101),
    [anon_sym_unicode] = ACTIONS(103),
    [sym_comment] = ACTIONS(3),
  },
  [11] = {
    [sym__statement] = STATE(5),
    [sym_assembly_statement] = STATE(5),
    [sym_block_statement] = STATE(5),
    [sym_variable_declaration_statement] = STATE(5),
    [sym_variable_declaration] = STATE(703),
    [sym_variable_declaration_tuple] = STATE(721),
    [sym_expression_statement] = STATE(5),
    [sym_if_statement] = STATE(5),
    [sym_for_statement] = STATE(5),
    [sym_while_statement] = STATE(5),
    [sym_do_while_statement] = STATE(5),
    [sym_continue_statement] = STATE(5),
    [sym_break_statement] = STATE(5),
    [sym_revert_statement] = STATE(5),
    [sym_try_statement] = STATE(5),
    [sym_return_statement] = STATE(5),
    [sym_emit_statement] = STATE(5),
    [sym__expression] = STATE(415),
    [sym__primary_expression] = STATE(415),
    [sym_type_cast_expression] = STATE(415),
    [sym_ternary_expression] = STATE(415),
    [sym_new_expression] = STATE(415),
    [sym_tuple_expression] = STATE(415),
    [sym_inline_array_expression] = STATE(415),
    [sym_binary_expression] = STATE(415),
    [sym_unary_expression] = STATE(415),
    [sym_update_expression] = STATE(415),
    [sym_member_expression] = STATE(415),
    [sym_array_access] = STATE(415),
    [sym_slice_access] = STATE(415),
    [sym_struct_expression] = STATE(415),
    [sym_parenthesized_expression] = STATE(415),
    [sym_assignment_expression] = STATE(415),
    [sym_augmented_assignment_expression] = STATE(415),
    [sym_call_expression] = STATE(415),
    [sym_payable_conversion_expression] = STATE(415),
    [sym_meta_type_expression] = STATE(415),
    [sym_type_name] = STATE(470),
    [sym__array_type] = STATE(321),
    [sym__function_type] = STATE(323),
    [sym_user_defined_type] = STATE(390),
    [sym__identifier_path] = STATE(308),
    [sym__mapping] = STATE(317),
    [sym_primitive_type] = STATE(391),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym__literal] = STATE(415),
    [sym_string_literal] = STATE(415),
    [sym_number_literal] = STATE(415),
    [sym__decimal_number] = STATE(316),
    [sym__hex_number] = STATE(316),
    [sym_true] = STATE(371),
    [sym_false] = STATE(371),
    [sym_boolean_literal] = STATE(415),
    [sym_hex_string_literal] = STATE(415),
    [sym_unicode_string_literal] = STATE(415),
    [sym_string] = STATE(333),
    [aux_sym_block_statement_repeat1] = STATE(5),
    [aux_sym_string_literal_repeat1] = STATE(333),
    [aux_sym_hex_string_literal_repeat2] = STATE(336),
    [aux_sym_unicode_string_literal_repeat3] = STATE(335),
    [sym_identifier] = ACTIONS(105),
    [anon_sym_DASH] = ACTIONS(39),
    [anon_sym_TILDE] = ACTIONS(41),
    [anon_sym_LBRACE] = ACTIONS(43),
    [anon_sym_RBRACE] = ACTIONS(107),
    [anon_sym_type] = ACTIONS(47),
    [anon_sym_LPAREN] = ACTIONS(49),
    [anon_sym_for] = ACTIONS(51),
    [anon_sym_assembly] = ACTIONS(53),
    [anon_sym_break] = ACTIONS(55),
    [anon_sym_continue] = ACTIONS(57),
    [anon_sym_true] = ACTIONS(59),
    [anon_sym_false] = ACTIONS(61),
    [anon_sym_if] = ACTIONS(63),
    [anon_sym_function] = ACTIONS(65),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_return] = ACTIONS(67),
    [anon_sym_revert] = ACTIONS(69),
    [sym__unchecked] = ACTIONS(71),
    [anon_sym_var] = ACTIONS(73),
    [anon_sym_while] = ACTIONS(75),
    [anon_sym_do] = ACTIONS(77),
    [anon_sym_try] = ACTIONS(79),
    [anon_sym_emit] = ACTIONS(81),
    [anon_sym_payable] = ACTIONS(83),
    [anon_sym_new] = ACTIONS(85),
    [anon_sym_LBRACK] = ACTIONS(87),
    [anon_sym_PLUS] = ACTIONS(39),
    [anon_sym_BANG] = ACTIONS(41),
    [anon_sym_delete] = ACTIONS(89),
    [anon_sym_PLUS_PLUS] = ACTIONS(91),
    [anon_sym_DASH_DASH] = ACTIONS(91),
    [anon_sym_mapping] = ACTIONS(35),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [aux_sym__decimal_number_token1] = ACTIONS(93),
    [aux_sym__decimal_number_token2] = ACTIONS(95),
    [aux_sym__hex_number_token1] = ACTIONS(95),
    [anon_sym_hex] = ACTIONS(97),
    [anon_sym_DQUOTE] = ACTIONS(99),
    [anon_sym_SQUOTE] = ACTIONS(101),
    [anon_sym_unicode] = ACTIONS(103),
    [sym_comment] = ACTIONS(3),
  },
  [12] = {
    [sym__statement] = STATE(84),
    [sym_assembly_statement] = STATE(84),
    [sym_block_statement] = STATE(84),
    [sym_variable_declaration_statement] = STATE(84),
    [sym_variable_declaration] = STATE(703),
    [sym_variable_declaration_tuple] = STATE(721),
    [sym_expression_statement] = STATE(84),
    [sym_if_statement] = STATE(84),
    [sym_for_statement] = STATE(84),
    [sym_while_statement] = STATE(84),
    [sym_do_while_statement] = STATE(84),
    [sym_continue_statement] = STATE(84),
    [sym_break_statement] = STATE(84),
    [sym_revert_statement] = STATE(84),
    [sym_try_statement] = STATE(84),
    [sym_return_statement] = STATE(84),
    [sym_emit_statement] = STATE(84),
    [sym__expression] = STATE(415),
    [sym__primary_expression] = STATE(415),
    [sym_type_cast_expression] = STATE(415),
    [sym_ternary_expression] = STATE(415),
    [sym_new_expression] = STATE(415),
    [sym_tuple_expression] = STATE(415),
    [sym_inline_array_expression] = STATE(415),
    [sym_binary_expression] = STATE(415),
    [sym_unary_expression] = STATE(415),
    [sym_update_expression] = STATE(415),
    [sym_member_expression] = STATE(415),
    [sym_array_access] = STATE(415),
    [sym_slice_access] = STATE(415),
    [sym_struct_expression] = STATE(415),
    [sym_parenthesized_expression] = STATE(415),
    [sym_assignment_expression] = STATE(415),
    [sym_augmented_assignment_expression] = STATE(415),
    [sym_call_expression] = STATE(415),
    [sym_payable_conversion_expression] = STATE(415),
    [sym_meta_type_expression] = STATE(415),
    [sym_type_name] = STATE(470),
    [sym__array_type] = STATE(321),
    [sym__function_type] = STATE(323),
    [sym_user_defined_type] = STATE(390),
    [sym__identifier_path] = STATE(308),
    [sym__mapping] = STATE(317),
    [sym_primitive_type] = STATE(391),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym__literal] = STATE(415),
    [sym_string_literal] = STATE(415),
    [sym_number_literal] = STATE(415),
    [sym__decimal_number] = STATE(316),
    [sym__hex_number] = STATE(316),
    [sym_true] = STATE(371),
    [sym_false] = STATE(371),
    [sym_boolean_literal] = STATE(415),
    [sym_hex_string_literal] = STATE(415),
    [sym_unicode_string_literal] = STATE(415),
    [sym_string] = STATE(333),
    [aux_sym_string_literal_repeat1] = STATE(333),
    [aux_sym_hex_string_literal_repeat2] = STATE(336),
    [aux_sym_unicode_string_literal_repeat3] = STATE(335),
    [sym_identifier] = ACTIONS(105),
    [anon_sym_DASH] = ACTIONS(39),
    [anon_sym_TILDE] = ACTIONS(41),
    [anon_sym_LBRACE] = ACTIONS(43),
    [anon_sym_type] = ACTIONS(47),
    [anon_sym_LPAREN] = ACTIONS(49),
    [anon_sym_for] = ACTIONS(51),
    [anon_sym_assembly] = ACTIONS(53),
    [anon_sym_break] = ACTIONS(55),
    [anon_sym_continue] = ACTIONS(57),
    [anon_sym_true] = ACTIONS(59),
    [anon_sym_false] = ACTIONS(61),
    [anon_sym_if] = ACTIONS(63),
    [anon_sym_function] = ACTIONS(65),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_return] = ACTIONS(67),
    [anon_sym_revert] = ACTIONS(69),
    [sym__unchecked] = ACTIONS(71),
    [anon_sym_var] = ACTIONS(73),
    [anon_sym_while] = ACTIONS(75),
    [anon_sym_do] = ACTIONS(77),
    [anon_sym_try] = ACTIONS(79),
    [anon_sym_emit] = ACTIONS(81),
    [anon_sym_payable] = ACTIONS(83),
    [anon_sym_new] = ACTIONS(85),
    [anon_sym_LBRACK] = ACTIONS(87),
    [anon_sym_PLUS] = ACTIONS(39),
    [anon_sym_BANG] = ACTIONS(41),
    [anon_sym_delete] = ACTIONS(89),
    [anon_sym_PLUS_PLUS] = ACTIONS(91),
    [anon_sym_DASH_DASH] = ACTIONS(91),
    [anon_sym_mapping] = ACTIONS(35),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [aux_sym__decimal_number_token1] = ACTIONS(93),
    [aux_sym__decimal_number_token2] = ACTIONS(95),
    [aux_sym__hex_number_token1] = ACTIONS(95),
    [anon_sym_hex] = ACTIONS(97),
    [anon_sym_DQUOTE] = ACTIONS(99),
    [anon_sym_SQUOTE] = ACTIONS(101),
    [anon_sym_unicode] = ACTIONS(103),
    [sym_comment] = ACTIONS(3),
  },
  [13] = {
    [sym__statement] = STATE(88),
    [sym_assembly_statement] = STATE(88),
    [sym_block_statement] = STATE(88),
    [sym_variable_declaration_statement] = STATE(88),
    [sym_variable_declaration] = STATE(703),
    [sym_variable_declaration_tuple] = STATE(721),
    [sym_expression_statement] = STATE(88),
    [sym_if_statement] = STATE(88),
    [sym_for_statement] = STATE(88),
    [sym_while_statement] = STATE(88),
    [sym_do_while_statement] = STATE(88),
    [sym_continue_statement] = STATE(88),
    [sym_break_statement] = STATE(88),
    [sym_revert_statement] = STATE(88),
    [sym_try_statement] = STATE(88),
    [sym_return_statement] = STATE(88),
    [sym_emit_statement] = STATE(88),
    [sym__expression] = STATE(415),
    [sym__primary_expression] = STATE(415),
    [sym_type_cast_expression] = STATE(415),
    [sym_ternary_expression] = STATE(415),
    [sym_new_expression] = STATE(415),
    [sym_tuple_expression] = STATE(415),
    [sym_inline_array_expression] = STATE(415),
    [sym_binary_expression] = STATE(415),
    [sym_unary_expression] = STATE(415),
    [sym_update_expression] = STATE(415),
    [sym_member_expression] = STATE(415),
    [sym_array_access] = STATE(415),
    [sym_slice_access] = STATE(415),
    [sym_struct_expression] = STATE(415),
    [sym_parenthesized_expression] = STATE(415),
    [sym_assignment_expression] = STATE(415),
    [sym_augmented_assignment_expression] = STATE(415),
    [sym_call_expression] = STATE(415),
    [sym_payable_conversion_expression] = STATE(415),
    [sym_meta_type_expression] = STATE(415),
    [sym_type_name] = STATE(470),
    [sym__array_type] = STATE(321),
    [sym__function_type] = STATE(323),
    [sym_user_defined_type] = STATE(390),
    [sym__identifier_path] = STATE(308),
    [sym__mapping] = STATE(317),
    [sym_primitive_type] = STATE(391),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym__literal] = STATE(415),
    [sym_string_literal] = STATE(415),
    [sym_number_literal] = STATE(415),
    [sym__decimal_number] = STATE(316),
    [sym__hex_number] = STATE(316),
    [sym_true] = STATE(371),
    [sym_false] = STATE(371),
    [sym_boolean_literal] = STATE(415),
    [sym_hex_string_literal] = STATE(415),
    [sym_unicode_string_literal] = STATE(415),
    [sym_string] = STATE(333),
    [aux_sym_string_literal_repeat1] = STATE(333),
    [aux_sym_hex_string_literal_repeat2] = STATE(336),
    [aux_sym_unicode_string_literal_repeat3] = STATE(335),
    [sym_identifier] = ACTIONS(105),
    [anon_sym_DASH] = ACTIONS(39),
    [anon_sym_TILDE] = ACTIONS(41),
    [anon_sym_LBRACE] = ACTIONS(43),
    [anon_sym_type] = ACTIONS(47),
    [anon_sym_LPAREN] = ACTIONS(49),
    [anon_sym_for] = ACTIONS(51),
    [anon_sym_assembly] = ACTIONS(53),
    [anon_sym_break] = ACTIONS(55),
    [anon_sym_continue] = ACTIONS(57),
    [anon_sym_true] = ACTIONS(59),
    [anon_sym_false] = ACTIONS(61),
    [anon_sym_if] = ACTIONS(63),
    [anon_sym_function] = ACTIONS(65),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_return] = ACTIONS(67),
    [anon_sym_revert] = ACTIONS(69),
    [sym__unchecked] = ACTIONS(71),
    [anon_sym_var] = ACTIONS(73),
    [anon_sym_while] = ACTIONS(75),
    [anon_sym_do] = ACTIONS(77),
    [anon_sym_try] = ACTIONS(79),
    [anon_sym_emit] = ACTIONS(81),
    [anon_sym_payable] = ACTIONS(83),
    [anon_sym_new] = ACTIONS(85),
    [anon_sym_LBRACK] = ACTIONS(87),
    [anon_sym_PLUS] = ACTIONS(39),
    [anon_sym_BANG] = ACTIONS(41),
    [anon_sym_delete] = ACTIONS(89),
    [anon_sym_PLUS_PLUS] = ACTIONS(91),
    [anon_sym_DASH_DASH] = ACTIONS(91),
    [anon_sym_mapping] = ACTIONS(35),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [aux_sym__decimal_number_token1] = ACTIONS(93),
    [aux_sym__decimal_number_token2] = ACTIONS(95),
    [aux_sym__hex_number_token1] = ACTIONS(95),
    [anon_sym_hex] = ACTIONS(97),
    [anon_sym_DQUOTE] = ACTIONS(99),
    [anon_sym_SQUOTE] = ACTIONS(101),
    [anon_sym_unicode] = ACTIONS(103),
    [sym_comment] = ACTIONS(3),
  },
  [14] = {
    [sym__statement] = STATE(94),
    [sym_assembly_statement] = STATE(94),
    [sym_block_statement] = STATE(94),
    [sym_variable_declaration_statement] = STATE(94),
    [sym_variable_declaration] = STATE(703),
    [sym_variable_declaration_tuple] = STATE(721),
    [sym_expression_statement] = STATE(94),
    [sym_if_statement] = STATE(94),
    [sym_for_statement] = STATE(94),
    [sym_while_statement] = STATE(94),
    [sym_do_while_statement] = STATE(94),
    [sym_continue_statement] = STATE(94),
    [sym_break_statement] = STATE(94),
    [sym_revert_statement] = STATE(94),
    [sym_try_statement] = STATE(94),
    [sym_return_statement] = STATE(94),
    [sym_emit_statement] = STATE(94),
    [sym__expression] = STATE(415),
    [sym__primary_expression] = STATE(415),
    [sym_type_cast_expression] = STATE(415),
    [sym_ternary_expression] = STATE(415),
    [sym_new_expression] = STATE(415),
    [sym_tuple_expression] = STATE(415),
    [sym_inline_array_expression] = STATE(415),
    [sym_binary_expression] = STATE(415),
    [sym_unary_expression] = STATE(415),
    [sym_update_expression] = STATE(415),
    [sym_member_expression] = STATE(415),
    [sym_array_access] = STATE(415),
    [sym_slice_access] = STATE(415),
    [sym_struct_expression] = STATE(415),
    [sym_parenthesized_expression] = STATE(415),
    [sym_assignment_expression] = STATE(415),
    [sym_augmented_assignment_expression] = STATE(415),
    [sym_call_expression] = STATE(415),
    [sym_payable_conversion_expression] = STATE(415),
    [sym_meta_type_expression] = STATE(415),
    [sym_type_name] = STATE(470),
    [sym__array_type] = STATE(321),
    [sym__function_type] = STATE(323),
    [sym_user_defined_type] = STATE(390),
    [sym__identifier_path] = STATE(308),
    [sym__mapping] = STATE(317),
    [sym_primitive_type] = STATE(391),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym__literal] = STATE(415),
    [sym_string_literal] = STATE(415),
    [sym_number_literal] = STATE(415),
    [sym__decimal_number] = STATE(316),
    [sym__hex_number] = STATE(316),
    [sym_true] = STATE(371),
    [sym_false] = STATE(371),
    [sym_boolean_literal] = STATE(415),
    [sym_hex_string_literal] = STATE(415),
    [sym_unicode_string_literal] = STATE(415),
    [sym_string] = STATE(333),
    [aux_sym_string_literal_repeat1] = STATE(333),
    [aux_sym_hex_string_literal_repeat2] = STATE(336),
    [aux_sym_unicode_string_literal_repeat3] = STATE(335),
    [sym_identifier] = ACTIONS(105),
    [anon_sym_DASH] = ACTIONS(39),
    [anon_sym_TILDE] = ACTIONS(41),
    [anon_sym_LBRACE] = ACTIONS(43),
    [anon_sym_type] = ACTIONS(47),
    [anon_sym_LPAREN] = ACTIONS(49),
    [anon_sym_for] = ACTIONS(51),
    [anon_sym_assembly] = ACTIONS(53),
    [anon_sym_break] = ACTIONS(55),
    [anon_sym_continue] = ACTIONS(57),
    [anon_sym_true] = ACTIONS(59),
    [anon_sym_false] = ACTIONS(61),
    [anon_sym_if] = ACTIONS(63),
    [anon_sym_function] = ACTIONS(65),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_return] = ACTIONS(67),
    [anon_sym_revert] = ACTIONS(69),
    [sym__unchecked] = ACTIONS(71),
    [anon_sym_var] = ACTIONS(73),
    [anon_sym_while] = ACTIONS(75),
    [anon_sym_do] = ACTIONS(77),
    [anon_sym_try] = ACTIONS(79),
    [anon_sym_emit] = ACTIONS(81),
    [anon_sym_payable] = ACTIONS(83),
    [anon_sym_new] = ACTIONS(85),
    [anon_sym_LBRACK] = ACTIONS(87),
    [anon_sym_PLUS] = ACTIONS(39),
    [anon_sym_BANG] = ACTIONS(41),
    [anon_sym_delete] = ACTIONS(89),
    [anon_sym_PLUS_PLUS] = ACTIONS(91),
    [anon_sym_DASH_DASH] = ACTIONS(91),
    [anon_sym_mapping] = ACTIONS(35),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [aux_sym__decimal_number_token1] = ACTIONS(93),
    [aux_sym__decimal_number_token2] = ACTIONS(95),
    [aux_sym__hex_number_token1] = ACTIONS(95),
    [anon_sym_hex] = ACTIONS(97),
    [anon_sym_DQUOTE] = ACTIONS(99),
    [anon_sym_SQUOTE] = ACTIONS(101),
    [anon_sym_unicode] = ACTIONS(103),
    [sym_comment] = ACTIONS(3),
  },
  [15] = {
    [sym__statement] = STATE(101),
    [sym_assembly_statement] = STATE(101),
    [sym_block_statement] = STATE(101),
    [sym_variable_declaration_statement] = STATE(101),
    [sym_variable_declaration] = STATE(703),
    [sym_variable_declaration_tuple] = STATE(721),
    [sym_expression_statement] = STATE(101),
    [sym_if_statement] = STATE(101),
    [sym_for_statement] = STATE(101),
    [sym_while_statement] = STATE(101),
    [sym_do_while_statement] = STATE(101),
    [sym_continue_statement] = STATE(101),
    [sym_break_statement] = STATE(101),
    [sym_revert_statement] = STATE(101),
    [sym_try_statement] = STATE(101),
    [sym_return_statement] = STATE(101),
    [sym_emit_statement] = STATE(101),
    [sym__expression] = STATE(415),
    [sym__primary_expression] = STATE(415),
    [sym_type_cast_expression] = STATE(415),
    [sym_ternary_expression] = STATE(415),
    [sym_new_expression] = STATE(415),
    [sym_tuple_expression] = STATE(415),
    [sym_inline_array_expression] = STATE(415),
    [sym_binary_expression] = STATE(415),
    [sym_unary_expression] = STATE(415),
    [sym_update_expression] = STATE(415),
    [sym_member_expression] = STATE(415),
    [sym_array_access] = STATE(415),
    [sym_slice_access] = STATE(415),
    [sym_struct_expression] = STATE(415),
    [sym_parenthesized_expression] = STATE(415),
    [sym_assignment_expression] = STATE(415),
    [sym_augmented_assignment_expression] = STATE(415),
    [sym_call_expression] = STATE(415),
    [sym_payable_conversion_expression] = STATE(415),
    [sym_meta_type_expression] = STATE(415),
    [sym_type_name] = STATE(470),
    [sym__array_type] = STATE(321),
    [sym__function_type] = STATE(323),
    [sym_user_defined_type] = STATE(390),
    [sym__identifier_path] = STATE(308),
    [sym__mapping] = STATE(317),
    [sym_primitive_type] = STATE(391),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym__literal] = STATE(415),
    [sym_string_literal] = STATE(415),
    [sym_number_literal] = STATE(415),
    [sym__decimal_number] = STATE(316),
    [sym__hex_number] = STATE(316),
    [sym_true] = STATE(371),
    [sym_false] = STATE(371),
    [sym_boolean_literal] = STATE(415),
    [sym_hex_string_literal] = STATE(415),
    [sym_unicode_string_literal] = STATE(415),
    [sym_string] = STATE(333),
    [aux_sym_string_literal_repeat1] = STATE(333),
    [aux_sym_hex_string_literal_repeat2] = STATE(336),
    [aux_sym_unicode_string_literal_repeat3] = STATE(335),
    [sym_identifier] = ACTIONS(105),
    [anon_sym_DASH] = ACTIONS(39),
    [anon_sym_TILDE] = ACTIONS(41),
    [anon_sym_LBRACE] = ACTIONS(43),
    [anon_sym_type] = ACTIONS(47),
    [anon_sym_LPAREN] = ACTIONS(49),
    [anon_sym_for] = ACTIONS(51),
    [anon_sym_assembly] = ACTIONS(53),
    [anon_sym_break] = ACTIONS(55),
    [anon_sym_continue] = ACTIONS(57),
    [anon_sym_true] = ACTIONS(59),
    [anon_sym_false] = ACTIONS(61),
    [anon_sym_if] = ACTIONS(63),
    [anon_sym_function] = ACTIONS(65),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_return] = ACTIONS(67),
    [anon_sym_revert] = ACTIONS(69),
    [sym__unchecked] = ACTIONS(71),
    [anon_sym_var] = ACTIONS(73),
    [anon_sym_while] = ACTIONS(75),
    [anon_sym_do] = ACTIONS(77),
    [anon_sym_try] = ACTIONS(79),
    [anon_sym_emit] = ACTIONS(81),
    [anon_sym_payable] = ACTIONS(83),
    [anon_sym_new] = ACTIONS(85),
    [anon_sym_LBRACK] = ACTIONS(87),
    [anon_sym_PLUS] = ACTIONS(39),
    [anon_sym_BANG] = ACTIONS(41),
    [anon_sym_delete] = ACTIONS(89),
    [anon_sym_PLUS_PLUS] = ACTIONS(91),
    [anon_sym_DASH_DASH] = ACTIONS(91),
    [anon_sym_mapping] = ACTIONS(35),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [aux_sym__decimal_number_token1] = ACTIONS(93),
    [aux_sym__decimal_number_token2] = ACTIONS(95),
    [aux_sym__hex_number_token1] = ACTIONS(95),
    [anon_sym_hex] = ACTIONS(97),
    [anon_sym_DQUOTE] = ACTIONS(99),
    [anon_sym_SQUOTE] = ACTIONS(101),
    [anon_sym_unicode] = ACTIONS(103),
    [sym_comment] = ACTIONS(3),
  },
  [16] = {
    [sym__statement] = STATE(720),
    [sym_assembly_statement] = STATE(720),
    [sym_block_statement] = STATE(720),
    [sym_variable_declaration_statement] = STATE(720),
    [sym_variable_declaration] = STATE(703),
    [sym_variable_declaration_tuple] = STATE(721),
    [sym_expression_statement] = STATE(720),
    [sym_if_statement] = STATE(720),
    [sym_for_statement] = STATE(720),
    [sym_while_statement] = STATE(720),
    [sym_do_while_statement] = STATE(720),
    [sym_continue_statement] = STATE(720),
    [sym_break_statement] = STATE(720),
    [sym_revert_statement] = STATE(720),
    [sym_try_statement] = STATE(720),
    [sym_return_statement] = STATE(720),
    [sym_emit_statement] = STATE(720),
    [sym__expression] = STATE(415),
    [sym__primary_expression] = STATE(415),
    [sym_type_cast_expression] = STATE(415),
    [sym_ternary_expression] = STATE(415),
    [sym_new_expression] = STATE(415),
    [sym_tuple_expression] = STATE(415),
    [sym_inline_array_expression] = STATE(415),
    [sym_binary_expression] = STATE(415),
    [sym_unary_expression] = STATE(415),
    [sym_update_expression] = STATE(415),
    [sym_member_expression] = STATE(415),
    [sym_array_access] = STATE(415),
    [sym_slice_access] = STATE(415),
    [sym_struct_expression] = STATE(415),
    [sym_parenthesized_expression] = STATE(415),
    [sym_assignment_expression] = STATE(415),
    [sym_augmented_assignment_expression] = STATE(415),
    [sym_call_expression] = STATE(415),
    [sym_payable_conversion_expression] = STATE(415),
    [sym_meta_type_expression] = STATE(415),
    [sym_type_name] = STATE(470),
    [sym__array_type] = STATE(321),
    [sym__function_type] = STATE(323),
    [sym_user_defined_type] = STATE(390),
    [sym__identifier_path] = STATE(308),
    [sym__mapping] = STATE(317),
    [sym_primitive_type] = STATE(391),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym__literal] = STATE(415),
    [sym_string_literal] = STATE(415),
    [sym_number_literal] = STATE(415),
    [sym__decimal_number] = STATE(316),
    [sym__hex_number] = STATE(316),
    [sym_true] = STATE(371),
    [sym_false] = STATE(371),
    [sym_boolean_literal] = STATE(415),
    [sym_hex_string_literal] = STATE(415),
    [sym_unicode_string_literal] = STATE(415),
    [sym_string] = STATE(333),
    [aux_sym_string_literal_repeat1] = STATE(333),
    [aux_sym_hex_string_literal_repeat2] = STATE(336),
    [aux_sym_unicode_string_literal_repeat3] = STATE(335),
    [sym_identifier] = ACTIONS(105),
    [anon_sym_DASH] = ACTIONS(39),
    [anon_sym_TILDE] = ACTIONS(41),
    [anon_sym_LBRACE] = ACTIONS(43),
    [anon_sym_type] = ACTIONS(47),
    [anon_sym_LPAREN] = ACTIONS(49),
    [anon_sym_for] = ACTIONS(51),
    [anon_sym_assembly] = ACTIONS(53),
    [anon_sym_break] = ACTIONS(55),
    [anon_sym_continue] = ACTIONS(57),
    [anon_sym_true] = ACTIONS(59),
    [anon_sym_false] = ACTIONS(61),
    [anon_sym_if] = ACTIONS(63),
    [anon_sym_function] = ACTIONS(65),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_return] = ACTIONS(67),
    [anon_sym_revert] = ACTIONS(69),
    [sym__unchecked] = ACTIONS(71),
    [anon_sym_var] = ACTIONS(73),
    [anon_sym_while] = ACTIONS(75),
    [anon_sym_do] = ACTIONS(77),
    [anon_sym_try] = ACTIONS(79),
    [anon_sym_emit] = ACTIONS(81),
    [anon_sym_payable] = ACTIONS(83),
    [anon_sym_new] = ACTIONS(85),
    [anon_sym_LBRACK] = ACTIONS(87),
    [anon_sym_PLUS] = ACTIONS(39),
    [anon_sym_BANG] = ACTIONS(41),
    [anon_sym_delete] = ACTIONS(89),
    [anon_sym_PLUS_PLUS] = ACTIONS(91),
    [anon_sym_DASH_DASH] = ACTIONS(91),
    [anon_sym_mapping] = ACTIONS(35),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [aux_sym__decimal_number_token1] = ACTIONS(93),
    [aux_sym__decimal_number_token2] = ACTIONS(95),
    [aux_sym__hex_number_token1] = ACTIONS(95),
    [anon_sym_hex] = ACTIONS(97),
    [anon_sym_DQUOTE] = ACTIONS(99),
    [anon_sym_SQUOTE] = ACTIONS(101),
    [anon_sym_unicode] = ACTIONS(103),
    [sym_comment] = ACTIONS(3),
  },
  [17] = {
    [sym__statement] = STATE(95),
    [sym_assembly_statement] = STATE(95),
    [sym_block_statement] = STATE(95),
    [sym_variable_declaration_statement] = STATE(95),
    [sym_variable_declaration] = STATE(703),
    [sym_variable_declaration_tuple] = STATE(721),
    [sym_expression_statement] = STATE(95),
    [sym_if_statement] = STATE(95),
    [sym_for_statement] = STATE(95),
    [sym_while_statement] = STATE(95),
    [sym_do_while_statement] = STATE(95),
    [sym_continue_statement] = STATE(95),
    [sym_break_statement] = STATE(95),
    [sym_revert_statement] = STATE(95),
    [sym_try_statement] = STATE(95),
    [sym_return_statement] = STATE(95),
    [sym_emit_statement] = STATE(95),
    [sym__expression] = STATE(415),
    [sym__primary_expression] = STATE(415),
    [sym_type_cast_expression] = STATE(415),
    [sym_ternary_expression] = STATE(415),
    [sym_new_expression] = STATE(415),
    [sym_tuple_expression] = STATE(415),
    [sym_inline_array_expression] = STATE(415),
    [sym_binary_expression] = STATE(415),
    [sym_unary_expression] = STATE(415),
    [sym_update_expression] = STATE(415),
    [sym_member_expression] = STATE(415),
    [sym_array_access] = STATE(415),
    [sym_slice_access] = STATE(415),
    [sym_struct_expression] = STATE(415),
    [sym_parenthesized_expression] = STATE(415),
    [sym_assignment_expression] = STATE(415),
    [sym_augmented_assignment_expression] = STATE(415),
    [sym_call_expression] = STATE(415),
    [sym_payable_conversion_expression] = STATE(415),
    [sym_meta_type_expression] = STATE(415),
    [sym_type_name] = STATE(470),
    [sym__array_type] = STATE(321),
    [sym__function_type] = STATE(323),
    [sym_user_defined_type] = STATE(390),
    [sym__identifier_path] = STATE(308),
    [sym__mapping] = STATE(317),
    [sym_primitive_type] = STATE(391),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym__literal] = STATE(415),
    [sym_string_literal] = STATE(415),
    [sym_number_literal] = STATE(415),
    [sym__decimal_number] = STATE(316),
    [sym__hex_number] = STATE(316),
    [sym_true] = STATE(371),
    [sym_false] = STATE(371),
    [sym_boolean_literal] = STATE(415),
    [sym_hex_string_literal] = STATE(415),
    [sym_unicode_string_literal] = STATE(415),
    [sym_string] = STATE(333),
    [aux_sym_string_literal_repeat1] = STATE(333),
    [aux_sym_hex_string_literal_repeat2] = STATE(336),
    [aux_sym_unicode_string_literal_repeat3] = STATE(335),
    [sym_identifier] = ACTIONS(105),
    [anon_sym_DASH] = ACTIONS(39),
    [anon_sym_TILDE] = ACTIONS(41),
    [anon_sym_LBRACE] = ACTIONS(43),
    [anon_sym_type] = ACTIONS(47),
    [anon_sym_LPAREN] = ACTIONS(49),
    [anon_sym_for] = ACTIONS(51),
    [anon_sym_assembly] = ACTIONS(53),
    [anon_sym_break] = ACTIONS(55),
    [anon_sym_continue] = ACTIONS(57),
    [anon_sym_true] = ACTIONS(59),
    [anon_sym_false] = ACTIONS(61),
    [anon_sym_if] = ACTIONS(63),
    [anon_sym_function] = ACTIONS(65),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_return] = ACTIONS(67),
    [anon_sym_revert] = ACTIONS(69),
    [sym__unchecked] = ACTIONS(71),
    [anon_sym_var] = ACTIONS(73),
    [anon_sym_while] = ACTIONS(75),
    [anon_sym_do] = ACTIONS(77),
    [anon_sym_try] = ACTIONS(79),
    [anon_sym_emit] = ACTIONS(81),
    [anon_sym_payable] = ACTIONS(83),
    [anon_sym_new] = ACTIONS(85),
    [anon_sym_LBRACK] = ACTIONS(87),
    [anon_sym_PLUS] = ACTIONS(39),
    [anon_sym_BANG] = ACTIONS(41),
    [anon_sym_delete] = ACTIONS(89),
    [anon_sym_PLUS_PLUS] = ACTIONS(91),
    [anon_sym_DASH_DASH] = ACTIONS(91),
    [anon_sym_mapping] = ACTIONS(35),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [aux_sym__decimal_number_token1] = ACTIONS(93),
    [aux_sym__decimal_number_token2] = ACTIONS(95),
    [aux_sym__hex_number_token1] = ACTIONS(95),
    [anon_sym_hex] = ACTIONS(97),
    [anon_sym_DQUOTE] = ACTIONS(99),
    [anon_sym_SQUOTE] = ACTIONS(101),
    [anon_sym_unicode] = ACTIONS(103),
    [sym_comment] = ACTIONS(3),
  },
  [18] = {
    [sym_variable_declaration] = STATE(566),
    [sym__expression] = STATE(396),
    [sym__primary_expression] = STATE(396),
    [sym_type_cast_expression] = STATE(396),
    [sym_ternary_expression] = STATE(396),
    [sym_new_expression] = STATE(396),
    [sym_tuple_expression] = STATE(396),
    [sym_inline_array_expression] = STATE(396),
    [sym_binary_expression] = STATE(396),
    [sym_unary_expression] = STATE(396),
    [sym_update_expression] = STATE(396),
    [sym_member_expression] = STATE(396),
    [sym_array_access] = STATE(396),
    [sym_slice_access] = STATE(396),
    [sym_struct_expression] = STATE(396),
    [sym_parenthesized_expression] = STATE(396),
    [sym_assignment_expression] = STATE(396),
    [sym_augmented_assignment_expression] = STATE(396),
    [sym_call_expression] = STATE(396),
    [sym_payable_conversion_expression] = STATE(396),
    [sym_meta_type_expression] = STATE(396),
    [sym_type_name] = STATE(470),
    [sym__array_type] = STATE(321),
    [sym__function_type] = STATE(323),
    [sym_user_defined_type] = STATE(390),
    [sym__identifier_path] = STATE(308),
    [sym__mapping] = STATE(317),
    [sym_primitive_type] = STATE(391),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym__literal] = STATE(396),
    [sym_string_literal] = STATE(396),
    [sym_number_literal] = STATE(396),
    [sym__decimal_number] = STATE(316),
    [sym__hex_number] = STATE(316),
    [sym_true] = STATE(371),
    [sym_false] = STATE(371),
    [sym_boolean_literal] = STATE(396),
    [sym_hex_string_literal] = STATE(396),
    [sym_unicode_string_literal] = STATE(396),
    [sym_string] = STATE(333),
    [aux_sym_variable_declaration_tuple_repeat1] = STATE(568),
    [aux_sym_tuple_expression_repeat1] = STATE(549),
    [aux_sym_string_literal_repeat1] = STATE(333),
    [aux_sym_hex_string_literal_repeat2] = STATE(336),
    [aux_sym_unicode_string_literal_repeat3] = STATE(335),
    [sym_identifier] = ACTIONS(105),
    [anon_sym_DASH] = ACTIONS(39),
    [anon_sym_TILDE] = ACTIONS(41),
    [anon_sym_COMMA] = ACTIONS(231),
    [anon_sym_type] = ACTIONS(47),
    [anon_sym_LPAREN] = ACTIONS(233),
    [anon_sym_RPAREN] = ACTIONS(235),
    [anon_sym_true] = ACTIONS(59),
    [anon_sym_false] = ACTIONS(61),
    [anon_sym_function] = ACTIONS(65),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_payable] = ACTIONS(83),
    [anon_sym_new] = ACTIONS(85),
    [anon_sym_LBRACK] = ACTIONS(87),
    [anon_sym_PLUS] = ACTIONS(39),
    [anon_sym_BANG] = ACTIONS(41),
    [anon_sym_delete] = ACTIONS(89),
    [anon_sym_PLUS_PLUS] = ACTIONS(91),
    [anon_sym_DASH_DASH] = ACTIONS(91),
    [anon_sym_mapping] = ACTIONS(35),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [aux_sym__decimal_number_token1] = ACTIONS(93),
    [aux_sym__decimal_number_token2] = ACTIONS(95),
    [aux_sym__hex_number_token1] = ACTIONS(95),
    [anon_sym_hex] = ACTIONS(97),
    [anon_sym_DQUOTE] = ACTIONS(99),
    [anon_sym_SQUOTE] = ACTIONS(101),
    [anon_sym_unicode] = ACTIONS(103),
    [sym_comment] = ACTIONS(3),
  },
  [19] = {
    [sym_variable_declaration_statement] = STATE(29),
    [sym_variable_declaration] = STATE(703),
    [sym_variable_declaration_tuple] = STATE(721),
    [sym_expression_statement] = STATE(29),
    [sym__expression] = STATE(415),
    [sym__primary_expression] = STATE(415),
    [sym_type_cast_expression] = STATE(415),
    [sym_ternary_expression] = STATE(415),
    [sym_new_expression] = STATE(415),
    [sym_tuple_expression] = STATE(415),
    [sym_inline_array_expression] = STATE(415),
    [sym_binary_expression] = STATE(415),
    [sym_unary_expression] = STATE(415),
    [sym_update_expression] = STATE(415),
    [sym_member_expression] = STATE(415),
    [sym_array_access] = STATE(415),
    [sym_slice_access] = STATE(415),
    [sym_struct_expression] = STATE(415),
    [sym_parenthesized_expression] = STATE(415),
    [sym_assignment_expression] = STATE(415),
    [sym_augmented_assignment_expression] = STATE(415),
    [sym_call_expression] = STATE(415),
    [sym_payable_conversion_expression] = STATE(415),
    [sym_meta_type_expression] = STATE(415),
    [sym_type_name] = STATE(470),
    [sym__array_type] = STATE(321),
    [sym__function_type] = STATE(323),
    [sym_user_defined_type] = STATE(390),
    [sym__identifier_path] = STATE(308),
    [sym__mapping] = STATE(317),
    [sym_primitive_type] = STATE(391),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym__literal] = STATE(415),
    [sym_string_literal] = STATE(415),
    [sym_number_literal] = STATE(415),
    [sym__decimal_number] = STATE(316),
    [sym__hex_number] = STATE(316),
    [sym_true] = STATE(371),
    [sym_false] = STATE(371),
    [sym_boolean_literal] = STATE(415),
    [sym_hex_string_literal] = STATE(415),
    [sym_unicode_string_literal] = STATE(415),
    [sym_string] = STATE(333),
    [aux_sym_string_literal_repeat1] = STATE(333),
    [aux_sym_hex_string_literal_repeat2] = STATE(336),
    [aux_sym_unicode_string_literal_repeat3] = STATE(335),
    [sym_identifier] = ACTIONS(105),
    [anon_sym_DASH] = ACTIONS(39),
    [anon_sym_TILDE] = ACTIONS(41),
    [anon_sym_type] = ACTIONS(47),
    [anon_sym_LPAREN] = ACTIONS(49),
    [anon_sym_true] = ACTIONS(59),
    [anon_sym_false] = ACTIONS(61),
    [anon_sym_function] = ACTIONS(65),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(73),
    [anon_sym_payable] = ACTIONS(83),
    [anon_sym_new] = ACTIONS(85),
    [anon_sym_LBRACK] = ACTIONS(87),
    [anon_sym_PLUS] = ACTIONS(39),
    [anon_sym_BANG] = ACTIONS(41),
    [anon_sym_delete] = ACTIONS(89),
    [anon_sym_PLUS_PLUS] = ACTIONS(91),
    [anon_sym_DASH_DASH] = ACTIONS(91),
    [anon_sym_mapping] = ACTIONS(35),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [sym__semicolon] = ACTIONS(237),
    [aux_sym__decimal_number_token1] = ACTIONS(93),
    [aux_sym__decimal_number_token2] = ACTIONS(95),
    [aux_sym__hex_number_token1] = ACTIONS(95),
    [anon_sym_hex] = ACTIONS(97),
    [anon_sym_DQUOTE] = ACTIONS(99),
    [anon_sym_SQUOTE] = ACTIONS(101),
    [anon_sym_unicode] = ACTIONS(103),
    [sym_comment] = ACTIONS(3),
  },
  [20] = {
    [sym_variable_declaration] = STATE(685),
    [sym__expression] = STATE(398),
    [sym__primary_expression] = STATE(398),
    [sym_type_cast_expression] = STATE(398),
    [sym_ternary_expression] = STATE(398),
    [sym_new_expression] = STATE(398),
    [sym_tuple_expression] = STATE(398),
    [sym_inline_array_expression] = STATE(398),
    [sym_binary_expression] = STATE(398),
    [sym_unary_expression] = STATE(398),
    [sym_update_expression] = STATE(398),
    [sym_member_expression] = STATE(398),
    [sym_array_access] = STATE(398),
    [sym_slice_access] = STATE(398),
    [sym_struct_expression] = STATE(398),
    [sym_parenthesized_expression] = STATE(398),
    [sym_assignment_expression] = STATE(398),
    [sym_augmented_assignment_expression] = STATE(398),
    [sym_call_expression] = STATE(398),
    [sym_payable_conversion_expression] = STATE(398),
    [sym_meta_type_expression] = STATE(398),
    [sym_type_name] = STATE(470),
    [sym__array_type] = STATE(321),
    [sym__function_type] = STATE(323),
    [sym_user_defined_type] = STATE(390),
    [sym__identifier_path] = STATE(308),
    [sym__mapping] = STATE(317),
    [sym_primitive_type] = STATE(391),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym__literal] = STATE(398),
    [sym_string_literal] = STATE(398),
    [sym_number_literal] = STATE(398),
    [sym__decimal_number] = STATE(316),
    [sym__hex_number] = STATE(316),
    [sym_true] = STATE(371),
    [sym_false] = STATE(371),
    [sym_boolean_literal] = STATE(398),
    [sym_hex_string_literal] = STATE(398),
    [sym_unicode_string_literal] = STATE(398),
    [sym_string] = STATE(333),
    [aux_sym_string_literal_repeat1] = STATE(333),
    [aux_sym_hex_string_literal_repeat2] = STATE(336),
    [aux_sym_unicode_string_literal_repeat3] = STATE(335),
    [sym_identifier] = ACTIONS(105),
    [anon_sym_DASH] = ACTIONS(39),
    [anon_sym_TILDE] = ACTIONS(41),
    [anon_sym_COMMA] = ACTIONS(239),
    [anon_sym_type] = ACTIONS(47),
    [anon_sym_LPAREN] = ACTIONS(233),
    [anon_sym_RPAREN] = ACTIONS(242),
    [anon_sym_true] = ACTIONS(59),
    [anon_sym_false] = ACTIONS(61),
    [anon_sym_function] = ACTIONS(65),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_payable] = ACTIONS(83),
    [anon_sym_new] = ACTIONS(85),
    [anon_sym_LBRACK] = ACTIONS(87),
    [anon_sym_PLUS] = ACTIONS(39),
    [anon_sym_BANG] = ACTIONS(41),
    [anon_sym_delete] = ACTIONS(89),
    [anon_sym_PLUS_PLUS] = ACTIONS(91),
    [anon_sym_DASH_DASH] = ACTIONS(91),
    [anon_sym_mapping] = ACTIONS(35),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [aux_sym__decimal_number_token1] = ACTIONS(93),
    [aux_sym__decimal_number_token2] = ACTIONS(95),
    [aux_sym__hex_number_token1] = ACTIONS(95),
    [anon_sym_hex] = ACTIONS(97),
    [anon_sym_DQUOTE] = ACTIONS(99),
    [anon_sym_SQUOTE] = ACTIONS(101),
    [anon_sym_unicode] = ACTIONS(103),
    [sym_comment] = ACTIONS(3),
  },
  [21] = {
    [sym_call_argument] = STATE(548),
    [sym__expression] = STATE(395),
    [sym__primary_expression] = STATE(395),
    [sym_type_cast_expression] = STATE(395),
    [sym_ternary_expression] = STATE(395),
    [sym_new_expression] = STATE(395),
    [sym_tuple_expression] = STATE(395),
    [sym_inline_array_expression] = STATE(395),
    [sym_binary_expression] = STATE(395),
    [sym_unary_expression] = STATE(395),
    [sym_update_expression] = STATE(395),
    [sym_member_expression] = STATE(395),
    [sym_array_access] = STATE(395),
    [sym_slice_access] = STATE(395),
    [sym_struct_expression] = STATE(395),
    [sym_parenthesized_expression] = STATE(395),
    [sym_assignment_expression] = STATE(395),
    [sym_augmented_assignment_expression] = STATE(395),
    [sym_call_expression] = STATE(395),
    [sym_payable_conversion_expression] = STATE(395),
    [sym_meta_type_expression] = STATE(395),
    [sym_user_defined_type] = STATE(395),
    [sym__identifier_path] = STATE(308),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym__literal] = STATE(395),
    [sym_string_literal] = STATE(395),
    [sym_number_literal] = STATE(395),
    [sym__decimal_number] = STATE(316),
    [sym__hex_number] = STATE(316),
    [sym_true] = STATE(371),
    [sym_false] = STATE(371),
    [sym_boolean_literal] = STATE(395),
    [sym_hex_string_literal] = STATE(395),
    [sym_unicode_string_literal] = STATE(395),
    [sym_string] = STATE(333),
    [aux_sym_tuple_expression_repeat1] = STATE(549),
    [aux_sym_string_literal_repeat1] = STATE(333),
    [aux_sym_hex_string_literal_repeat2] = STATE(336),
    [aux_sym_unicode_string_literal_repeat3] = STATE(335),
    [sym_identifier] = ACTIONS(105),
    [anon_sym_DASH] = ACTIONS(39),
    [anon_sym_TILDE] = ACTIONS(41),
    [anon_sym_LBRACE] = ACTIONS(244),
    [anon_sym_COMMA] = ACTIONS(246),
    [anon_sym_type] = ACTIONS(47),
    [anon_sym_LPAREN] = ACTIONS(233),
    [anon_sym_RPAREN] = ACTIONS(248),
    [anon_sym_true] = ACTIONS(59),
    [anon_sym_false] = ACTIONS(61),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_payable] = ACTIONS(83),
    [anon_sym_new] = ACTIONS(85),
    [anon_sym_LBRACK] = ACTIONS(87),
    [anon_sym_PLUS] = ACTIONS(39),
    [anon_sym_BANG] = ACTIONS(41),
    [anon_sym_delete] = ACTIONS(89),
    [anon_sym_PLUS_PLUS] = ACTIONS(91),
    [anon_sym_DASH_DASH] = ACTIONS(91),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [aux_sym__decimal_number_token1] = ACTIONS(93),
    [aux_sym__decimal_number_token2] = ACTIONS(95),
    [aux_sym__hex_number_token1] = ACTIONS(95),
    [anon_sym_hex] = ACTIONS(97),
    [anon_sym_DQUOTE] = ACTIONS(99),
    [anon_sym_SQUOTE] = ACTIONS(101),
    [anon_sym_unicode] = ACTIONS(103),
    [sym_comment] = ACTIONS(3),
  },
  [22] = {
    [sym__expression] = STATE(396),
    [sym__primary_expression] = STATE(396),
    [sym_type_cast_expression] = STATE(396),
    [sym_ternary_expression] = STATE(396),
    [sym_new_expression] = STATE(396),
    [sym_tuple_expression] = STATE(396),
    [sym_inline_array_expression] = STATE(396),
    [sym_binary_expression] = STATE(396),
    [sym_unary_expression] = STATE(396),
    [sym_update_expression] = STATE(396),
    [sym_member_expression] = STATE(396),
    [sym_array_access] = STATE(396),
    [sym_slice_access] = STATE(396),
    [sym_struct_expression] = STATE(396),
    [sym_parenthesized_expression] = STATE(396),
    [sym_assignment_expression] = STATE(396),
    [sym_augmented_assignment_expression] = STATE(396),
    [sym_call_expression] = STATE(396),
    [sym_payable_conversion_expression] = STATE(396),
    [sym_meta_type_expression] = STATE(396),
    [sym_user_defined_type] = STATE(396),
    [sym__identifier_path] = STATE(308),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym__literal] = STATE(396),
    [sym_string_literal] = STATE(396),
    [sym_number_literal] = STATE(396),
    [sym__decimal_number] = STATE(316),
    [sym__hex_number] = STATE(316),
    [sym_true] = STATE(371),
    [sym_false] = STATE(371),
    [sym_boolean_literal] = STATE(396),
    [sym_hex_string_literal] = STATE(396),
    [sym_unicode_string_literal] = STATE(396),
    [sym_string] = STATE(333),
    [aux_sym_tuple_expression_repeat1] = STATE(549),
    [aux_sym_string_literal_repeat1] = STATE(333),
    [aux_sym_hex_string_literal_repeat2] = STATE(336),
    [aux_sym_unicode_string_literal_repeat3] = STATE(335),
    [sym_identifier] = ACTIONS(105),
    [anon_sym_DASH] = ACTIONS(39),
    [anon_sym_TILDE] = ACTIONS(41),
    [anon_sym_COMMA] = ACTIONS(246),
    [anon_sym_type] = ACTIONS(47),
    [anon_sym_LPAREN] = ACTIONS(233),
    [anon_sym_RPAREN] = ACTIONS(250),
    [anon_sym_true] = ACTIONS(59),
    [anon_sym_false] = ACTIONS(61),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_payable] = ACTIONS(83),
    [anon_sym_new] = ACTIONS(85),
    [anon_sym_LBRACK] = ACTIONS(87),
    [anon_sym_PLUS] = ACTIONS(39),
    [anon_sym_BANG] = ACTIONS(41),
    [anon_sym_delete] = ACTIONS(89),
    [anon_sym_PLUS_PLUS] = ACTIONS(91),
    [anon_sym_DASH_DASH] = ACTIONS(91),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [aux_sym__decimal_number_token1] = ACTIONS(93),
    [aux_sym__decimal_number_token2] = ACTIONS(95),
    [aux_sym__hex_number_token1] = ACTIONS(95),
    [anon_sym_hex] = ACTIONS(97),
    [anon_sym_DQUOTE] = ACTIONS(99),
    [anon_sym_SQUOTE] = ACTIONS(101),
    [anon_sym_unicode] = ACTIONS(103),
    [sym_comment] = ACTIONS(3),
  },
  [23] = {
    [sym_call_argument] = STATE(628),
    [sym__expression] = STATE(400),
    [sym__primary_expression] = STATE(400),
    [sym_type_cast_expression] = STATE(400),
    [sym_ternary_expression] = STATE(400),
    [sym_new_expression] = STATE(400),
    [sym_tuple_expression] = STATE(400),
    [sym_inline_array_expression] = STATE(400),
    [sym_binary_expression] = STATE(400),
    [sym_unary_expression] = STATE(400),
    [sym_update_expression] = STATE(400),
    [sym_member_expression] = STATE(400),
    [sym_array_access] = STATE(400),
    [sym_slice_access] = STATE(400),
    [sym_struct_expression] = STATE(400),
    [sym_parenthesized_expression] = STATE(400),
    [sym_assignment_expression] = STATE(400),
    [sym_augmented_assignment_expression] = STATE(400),
    [sym_call_expression] = STATE(400),
    [sym_payable_conversion_expression] = STATE(400),
    [sym_meta_type_expression] = STATE(400),
    [sym_user_defined_type] = STATE(400),
    [sym__identifier_path] = STATE(308),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym__literal] = STATE(400),
    [sym_string_literal] = STATE(400),
    [sym_number_literal] = STATE(400),
    [sym__decimal_number] = STATE(316),
    [sym__hex_number] = STATE(316),
    [sym_true] = STATE(371),
    [sym_false] = STATE(371),
    [sym_boolean_literal] = STATE(400),
    [sym_hex_string_literal] = STATE(400),
    [sym_unicode_string_literal] = STATE(400),
    [sym_string] = STATE(333),
    [aux_sym_string_literal_repeat1] = STATE(333),
    [aux_sym_hex_string_literal_repeat2] = STATE(336),
    [aux_sym_unicode_string_literal_repeat3] = STATE(335),
    [sym_identifier] = ACTIONS(105),
    [anon_sym_DASH] = ACTIONS(39),
    [anon_sym_TILDE] = ACTIONS(41),
    [anon_sym_LBRACE] = ACTIONS(244),
    [anon_sym_type] = ACTIONS(47),
    [anon_sym_LPAREN] = ACTIONS(233),
    [anon_sym_RPAREN] = ACTIONS(252),
    [anon_sym_true] = ACTIONS(59),
    [anon_sym_false] = ACTIONS(61),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_payable] = ACTIONS(83),
    [anon_sym_new] = ACTIONS(85),
    [anon_sym_LBRACK] = ACTIONS(87),
    [anon_sym_PLUS] = ACTIONS(39),
    [anon_sym_BANG] = ACTIONS(41),
    [anon_sym_delete] = ACTIONS(89),
    [anon_sym_PLUS_PLUS] = ACTIONS(91),
    [anon_sym_DASH_DASH] = ACTIONS(91),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [aux_sym__decimal_number_token1] = ACTIONS(93),
    [aux_sym__decimal_number_token2] = ACTIONS(95),
    [aux_sym__hex_number_token1] = ACTIONS(95),
    [anon_sym_hex] = ACTIONS(97),
    [anon_sym_DQUOTE] = ACTIONS(99),
    [anon_sym_SQUOTE] = ACTIONS(101),
    [anon_sym_unicode] = ACTIONS(103),
    [sym_comment] = ACTIONS(3),
  },
  [24] = {
    [sym_call_argument] = STATE(628),
    [sym__expression] = STATE(400),
    [sym__primary_expression] = STATE(400),
    [sym_type_cast_expression] = STATE(400),
    [sym_ternary_expression] = STATE(400),
    [sym_new_expression] = STATE(400),
    [sym_tuple_expression] = STATE(400),
    [sym_inline_array_expression] = STATE(400),
    [sym_binary_expression] = STATE(400),
    [sym_unary_expression] = STATE(400),
    [sym_update_expression] = STATE(400),
    [sym_member_expression] = STATE(400),
    [sym_array_access] = STATE(400),
    [sym_slice_access] = STATE(400),
    [sym_struct_expression] = STATE(400),
    [sym_parenthesized_expression] = STATE(400),
    [sym_assignment_expression] = STATE(400),
    [sym_augmented_assignment_expression] = STATE(400),
    [sym_call_expression] = STATE(400),
    [sym_payable_conversion_expression] = STATE(400),
    [sym_meta_type_expression] = STATE(400),
    [sym_user_defined_type] = STATE(400),
    [sym__identifier_path] = STATE(308),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym__literal] = STATE(400),
    [sym_string_literal] = STATE(400),
    [sym_number_literal] = STATE(400),
    [sym__decimal_number] = STATE(316),
    [sym__hex_number] = STATE(316),
    [sym_true] = STATE(371),
    [sym_false] = STATE(371),
    [sym_boolean_literal] = STATE(400),
    [sym_hex_string_literal] = STATE(400),
    [sym_unicode_string_literal] = STATE(400),
    [sym_string] = STATE(333),
    [aux_sym_string_literal_repeat1] = STATE(333),
    [aux_sym_hex_string_literal_repeat2] = STATE(336),
    [aux_sym_unicode_string_literal_repeat3] = STATE(335),
    [sym_identifier] = ACTIONS(105),
    [anon_sym_DASH] = ACTIONS(39),
    [anon_sym_TILDE] = ACTIONS(41),
    [anon_sym_LBRACE] = ACTIONS(244),
    [anon_sym_type] = ACTIONS(47),
    [anon_sym_LPAREN] = ACTIONS(233),
    [anon_sym_RPAREN] = ACTIONS(254),
    [anon_sym_true] = ACTIONS(59),
    [anon_sym_false] = ACTIONS(61),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_payable] = ACTIONS(83),
    [anon_sym_new] = ACTIONS(85),
    [anon_sym_LBRACK] = ACTIONS(87),
    [anon_sym_PLUS] = ACTIONS(39),
    [anon_sym_BANG] = ACTIONS(41),
    [anon_sym_delete] = ACTIONS(89),
    [anon_sym_PLUS_PLUS] = ACTIONS(91),
    [anon_sym_DASH_DASH] = ACTIONS(91),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [aux_sym__decimal_number_token1] = ACTIONS(93),
    [aux_sym__decimal_number_token2] = ACTIONS(95),
    [aux_sym__hex_number_token1] = ACTIONS(95),
    [anon_sym_hex] = ACTIONS(97),
    [anon_sym_DQUOTE] = ACTIONS(99),
    [anon_sym_SQUOTE] = ACTIONS(101),
    [anon_sym_unicode] = ACTIONS(103),
    [sym_comment] = ACTIONS(3),
  },
  [25] = {
    [sym_call_argument] = STATE(548),
    [sym__expression] = STATE(400),
    [sym__primary_expression] = STATE(400),
    [sym_type_cast_expression] = STATE(400),
    [sym_ternary_expression] = STATE(400),
    [sym_new_expression] = STATE(400),
    [sym_tuple_expression] = STATE(400),
    [sym_inline_array_expression] = STATE(400),
    [sym_binary_expression] = STATE(400),
    [sym_unary_expression] = STATE(400),
    [sym_update_expression] = STATE(400),
    [sym_member_expression] = STATE(400),
    [sym_array_access] = STATE(400),
    [sym_slice_access] = STATE(400),
    [sym_struct_expression] = STATE(400),
    [sym_parenthesized_expression] = STATE(400),
    [sym_assignment_expression] = STATE(400),
    [sym_augmented_assignment_expression] = STATE(400),
    [sym_call_expression] = STATE(400),
    [sym_payable_conversion_expression] = STATE(400),
    [sym_meta_type_expression] = STATE(400),
    [sym_user_defined_type] = STATE(400),
    [sym__identifier_path] = STATE(308),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym__literal] = STATE(400),
    [sym_string_literal] = STATE(400),
    [sym_number_literal] = STATE(400),
    [sym__decimal_number] = STATE(316),
    [sym__hex_number] = STATE(316),
    [sym_true] = STATE(371),
    [sym_false] = STATE(371),
    [sym_boolean_literal] = STATE(400),
    [sym_hex_string_literal] = STATE(400),
    [sym_unicode_string_literal] = STATE(400),
    [sym_string] = STATE(333),
    [aux_sym_string_literal_repeat1] = STATE(333),
    [aux_sym_hex_string_literal_repeat2] = STATE(336),
    [aux_sym_unicode_string_literal_repeat3] = STATE(335),
    [sym_identifier] = ACTIONS(105),
    [anon_sym_DASH] = ACTIONS(39),
    [anon_sym_TILDE] = ACTIONS(41),
    [anon_sym_LBRACE] = ACTIONS(244),
    [anon_sym_type] = ACTIONS(47),
    [anon_sym_LPAREN] = ACTIONS(233),
    [anon_sym_RPAREN] = ACTIONS(256),
    [anon_sym_true] = ACTIONS(59),
    [anon_sym_false] = ACTIONS(61),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_payable] = ACTIONS(83),
    [anon_sym_new] = ACTIONS(85),
    [anon_sym_LBRACK] = ACTIONS(87),
    [anon_sym_PLUS] = ACTIONS(39),
    [anon_sym_BANG] = ACTIONS(41),
    [anon_sym_delete] = ACTIONS(89),
    [anon_sym_PLUS_PLUS] = ACTIONS(91),
    [anon_sym_DASH_DASH] = ACTIONS(91),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [aux_sym__decimal_number_token1] = ACTIONS(93),
    [aux_sym__decimal_number_token2] = ACTIONS(95),
    [aux_sym__hex_number_token1] = ACTIONS(95),
    [anon_sym_hex] = ACTIONS(97),
    [anon_sym_DQUOTE] = ACTIONS(99),
    [anon_sym_SQUOTE] = ACTIONS(101),
    [anon_sym_unicode] = ACTIONS(103),
    [sym_comment] = ACTIONS(3),
  },
  [26] = {
    [sym_call_argument] = STATE(628),
    [sym__expression] = STATE(400),
    [sym__primary_expression] = STATE(400),
    [sym_type_cast_expression] = STATE(400),
    [sym_ternary_expression] = STATE(400),
    [sym_new_expression] = STATE(400),
    [sym_tuple_expression] = STATE(400),
    [sym_inline_array_expression] = STATE(400),
    [sym_binary_expression] = STATE(400),
    [sym_unary_expression] = STATE(400),
    [sym_update_expression] = STATE(400),
    [sym_member_expression] = STATE(400),
    [sym_array_access] = STATE(400),
    [sym_slice_access] = STATE(400),
    [sym_struct_expression] = STATE(400),
    [sym_parenthesized_expression] = STATE(400),
    [sym_assignment_expression] = STATE(400),
    [sym_augmented_assignment_expression] = STATE(400),
    [sym_call_expression] = STATE(400),
    [sym_payable_conversion_expression] = STATE(400),
    [sym_meta_type_expression] = STATE(400),
    [sym_user_defined_type] = STATE(400),
    [sym__identifier_path] = STATE(308),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym__literal] = STATE(400),
    [sym_string_literal] = STATE(400),
    [sym_number_literal] = STATE(400),
    [sym__decimal_number] = STATE(316),
    [sym__hex_number] = STATE(316),
    [sym_true] = STATE(371),
    [sym_false] = STATE(371),
    [sym_boolean_literal] = STATE(400),
    [sym_hex_string_literal] = STATE(400),
    [sym_unicode_string_literal] = STATE(400),
    [sym_string] = STATE(333),
    [aux_sym_string_literal_repeat1] = STATE(333),
    [aux_sym_hex_string_literal_repeat2] = STATE(336),
    [aux_sym_unicode_string_literal_repeat3] = STATE(335),
    [sym_identifier] = ACTIONS(105),
    [anon_sym_DASH] = ACTIONS(39),
    [anon_sym_TILDE] = ACTIONS(41),
    [anon_sym_LBRACE] = ACTIONS(244),
    [anon_sym_type] = ACTIONS(47),
    [anon_sym_LPAREN] = ACTIONS(233),
    [anon_sym_true] = ACTIONS(59),
    [anon_sym_false] = ACTIONS(61),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_payable] = ACTIONS(83),
    [anon_sym_new] = ACTIONS(85),
    [anon_sym_LBRACK] = ACTIONS(87),
    [anon_sym_PLUS] = ACTIONS(39),
    [anon_sym_BANG] = ACTIONS(41),
    [anon_sym_delete] = ACTIONS(89),
    [anon_sym_PLUS_PLUS] = ACTIONS(91),
    [anon_sym_DASH_DASH] = ACTIONS(91),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [aux_sym__decimal_number_token1] = ACTIONS(93),
    [aux_sym__decimal_number_token2] = ACTIONS(95),
    [aux_sym__hex_number_token1] = ACTIONS(95),
    [anon_sym_hex] = ACTIONS(97),
    [anon_sym_DQUOTE] = ACTIONS(99),
    [anon_sym_SQUOTE] = ACTIONS(101),
    [anon_sym_unicode] = ACTIONS(103),
    [sym_comment] = ACTIONS(3),
  },
  [27] = {
    [sym__expression] = STATE(398),
    [sym__primary_expression] = STATE(398),
    [sym_type_cast_expression] = STATE(398),
    [sym_ternary_expression] = STATE(398),
    [sym_new_expression] = STATE(398),
    [sym_tuple_expression] = STATE(398),
    [sym_inline_array_expression] = STATE(398),
    [sym_binary_expression] = STATE(398),
    [sym_unary_expression] = STATE(398),
    [sym_update_expression] = STATE(398),
    [sym_member_expression] = STATE(398),
    [sym_array_access] = STATE(398),
    [sym_slice_access] = STATE(398),
    [sym_struct_expression] = STATE(398),
    [sym_parenthesized_expression] = STATE(398),
    [sym_assignment_expression] = STATE(398),
    [sym_augmented_assignment_expression] = STATE(398),
    [sym_call_expression] = STATE(398),
    [sym_payable_conversion_expression] = STATE(398),
    [sym_meta_type_expression] = STATE(398),
    [sym_user_defined_type] = STATE(398),
    [sym__identifier_path] = STATE(308),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym__literal] = STATE(398),
    [sym_string_literal] = STATE(398),
    [sym_number_literal] = STATE(398),
    [sym__decimal_number] = STATE(316),
    [sym__hex_number] = STATE(316),
    [sym_true] = STATE(371),
    [sym_false] = STATE(371),
    [sym_boolean_literal] = STATE(398),
    [sym_hex_string_literal] = STATE(398),
    [sym_unicode_string_literal] = STATE(398),
    [sym_string] = STATE(333),
    [aux_sym_string_literal_repeat1] = STATE(333),
    [aux_sym_hex_string_literal_repeat2] = STATE(336),
    [aux_sym_unicode_string_literal_repeat3] = STATE(335),
    [sym_identifier] = ACTIONS(105),
    [anon_sym_DASH] = ACTIONS(39),
    [anon_sym_TILDE] = ACTIONS(41),
    [anon_sym_COMMA] = ACTIONS(258),
    [anon_sym_type] = ACTIONS(47),
    [anon_sym_LPAREN] = ACTIONS(233),
    [anon_sym_RPAREN] = ACTIONS(260),
    [anon_sym_true] = ACTIONS(59),
    [anon_sym_false] = ACTIONS(61),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_payable] = ACTIONS(83),
    [anon_sym_new] = ACTIONS(85),
    [anon_sym_LBRACK] = ACTIONS(87),
    [anon_sym_PLUS] = ACTIONS(39),
    [anon_sym_BANG] = ACTIONS(41),
    [anon_sym_delete] = ACTIONS(89),
    [anon_sym_PLUS_PLUS] = ACTIONS(91),
    [anon_sym_DASH_DASH] = ACTIONS(91),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [aux_sym__decimal_number_token1] = ACTIONS(93),
    [aux_sym__decimal_number_token2] = ACTIONS(95),
    [aux_sym__hex_number_token1] = ACTIONS(95),
    [anon_sym_hex] = ACTIONS(97),
    [anon_sym_DQUOTE] = ACTIONS(99),
    [anon_sym_SQUOTE] = ACTIONS(101),
    [anon_sym_unicode] = ACTIONS(103),
    [sym_comment] = ACTIONS(3),
  },
  [28] = {
    [sym__expression] = STATE(398),
    [sym__primary_expression] = STATE(398),
    [sym_type_cast_expression] = STATE(398),
    [sym_ternary_expression] = STATE(398),
    [sym_new_expression] = STATE(398),
    [sym_tuple_expression] = STATE(398),
    [sym_inline_array_expression] = STATE(398),
    [sym_binary_expression] = STATE(398),
    [sym_unary_expression] = STATE(398),
    [sym_update_expression] = STATE(398),
    [sym_member_expression] = STATE(398),
    [sym_array_access] = STATE(398),
    [sym_slice_access] = STATE(398),
    [sym_struct_expression] = STATE(398),
    [sym_parenthesized_expression] = STATE(398),
    [sym_assignment_expression] = STATE(398),
    [sym_augmented_assignment_expression] = STATE(398),
    [sym_call_expression] = STATE(398),
    [sym_payable_conversion_expression] = STATE(398),
    [sym_meta_type_expression] = STATE(398),
    [sym_user_defined_type] = STATE(398),
    [sym__identifier_path] = STATE(308),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym__literal] = STATE(398),
    [sym_string_literal] = STATE(398),
    [sym_number_literal] = STATE(398),
    [sym__decimal_number] = STATE(316),
    [sym__hex_number] = STATE(316),
    [sym_true] = STATE(371),
    [sym_false] = STATE(371),
    [sym_boolean_literal] = STATE(398),
    [sym_hex_string_literal] = STATE(398),
    [sym_unicode_string_literal] = STATE(398),
    [sym_string] = STATE(333),
    [aux_sym_string_literal_repeat1] = STATE(333),
    [aux_sym_hex_string_literal_repeat2] = STATE(336),
    [aux_sym_unicode_string_literal_repeat3] = STATE(335),
    [sym_identifier] = ACTIONS(105),
    [anon_sym_DASH] = ACTIONS(39),
    [anon_sym_TILDE] = ACTIONS(41),
    [anon_sym_COMMA] = ACTIONS(258),
    [anon_sym_type] = ACTIONS(47),
    [anon_sym_LPAREN] = ACTIONS(233),
    [anon_sym_RPAREN] = ACTIONS(258),
    [anon_sym_true] = ACTIONS(59),
    [anon_sym_false] = ACTIONS(61),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_payable] = ACTIONS(83),
    [anon_sym_new] = ACTIONS(85),
    [anon_sym_LBRACK] = ACTIONS(87),
    [anon_sym_PLUS] = ACTIONS(39),
    [anon_sym_BANG] = ACTIONS(41),
    [anon_sym_delete] = ACTIONS(89),
    [anon_sym_PLUS_PLUS] = ACTIONS(91),
    [anon_sym_DASH_DASH] = ACTIONS(91),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [aux_sym__decimal_number_token1] = ACTIONS(93),
    [aux_sym__decimal_number_token2] = ACTIONS(95),
    [aux_sym__hex_number_token1] = ACTIONS(95),
    [anon_sym_hex] = ACTIONS(97),
    [anon_sym_DQUOTE] = ACTIONS(99),
    [anon_sym_SQUOTE] = ACTIONS(101),
    [anon_sym_unicode] = ACTIONS(103),
    [sym_comment] = ACTIONS(3),
  },
  [29] = {
    [sym_expression_statement] = STATE(37),
    [sym__expression] = STATE(415),
    [sym__primary_expression] = STATE(415),
    [sym_type_cast_expression] = STATE(415),
    [sym_ternary_expression] = STATE(415),
    [sym_new_expression] = STATE(415),
    [sym_tuple_expression] = STATE(415),
    [sym_inline_array_expression] = STATE(415),
    [sym_binary_expression] = STATE(415),
    [sym_unary_expression] = STATE(415),
    [sym_update_expression] = STATE(415),
    [sym_member_expression] = STATE(415),
    [sym_array_access] = STATE(415),
    [sym_slice_access] = STATE(415),
    [sym_struct_expression] = STATE(415),
    [sym_parenthesized_expression] = STATE(415),
    [sym_assignment_expression] = STATE(415),
    [sym_augmented_assignment_expression] = STATE(415),
    [sym_call_expression] = STATE(415),
    [sym_payable_conversion_expression] = STATE(415),
    [sym_meta_type_expression] = STATE(415),
    [sym_user_defined_type] = STATE(415),
    [sym__identifier_path] = STATE(308),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym__literal] = STATE(415),
    [sym_string_literal] = STATE(415),
    [sym_number_literal] = STATE(415),
    [sym__decimal_number] = STATE(316),
    [sym__hex_number] = STATE(316),
    [sym_true] = STATE(371),
    [sym_false] = STATE(371),
    [sym_boolean_literal] = STATE(415),
    [sym_hex_string_literal] = STATE(415),
    [sym_unicode_string_literal] = STATE(415),
    [sym_string] = STATE(333),
    [aux_sym_string_literal_repeat1] = STATE(333),
    [aux_sym_hex_string_literal_repeat2] = STATE(336),
    [aux_sym_unicode_string_literal_repeat3] = STATE(335),
    [sym_identifier] = ACTIONS(105),
    [anon_sym_DASH] = ACTIONS(39),
    [anon_sym_TILDE] = ACTIONS(41),
    [anon_sym_type] = ACTIONS(47),
    [anon_sym_LPAREN] = ACTIONS(233),
    [anon_sym_true] = ACTIONS(59),
    [anon_sym_false] = ACTIONS(61),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_payable] = ACTIONS(83),
    [anon_sym_new] = ACTIONS(85),
    [anon_sym_LBRACK] = ACTIONS(87),
    [anon_sym_PLUS] = ACTIONS(39),
    [anon_sym_BANG] = ACTIONS(41),
    [anon_sym_delete] = ACTIONS(89),
    [anon_sym_PLUS_PLUS] = ACTIONS(91),
    [anon_sym_DASH_DASH] = ACTIONS(91),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [sym__semicolon] = ACTIONS(262),
    [aux_sym__decimal_number_token1] = ACTIONS(93),
    [aux_sym__decimal_number_token2] = ACTIONS(95),
    [aux_sym__hex_number_token1] = ACTIONS(95),
    [anon_sym_hex] = ACTIONS(97),
    [anon_sym_DQUOTE] = ACTIONS(99),
    [anon_sym_SQUOTE] = ACTIONS(101),
    [anon_sym_unicode] = ACTIONS(103),
    [sym_comment] = ACTIONS(3),
  },
  [30] = {
    [sym__expression] = STATE(404),
    [sym__primary_expression] = STATE(404),
    [sym_type_cast_expression] = STATE(404),
    [sym_ternary_expression] = STATE(404),
    [sym_new_expression] = STATE(404),
    [sym_tuple_expression] = STATE(404),
    [sym_inline_array_expression] = STATE(404),
    [sym_binary_expression] = STATE(404),
    [sym_unary_expression] = STATE(404),
    [sym_update_expression] = STATE(404),
    [sym_member_expression] = STATE(404),
    [sym_array_access] = STATE(404),
    [sym_slice_access] = STATE(404),
    [sym_struct_expression] = STATE(404),
    [sym_parenthesized_expression] = STATE(404),
    [sym_assignment_expression] = STATE(404),
    [sym_augmented_assignment_expression] = STATE(404),
    [sym_call_expression] = STATE(404),
    [sym_payable_conversion_expression] = STATE(404),
    [sym_meta_type_expression] = STATE(404),
    [sym_user_defined_type] = STATE(404),
    [sym__identifier_path] = STATE(308),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym__literal] = STATE(404),
    [sym_string_literal] = STATE(404),
    [sym_number_literal] = STATE(404),
    [sym__decimal_number] = STATE(316),
    [sym__hex_number] = STATE(316),
    [sym_true] = STATE(371),
    [sym_false] = STATE(371),
    [sym_boolean_literal] = STATE(404),
    [sym_hex_string_literal] = STATE(404),
    [sym_unicode_string_literal] = STATE(404),
    [sym_string] = STATE(333),
    [aux_sym_string_literal_repeat1] = STATE(333),
    [aux_sym_hex_string_literal_repeat2] = STATE(336),
    [aux_sym_unicode_string_literal_repeat3] = STATE(335),
    [sym_identifier] = ACTIONS(105),
    [anon_sym_DASH] = ACTIONS(39),
    [anon_sym_TILDE] = ACTIONS(41),
    [anon_sym_type] = ACTIONS(47),
    [anon_sym_LPAREN] = ACTIONS(233),
    [anon_sym_COLON] = ACTIONS(264),
    [anon_sym_true] = ACTIONS(59),
    [anon_sym_false] = ACTIONS(61),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_payable] = ACTIONS(83),
    [anon_sym_new] = ACTIONS(85),
    [anon_sym_LBRACK] = ACTIONS(87),
    [anon_sym_RBRACK] = ACTIONS(266),
    [anon_sym_PLUS] = ACTIONS(39),
    [anon_sym_BANG] = ACTIONS(41),
    [anon_sym_delete] = ACTIONS(89),
    [anon_sym_PLUS_PLUS] = ACTIONS(91),
    [anon_sym_DASH_DASH] = ACTIONS(91),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [aux_sym__decimal_number_token1] = ACTIONS(93),
    [aux_sym__decimal_number_token2] = ACTIONS(95),
    [aux_sym__hex_number_token1] = ACTIONS(95),
    [anon_sym_hex] = ACTIONS(97),
    [anon_sym_DQUOTE] = ACTIONS(99),
    [anon_sym_SQUOTE] = ACTIONS(101),
    [anon_sym_unicode] = ACTIONS(103),
    [sym_comment] = ACTIONS(3),
  },
  [31] = {
    [sym__expression] = STATE(398),
    [sym__primary_expression] = STATE(398),
    [sym_type_cast_expression] = STATE(398),
    [sym_ternary_expression] = STATE(398),
    [sym_new_expression] = STATE(398),
    [sym_tuple_expression] = STATE(398),
    [sym_inline_array_expression] = STATE(398),
    [sym_binary_expression] = STATE(398),
    [sym_unary_expression] = STATE(398),
    [sym_update_expression] = STATE(398),
    [sym_member_expression] = STATE(398),
    [sym_array_access] = STATE(398),
    [sym_slice_access] = STATE(398),
    [sym_struct_expression] = STATE(398),
    [sym_parenthesized_expression] = STATE(398),
    [sym_assignment_expression] = STATE(398),
    [sym_augmented_assignment_expression] = STATE(398),
    [sym_call_expression] = STATE(398),
    [sym_payable_conversion_expression] = STATE(398),
    [sym_meta_type_expression] = STATE(398),
    [sym_user_defined_type] = STATE(398),
    [sym__identifier_path] = STATE(308),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym__literal] = STATE(398),
    [sym_string_literal] = STATE(398),
    [sym_number_literal] = STATE(398),
    [sym__decimal_number] = STATE(316),
    [sym__hex_number] = STATE(316),
    [sym_true] = STATE(371),
    [sym_false] = STATE(371),
    [sym_boolean_literal] = STATE(398),
    [sym_hex_string_literal] = STATE(398),
    [sym_unicode_string_literal] = STATE(398),
    [sym_string] = STATE(333),
    [aux_sym_string_literal_repeat1] = STATE(333),
    [aux_sym_hex_string_literal_repeat2] = STATE(336),
    [aux_sym_unicode_string_literal_repeat3] = STATE(335),
    [sym_identifier] = ACTIONS(105),
    [anon_sym_DASH] = ACTIONS(39),
    [anon_sym_TILDE] = ACTIONS(41),
    [anon_sym_COMMA] = ACTIONS(258),
    [anon_sym_type] = ACTIONS(47),
    [anon_sym_LPAREN] = ACTIONS(233),
    [anon_sym_RPAREN] = ACTIONS(268),
    [anon_sym_true] = ACTIONS(59),
    [anon_sym_false] = ACTIONS(61),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_payable] = ACTIONS(83),
    [anon_sym_new] = ACTIONS(85),
    [anon_sym_LBRACK] = ACTIONS(87),
    [anon_sym_PLUS] = ACTIONS(39),
    [anon_sym_BANG] = ACTIONS(41),
    [anon_sym_delete] = ACTIONS(89),
    [anon_sym_PLUS_PLUS] = ACTIONS(91),
    [anon_sym_DASH_DASH] = ACTIONS(91),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [aux_sym__decimal_number_token1] = ACTIONS(93),
    [aux_sym__decimal_number_token2] = ACTIONS(95),
    [aux_sym__hex_number_token1] = ACTIONS(95),
    [anon_sym_hex] = ACTIONS(97),
    [anon_sym_DQUOTE] = ACTIONS(99),
    [anon_sym_SQUOTE] = ACTIONS(101),
    [anon_sym_unicode] = ACTIONS(103),
    [sym_comment] = ACTIONS(3),
  },
  [32] = {
    [sym__call_arguments] = STATE(722),
    [sym__expression] = STATE(405),
    [sym__primary_expression] = STATE(405),
    [sym_type_cast_expression] = STATE(405),
    [sym_ternary_expression] = STATE(405),
    [sym_new_expression] = STATE(405),
    [sym_tuple_expression] = STATE(405),
    [sym_inline_array_expression] = STATE(405),
    [sym_binary_expression] = STATE(405),
    [sym_unary_expression] = STATE(405),
    [sym_update_expression] = STATE(405),
    [sym_member_expression] = STATE(405),
    [sym_array_access] = STATE(405),
    [sym_slice_access] = STATE(405),
    [sym_struct_expression] = STATE(405),
    [sym_parenthesized_expression] = STATE(405),
    [sym_assignment_expression] = STATE(405),
    [sym_augmented_assignment_expression] = STATE(405),
    [sym_call_expression] = STATE(405),
    [sym_payable_conversion_expression] = STATE(405),
    [sym_meta_type_expression] = STATE(405),
    [sym_user_defined_type] = STATE(405),
    [sym__identifier_path] = STATE(308),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym__literal] = STATE(405),
    [sym_string_literal] = STATE(405),
    [sym_number_literal] = STATE(405),
    [sym__decimal_number] = STATE(316),
    [sym__hex_number] = STATE(316),
    [sym_true] = STATE(371),
    [sym_false] = STATE(371),
    [sym_boolean_literal] = STATE(405),
    [sym_hex_string_literal] = STATE(405),
    [sym_unicode_string_literal] = STATE(405),
    [sym_string] = STATE(333),
    [aux_sym_string_literal_repeat1] = STATE(333),
    [aux_sym_hex_string_literal_repeat2] = STATE(336),
    [aux_sym_unicode_string_literal_repeat3] = STATE(335),
    [sym_identifier] = ACTIONS(105),
    [anon_sym_DASH] = ACTIONS(39),
    [anon_sym_TILDE] = ACTIONS(41),
    [anon_sym_type] = ACTIONS(47),
    [anon_sym_LPAREN] = ACTIONS(270),
    [anon_sym_true] = ACTIONS(59),
    [anon_sym_false] = ACTIONS(61),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_payable] = ACTIONS(83),
    [anon_sym_new] = ACTIONS(85),
    [anon_sym_LBRACK] = ACTIONS(87),
    [anon_sym_PLUS] = ACTIONS(39),
    [anon_sym_BANG] = ACTIONS(41),
    [anon_sym_delete] = ACTIONS(89),
    [anon_sym_PLUS_PLUS] = ACTIONS(91),
    [anon_sym_DASH_DASH] = ACTIONS(91),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [sym__semicolon] = ACTIONS(272),
    [aux_sym__decimal_number_token1] = ACTIONS(93),
    [aux_sym__decimal_number_token2] = ACTIONS(95),
    [aux_sym__hex_number_token1] = ACTIONS(95),
    [anon_sym_hex] = ACTIONS(97),
    [anon_sym_DQUOTE] = ACTIONS(99),
    [anon_sym_SQUOTE] = ACTIONS(101),
    [anon_sym_unicode] = ACTIONS(103),
    [sym_comment] = ACTIONS(3),
  },
  [33] = {
    [sym__expression] = STATE(398),
    [sym__primary_expression] = STATE(398),
    [sym_type_cast_expression] = STATE(398),
    [sym_ternary_expression] = STATE(398),
    [sym_new_expression] = STATE(398),
    [sym_tuple_expression] = STATE(398),
    [sym_inline_array_expression] = STATE(398),
    [sym_binary_expression] = STATE(398),
    [sym_unary_expression] = STATE(398),
    [sym_update_expression] = STATE(398),
    [sym_member_expression] = STATE(398),
    [sym_array_access] = STATE(398),
    [sym_slice_access] = STATE(398),
    [sym_struct_expression] = STATE(398),
    [sym_parenthesized_expression] = STATE(398),
    [sym_assignment_expression] = STATE(398),
    [sym_augmented_assignment_expression] = STATE(398),
    [sym_call_expression] = STATE(398),
    [sym_payable_conversion_expression] = STATE(398),
    [sym_meta_type_expression] = STATE(398),
    [sym_user_defined_type] = STATE(398),
    [sym__identifier_path] = STATE(308),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym__literal] = STATE(398),
    [sym_string_literal] = STATE(398),
    [sym_number_literal] = STATE(398),
    [sym__decimal_number] = STATE(316),
    [sym__hex_number] = STATE(316),
    [sym_true] = STATE(371),
    [sym_false] = STATE(371),
    [sym_boolean_literal] = STATE(398),
    [sym_hex_string_literal] = STATE(398),
    [sym_unicode_string_literal] = STATE(398),
    [sym_string] = STATE(333),
    [aux_sym_string_literal_repeat1] = STATE(333),
    [aux_sym_hex_string_literal_repeat2] = STATE(336),
    [aux_sym_unicode_string_literal_repeat3] = STATE(335),
    [sym_identifier] = ACTIONS(105),
    [anon_sym_DASH] = ACTIONS(39),
    [anon_sym_TILDE] = ACTIONS(41),
    [anon_sym_COMMA] = ACTIONS(258),
    [anon_sym_type] = ACTIONS(47),
    [anon_sym_LPAREN] = ACTIONS(233),
    [anon_sym_RPAREN] = ACTIONS(274),
    [anon_sym_true] = ACTIONS(59),
    [anon_sym_false] = ACTIONS(61),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_payable] = ACTIONS(83),
    [anon_sym_new] = ACTIONS(85),
    [anon_sym_LBRACK] = ACTIONS(87),
    [anon_sym_PLUS] = ACTIONS(39),
    [anon_sym_BANG] = ACTIONS(41),
    [anon_sym_delete] = ACTIONS(89),
    [anon_sym_PLUS_PLUS] = ACTIONS(91),
    [anon_sym_DASH_DASH] = ACTIONS(91),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [aux_sym__decimal_number_token1] = ACTIONS(93),
    [aux_sym__decimal_number_token2] = ACTIONS(95),
    [aux_sym__hex_number_token1] = ACTIONS(95),
    [anon_sym_hex] = ACTIONS(97),
    [anon_sym_DQUOTE] = ACTIONS(99),
    [anon_sym_SQUOTE] = ACTIONS(101),
    [anon_sym_unicode] = ACTIONS(103),
    [sym_comment] = ACTIONS(3),
  },
  [34] = {
    [sym__expression] = STATE(399),
    [sym__primary_expression] = STATE(399),
    [sym_type_cast_expression] = STATE(399),
    [sym_ternary_expression] = STATE(399),
    [sym_new_expression] = STATE(399),
    [sym_tuple_expression] = STATE(399),
    [sym_inline_array_expression] = STATE(399),
    [sym_binary_expression] = STATE(399),
    [sym_unary_expression] = STATE(399),
    [sym_update_expression] = STATE(399),
    [sym_member_expression] = STATE(399),
    [sym_array_access] = STATE(399),
    [sym_slice_access] = STATE(399),
    [sym_struct_expression] = STATE(399),
    [sym_parenthesized_expression] = STATE(399),
    [sym_assignment_expression] = STATE(399),
    [sym_augmented_assignment_expression] = STATE(399),
    [sym_call_expression] = STATE(399),
    [sym_payable_conversion_expression] = STATE(399),
    [sym_meta_type_expression] = STATE(399),
    [sym_user_defined_type] = STATE(399),
    [sym__identifier_path] = STATE(308),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym__literal] = STATE(399),
    [sym_string_literal] = STATE(399),
    [sym_number_literal] = STATE(399),
    [sym__decimal_number] = STATE(316),
    [sym__hex_number] = STATE(316),
    [sym_true] = STATE(371),
    [sym_false] = STATE(371),
    [sym_boolean_literal] = STATE(399),
    [sym_hex_string_literal] = STATE(399),
    [sym_unicode_string_literal] = STATE(399),
    [sym_string] = STATE(333),
    [aux_sym_string_literal_repeat1] = STATE(333),
    [aux_sym_hex_string_literal_repeat2] = STATE(336),
    [aux_sym_unicode_string_literal_repeat3] = STATE(335),
    [sym_identifier] = ACTIONS(105),
    [anon_sym_DASH] = ACTIONS(39),
    [anon_sym_TILDE] = ACTIONS(41),
    [anon_sym_type] = ACTIONS(47),
    [anon_sym_LPAREN] = ACTIONS(233),
    [anon_sym_true] = ACTIONS(59),
    [anon_sym_false] = ACTIONS(61),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_payable] = ACTIONS(83),
    [anon_sym_new] = ACTIONS(85),
    [anon_sym_LBRACK] = ACTIONS(87),
    [anon_sym_RBRACK] = ACTIONS(276),
    [anon_sym_PLUS] = ACTIONS(39),
    [anon_sym_BANG] = ACTIONS(41),
    [anon_sym_delete] = ACTIONS(89),
    [anon_sym_PLUS_PLUS] = ACTIONS(91),
    [anon_sym_DASH_DASH] = ACTIONS(91),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [aux_sym__decimal_number_token1] = ACTIONS(93),
    [aux_sym__decimal_number_token2] = ACTIONS(95),
    [aux_sym__hex_number_token1] = ACTIONS(95),
    [anon_sym_hex] = ACTIONS(97),
    [anon_sym_DQUOTE] = ACTIONS(99),
    [anon_sym_SQUOTE] = ACTIONS(101),
    [anon_sym_unicode] = ACTIONS(103),
    [sym_comment] = ACTIONS(3),
  },
  [35] = {
    [sym__expression] = STATE(411),
    [sym__primary_expression] = STATE(411),
    [sym_type_cast_expression] = STATE(411),
    [sym_ternary_expression] = STATE(411),
    [sym_new_expression] = STATE(411),
    [sym_tuple_expression] = STATE(411),
    [sym_inline_array_expression] = STATE(411),
    [sym_binary_expression] = STATE(411),
    [sym_unary_expression] = STATE(411),
    [sym_update_expression] = STATE(411),
    [sym_member_expression] = STATE(411),
    [sym_array_access] = STATE(411),
    [sym_slice_access] = STATE(411),
    [sym_struct_expression] = STATE(411),
    [sym_parenthesized_expression] = STATE(411),
    [sym_assignment_expression] = STATE(411),
    [sym_augmented_assignment_expression] = STATE(411),
    [sym_call_expression] = STATE(411),
    [sym_payable_conversion_expression] = STATE(411),
    [sym_meta_type_expression] = STATE(411),
    [sym_user_defined_type] = STATE(411),
    [sym__identifier_path] = STATE(308),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym__literal] = STATE(411),
    [sym_string_literal] = STATE(411),
    [sym_number_literal] = STATE(411),
    [sym__decimal_number] = STATE(316),
    [sym__hex_number] = STATE(316),
    [sym_true] = STATE(371),
    [sym_false] = STATE(371),
    [sym_boolean_literal] = STATE(411),
    [sym_hex_string_literal] = STATE(411),
    [sym_unicode_string_literal] = STATE(411),
    [sym_string] = STATE(333),
    [aux_sym_string_literal_repeat1] = STATE(333),
    [aux_sym_hex_string_literal_repeat2] = STATE(336),
    [aux_sym_unicode_string_literal_repeat3] = STATE(335),
    [sym_identifier] = ACTIONS(105),
    [anon_sym_DASH] = ACTIONS(39),
    [anon_sym_TILDE] = ACTIONS(41),
    [anon_sym_type] = ACTIONS(47),
    [anon_sym_LPAREN] = ACTIONS(233),
    [anon_sym_true] = ACTIONS(59),
    [anon_sym_false] = ACTIONS(61),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_payable] = ACTIONS(83),
    [anon_sym_new] = ACTIONS(85),
    [anon_sym_LBRACK] = ACTIONS(87),
    [anon_sym_RBRACK] = ACTIONS(278),
    [anon_sym_PLUS] = ACTIONS(39),
    [anon_sym_BANG] = ACTIONS(41),
    [anon_sym_delete] = ACTIONS(89),
    [anon_sym_PLUS_PLUS] = ACTIONS(91),
    [anon_sym_DASH_DASH] = ACTIONS(91),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [aux_sym__decimal_number_token1] = ACTIONS(93),
    [aux_sym__decimal_number_token2] = ACTIONS(95),
    [aux_sym__hex_number_token1] = ACTIONS(95),
    [anon_sym_hex] = ACTIONS(97),
    [anon_sym_DQUOTE] = ACTIONS(99),
    [anon_sym_SQUOTE] = ACTIONS(101),
    [anon_sym_unicode] = ACTIONS(103),
    [sym_comment] = ACTIONS(3),
  },
  [36] = {
    [sym__expression] = STATE(397),
    [sym__primary_expression] = STATE(397),
    [sym_type_cast_expression] = STATE(397),
    [sym_ternary_expression] = STATE(397),
    [sym_new_expression] = STATE(397),
    [sym_tuple_expression] = STATE(397),
    [sym_inline_array_expression] = STATE(397),
    [sym_binary_expression] = STATE(397),
    [sym_unary_expression] = STATE(397),
    [sym_update_expression] = STATE(397),
    [sym_member_expression] = STATE(397),
    [sym_array_access] = STATE(397),
    [sym_slice_access] = STATE(397),
    [sym_struct_expression] = STATE(397),
    [sym_parenthesized_expression] = STATE(397),
    [sym_assignment_expression] = STATE(397),
    [sym_augmented_assignment_expression] = STATE(397),
    [sym_call_expression] = STATE(397),
    [sym_payable_conversion_expression] = STATE(397),
    [sym_meta_type_expression] = STATE(397),
    [sym_user_defined_type] = STATE(397),
    [sym__identifier_path] = STATE(308),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym__literal] = STATE(397),
    [sym_string_literal] = STATE(397),
    [sym_number_literal] = STATE(397),
    [sym__decimal_number] = STATE(316),
    [sym__hex_number] = STATE(316),
    [sym_true] = STATE(371),
    [sym_false] = STATE(371),
    [sym_boolean_literal] = STATE(397),
    [sym_hex_string_literal] = STATE(397),
    [sym_unicode_string_literal] = STATE(397),
    [sym_string] = STATE(333),
    [aux_sym_string_literal_repeat1] = STATE(333),
    [aux_sym_hex_string_literal_repeat2] = STATE(336),
    [aux_sym_unicode_string_literal_repeat3] = STATE(335),
    [sym_identifier] = ACTIONS(105),
    [anon_sym_DASH] = ACTIONS(39),
    [anon_sym_TILDE] = ACTIONS(41),
    [anon_sym_type] = ACTIONS(47),
    [anon_sym_LPAREN] = ACTIONS(233),
    [anon_sym_true] = ACTIONS(59),
    [anon_sym_false] = ACTIONS(61),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_payable] = ACTIONS(83),
    [anon_sym_new] = ACTIONS(85),
    [anon_sym_LBRACK] = ACTIONS(87),
    [anon_sym_RBRACK] = ACTIONS(280),
    [anon_sym_PLUS] = ACTIONS(39),
    [anon_sym_BANG] = ACTIONS(41),
    [anon_sym_delete] = ACTIONS(89),
    [anon_sym_PLUS_PLUS] = ACTIONS(91),
    [anon_sym_DASH_DASH] = ACTIONS(91),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [aux_sym__decimal_number_token1] = ACTIONS(93),
    [aux_sym__decimal_number_token2] = ACTIONS(95),
    [aux_sym__hex_number_token1] = ACTIONS(95),
    [anon_sym_hex] = ACTIONS(97),
    [anon_sym_DQUOTE] = ACTIONS(99),
    [anon_sym_SQUOTE] = ACTIONS(101),
    [anon_sym_unicode] = ACTIONS(103),
    [sym_comment] = ACTIONS(3),
  },
  [37] = {
    [sym__expression] = STATE(408),
    [sym__primary_expression] = STATE(408),
    [sym_type_cast_expression] = STATE(408),
    [sym_ternary_expression] = STATE(408),
    [sym_new_expression] = STATE(408),
    [sym_tuple_expression] = STATE(408),
    [sym_inline_array_expression] = STATE(408),
    [sym_binary_expression] = STATE(408),
    [sym_unary_expression] = STATE(408),
    [sym_update_expression] = STATE(408),
    [sym_member_expression] = STATE(408),
    [sym_array_access] = STATE(408),
    [sym_slice_access] = STATE(408),
    [sym_struct_expression] = STATE(408),
    [sym_parenthesized_expression] = STATE(408),
    [sym_assignment_expression] = STATE(408),
    [sym_augmented_assignment_expression] = STATE(408),
    [sym_call_expression] = STATE(408),
    [sym_payable_conversion_expression] = STATE(408),
    [sym_meta_type_expression] = STATE(408),
    [sym_user_defined_type] = STATE(408),
    [sym__identifier_path] = STATE(308),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym__literal] = STATE(408),
    [sym_string_literal] = STATE(408),
    [sym_number_literal] = STATE(408),
    [sym__decimal_number] = STATE(316),
    [sym__hex_number] = STATE(316),
    [sym_true] = STATE(371),
    [sym_false] = STATE(371),
    [sym_boolean_literal] = STATE(408),
    [sym_hex_string_literal] = STATE(408),
    [sym_unicode_string_literal] = STATE(408),
    [sym_string] = STATE(333),
    [aux_sym_string_literal_repeat1] = STATE(333),
    [aux_sym_hex_string_literal_repeat2] = STATE(336),
    [aux_sym_unicode_string_literal_repeat3] = STATE(335),
    [sym_identifier] = ACTIONS(105),
    [anon_sym_DASH] = ACTIONS(39),
    [anon_sym_TILDE] = ACTIONS(41),
    [anon_sym_type] = ACTIONS(47),
    [anon_sym_LPAREN] = ACTIONS(233),
    [anon_sym_RPAREN] = ACTIONS(282),
    [anon_sym_true] = ACTIONS(59),
    [anon_sym_false] = ACTIONS(61),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_payable] = ACTIONS(83),
    [anon_sym_new] = ACTIONS(85),
    [anon_sym_LBRACK] = ACTIONS(87),
    [anon_sym_PLUS] = ACTIONS(39),
    [anon_sym_BANG] = ACTIONS(41),
    [anon_sym_delete] = ACTIONS(89),
    [anon_sym_PLUS_PLUS] = ACTIONS(91),
    [anon_sym_DASH_DASH] = ACTIONS(91),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [aux_sym__decimal_number_token1] = ACTIONS(93),
    [aux_sym__decimal_number_token2] = ACTIONS(95),
    [aux_sym__hex_number_token1] = ACTIONS(95),
    [anon_sym_hex] = ACTIONS(97),
    [anon_sym_DQUOTE] = ACTIONS(99),
    [anon_sym_SQUOTE] = ACTIONS(101),
    [anon_sym_unicode] = ACTIONS(103),
    [sym_comment] = ACTIONS(3),
  },
  [38] = {
    [sym__expression] = STATE(399),
    [sym__primary_expression] = STATE(399),
    [sym_type_cast_expression] = STATE(399),
    [sym_ternary_expression] = STATE(399),
    [sym_new_expression] = STATE(399),
    [sym_tuple_expression] = STATE(399),
    [sym_inline_array_expression] = STATE(399),
    [sym_binary_expression] = STATE(399),
    [sym_unary_expression] = STATE(399),
    [sym_update_expression] = STATE(399),
    [sym_member_expression] = STATE(399),
    [sym_array_access] = STATE(399),
    [sym_slice_access] = STATE(399),
    [sym_struct_expression] = STATE(399),
    [sym_parenthesized_expression] = STATE(399),
    [sym_assignment_expression] = STATE(399),
    [sym_augmented_assignment_expression] = STATE(399),
    [sym_call_expression] = STATE(399),
    [sym_payable_conversion_expression] = STATE(399),
    [sym_meta_type_expression] = STATE(399),
    [sym_user_defined_type] = STATE(399),
    [sym__identifier_path] = STATE(308),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym__literal] = STATE(399),
    [sym_string_literal] = STATE(399),
    [sym_number_literal] = STATE(399),
    [sym__decimal_number] = STATE(316),
    [sym__hex_number] = STATE(316),
    [sym_true] = STATE(371),
    [sym_false] = STATE(371),
    [sym_boolean_literal] = STATE(399),
    [sym_hex_string_literal] = STATE(399),
    [sym_unicode_string_literal] = STATE(399),
    [sym_string] = STATE(333),
    [aux_sym_string_literal_repeat1] = STATE(333),
    [aux_sym_hex_string_literal_repeat2] = STATE(336),
    [aux_sym_unicode_string_literal_repeat3] = STATE(335),
    [sym_identifier] = ACTIONS(105),
    [anon_sym_DASH] = ACTIONS(39),
    [anon_sym_TILDE] = ACTIONS(41),
    [anon_sym_type] = ACTIONS(47),
    [anon_sym_LPAREN] = ACTIONS(233),
    [anon_sym_true] = ACTIONS(59),
    [anon_sym_false] = ACTIONS(61),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_payable] = ACTIONS(83),
    [anon_sym_new] = ACTIONS(85),
    [anon_sym_LBRACK] = ACTIONS(87),
    [anon_sym_RBRACK] = ACTIONS(284),
    [anon_sym_PLUS] = ACTIONS(39),
    [anon_sym_BANG] = ACTIONS(41),
    [anon_sym_delete] = ACTIONS(89),
    [anon_sym_PLUS_PLUS] = ACTIONS(91),
    [anon_sym_DASH_DASH] = ACTIONS(91),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [aux_sym__decimal_number_token1] = ACTIONS(93),
    [aux_sym__decimal_number_token2] = ACTIONS(95),
    [aux_sym__hex_number_token1] = ACTIONS(95),
    [anon_sym_hex] = ACTIONS(97),
    [anon_sym_DQUOTE] = ACTIONS(99),
    [anon_sym_SQUOTE] = ACTIONS(101),
    [anon_sym_unicode] = ACTIONS(103),
    [sym_comment] = ACTIONS(3),
  },
  [39] = {
    [sym__expression] = STATE(418),
    [sym__primary_expression] = STATE(418),
    [sym_type_cast_expression] = STATE(418),
    [sym_ternary_expression] = STATE(418),
    [sym_new_expression] = STATE(418),
    [sym_tuple_expression] = STATE(418),
    [sym_inline_array_expression] = STATE(418),
    [sym_binary_expression] = STATE(418),
    [sym_unary_expression] = STATE(418),
    [sym_update_expression] = STATE(418),
    [sym_member_expression] = STATE(418),
    [sym_array_access] = STATE(418),
    [sym_slice_access] = STATE(418),
    [sym_struct_expression] = STATE(418),
    [sym_parenthesized_expression] = STATE(418),
    [sym_assignment_expression] = STATE(418),
    [sym_augmented_assignment_expression] = STATE(418),
    [sym_call_expression] = STATE(418),
    [sym_payable_conversion_expression] = STATE(418),
    [sym_meta_type_expression] = STATE(418),
    [sym_user_defined_type] = STATE(418),
    [sym__identifier_path] = STATE(308),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym__literal] = STATE(418),
    [sym_string_literal] = STATE(418),
    [sym_number_literal] = STATE(418),
    [sym__decimal_number] = STATE(316),
    [sym__hex_number] = STATE(316),
    [sym_true] = STATE(371),
    [sym_false] = STATE(371),
    [sym_boolean_literal] = STATE(418),
    [sym_hex_string_literal] = STATE(418),
    [sym_unicode_string_literal] = STATE(418),
    [sym_string] = STATE(333),
    [aux_sym_string_literal_repeat1] = STATE(333),
    [aux_sym_hex_string_literal_repeat2] = STATE(336),
    [aux_sym_unicode_string_literal_repeat3] = STATE(335),
    [sym_identifier] = ACTIONS(105),
    [anon_sym_DASH] = ACTIONS(39),
    [anon_sym_TILDE] = ACTIONS(41),
    [anon_sym_type] = ACTIONS(47),
    [anon_sym_LPAREN] = ACTIONS(233),
    [anon_sym_true] = ACTIONS(59),
    [anon_sym_false] = ACTIONS(61),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_payable] = ACTIONS(83),
    [anon_sym_new] = ACTIONS(85),
    [anon_sym_LBRACK] = ACTIONS(87),
    [anon_sym_RBRACK] = ACTIONS(286),
    [anon_sym_PLUS] = ACTIONS(39),
    [anon_sym_BANG] = ACTIONS(41),
    [anon_sym_delete] = ACTIONS(89),
    [anon_sym_PLUS_PLUS] = ACTIONS(91),
    [anon_sym_DASH_DASH] = ACTIONS(91),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [aux_sym__decimal_number_token1] = ACTIONS(93),
    [aux_sym__decimal_number_token2] = ACTIONS(95),
    [aux_sym__hex_number_token1] = ACTIONS(95),
    [anon_sym_hex] = ACTIONS(97),
    [anon_sym_DQUOTE] = ACTIONS(99),
    [anon_sym_SQUOTE] = ACTIONS(101),
    [anon_sym_unicode] = ACTIONS(103),
    [sym_comment] = ACTIONS(3),
  },
  [40] = {
    [sym__expression] = STATE(416),
    [sym__primary_expression] = STATE(416),
    [sym_type_cast_expression] = STATE(416),
    [sym_ternary_expression] = STATE(416),
    [sym_new_expression] = STATE(416),
    [sym_tuple_expression] = STATE(416),
    [sym_inline_array_expression] = STATE(416),
    [sym_binary_expression] = STATE(416),
    [sym_unary_expression] = STATE(416),
    [sym_update_expression] = STATE(416),
    [sym_member_expression] = STATE(416),
    [sym_array_access] = STATE(416),
    [sym_slice_access] = STATE(416),
    [sym_struct_expression] = STATE(416),
    [sym_parenthesized_expression] = STATE(416),
    [sym_assignment_expression] = STATE(416),
    [sym_augmented_assignment_expression] = STATE(416),
    [sym_call_expression] = STATE(416),
    [sym_payable_conversion_expression] = STATE(416),
    [sym_meta_type_expression] = STATE(416),
    [sym_user_defined_type] = STATE(416),
    [sym__identifier_path] = STATE(308),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym__literal] = STATE(416),
    [sym_string_literal] = STATE(416),
    [sym_number_literal] = STATE(416),
    [sym__decimal_number] = STATE(316),
    [sym__hex_number] = STATE(316),
    [sym_true] = STATE(371),
    [sym_false] = STATE(371),
    [sym_boolean_literal] = STATE(416),
    [sym_hex_string_literal] = STATE(416),
    [sym_unicode_string_literal] = STATE(416),
    [sym_string] = STATE(333),
    [aux_sym_string_literal_repeat1] = STATE(333),
    [aux_sym_hex_string_literal_repeat2] = STATE(336),
    [aux_sym_unicode_string_literal_repeat3] = STATE(335),
    [sym_identifier] = ACTIONS(105),
    [anon_sym_DASH] = ACTIONS(39),
    [anon_sym_TILDE] = ACTIONS(41),
    [anon_sym_type] = ACTIONS(47),
    [anon_sym_LPAREN] = ACTIONS(233),
    [anon_sym_true] = ACTIONS(59),
    [anon_sym_false] = ACTIONS(61),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_payable] = ACTIONS(83),
    [anon_sym_new] = ACTIONS(85),
    [anon_sym_LBRACK] = ACTIONS(87),
    [anon_sym_RBRACK] = ACTIONS(288),
    [anon_sym_PLUS] = ACTIONS(39),
    [anon_sym_BANG] = ACTIONS(41),
    [anon_sym_delete] = ACTIONS(89),
    [anon_sym_PLUS_PLUS] = ACTIONS(91),
    [anon_sym_DASH_DASH] = ACTIONS(91),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [aux_sym__decimal_number_token1] = ACTIONS(93),
    [aux_sym__decimal_number_token2] = ACTIONS(95),
    [aux_sym__hex_number_token1] = ACTIONS(95),
    [anon_sym_hex] = ACTIONS(97),
    [anon_sym_DQUOTE] = ACTIONS(99),
    [anon_sym_SQUOTE] = ACTIONS(101),
    [anon_sym_unicode] = ACTIONS(103),
    [sym_comment] = ACTIONS(3),
  },
  [41] = {
    [sym__expression] = STATE(419),
    [sym__primary_expression] = STATE(419),
    [sym_type_cast_expression] = STATE(419),
    [sym_ternary_expression] = STATE(419),
    [sym_new_expression] = STATE(419),
    [sym_tuple_expression] = STATE(419),
    [sym_inline_array_expression] = STATE(419),
    [sym_binary_expression] = STATE(419),
    [sym_unary_expression] = STATE(419),
    [sym_update_expression] = STATE(419),
    [sym_member_expression] = STATE(419),
    [sym_array_access] = STATE(419),
    [sym_slice_access] = STATE(419),
    [sym_struct_expression] = STATE(419),
    [sym_parenthesized_expression] = STATE(419),
    [sym_assignment_expression] = STATE(419),
    [sym_augmented_assignment_expression] = STATE(419),
    [sym_call_expression] = STATE(419),
    [sym_payable_conversion_expression] = STATE(419),
    [sym_meta_type_expression] = STATE(419),
    [sym_user_defined_type] = STATE(419),
    [sym__identifier_path] = STATE(308),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym__literal] = STATE(419),
    [sym_string_literal] = STATE(419),
    [sym_number_literal] = STATE(419),
    [sym__decimal_number] = STATE(316),
    [sym__hex_number] = STATE(316),
    [sym_true] = STATE(371),
    [sym_false] = STATE(371),
    [sym_boolean_literal] = STATE(419),
    [sym_hex_string_literal] = STATE(419),
    [sym_unicode_string_literal] = STATE(419),
    [sym_string] = STATE(333),
    [aux_sym_string_literal_repeat1] = STATE(333),
    [aux_sym_hex_string_literal_repeat2] = STATE(336),
    [aux_sym_unicode_string_literal_repeat3] = STATE(335),
    [sym_identifier] = ACTIONS(105),
    [anon_sym_DASH] = ACTIONS(39),
    [anon_sym_TILDE] = ACTIONS(41),
    [anon_sym_type] = ACTIONS(47),
    [anon_sym_LPAREN] = ACTIONS(233),
    [anon_sym_true] = ACTIONS(59),
    [anon_sym_false] = ACTIONS(61),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_payable] = ACTIONS(83),
    [anon_sym_new] = ACTIONS(85),
    [anon_sym_LBRACK] = ACTIONS(87),
    [anon_sym_PLUS] = ACTIONS(39),
    [anon_sym_BANG] = ACTIONS(41),
    [anon_sym_delete] = ACTIONS(89),
    [anon_sym_PLUS_PLUS] = ACTIONS(91),
    [anon_sym_DASH_DASH] = ACTIONS(91),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [sym__semicolon] = ACTIONS(290),
    [aux_sym__decimal_number_token1] = ACTIONS(93),
    [aux_sym__decimal_number_token2] = ACTIONS(95),
    [aux_sym__hex_number_token1] = ACTIONS(95),
    [anon_sym_hex] = ACTIONS(97),
    [anon_sym_DQUOTE] = ACTIONS(99),
    [anon_sym_SQUOTE] = ACTIONS(101),
    [anon_sym_unicode] = ACTIONS(103),
    [sym_comment] = ACTIONS(3),
  },
  [42] = {
    [sym__expression] = STATE(394),
    [sym__primary_expression] = STATE(394),
    [sym_type_cast_expression] = STATE(394),
    [sym_ternary_expression] = STATE(394),
    [sym_new_expression] = STATE(394),
    [sym_tuple_expression] = STATE(394),
    [sym_inline_array_expression] = STATE(394),
    [sym_binary_expression] = STATE(394),
    [sym_unary_expression] = STATE(394),
    [sym_update_expression] = STATE(394),
    [sym_member_expression] = STATE(394),
    [sym_array_access] = STATE(394),
    [sym_slice_access] = STATE(394),
    [sym_struct_expression] = STATE(394),
    [sym_parenthesized_expression] = STATE(394),
    [sym_assignment_expression] = STATE(394),
    [sym_augmented_assignment_expression] = STATE(394),
    [sym_call_expression] = STATE(394),
    [sym_payable_conversion_expression] = STATE(394),
    [sym_meta_type_expression] = STATE(394),
    [sym_user_defined_type] = STATE(394),
    [sym__identifier_path] = STATE(308),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym__literal] = STATE(394),
    [sym_string_literal] = STATE(394),
    [sym_number_literal] = STATE(394),
    [sym__decimal_number] = STATE(316),
    [sym__hex_number] = STATE(316),
    [sym_true] = STATE(371),
    [sym_false] = STATE(371),
    [sym_boolean_literal] = STATE(394),
    [sym_hex_string_literal] = STATE(394),
    [sym_unicode_string_literal] = STATE(394),
    [sym_string] = STATE(333),
    [aux_sym_string_literal_repeat1] = STATE(333),
    [aux_sym_hex_string_literal_repeat2] = STATE(336),
    [aux_sym_unicode_string_literal_repeat3] = STATE(335),
    [sym_identifier] = ACTIONS(105),
    [anon_sym_DASH] = ACTIONS(39),
    [anon_sym_TILDE] = ACTIONS(41),
    [anon_sym_type] = ACTIONS(47),
    [anon_sym_LPAREN] = ACTIONS(233),
    [anon_sym_true] = ACTIONS(59),
    [anon_sym_false] = ACTIONS(61),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_payable] = ACTIONS(83),
    [anon_sym_new] = ACTIONS(85),
    [anon_sym_LBRACK] = ACTIONS(87),
    [anon_sym_PLUS] = ACTIONS(39),
    [anon_sym_BANG] = ACTIONS(41),
    [anon_sym_delete] = ACTIONS(89),
    [anon_sym_PLUS_PLUS] = ACTIONS(91),
    [anon_sym_DASH_DASH] = ACTIONS(91),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [aux_sym__decimal_number_token1] = ACTIONS(93),
    [aux_sym__decimal_number_token2] = ACTIONS(95),
    [aux_sym__hex_number_token1] = ACTIONS(95),
    [anon_sym_hex] = ACTIONS(97),
    [anon_sym_DQUOTE] = ACTIONS(99),
    [anon_sym_SQUOTE] = ACTIONS(101),
    [anon_sym_unicode] = ACTIONS(103),
    [sym_comment] = ACTIONS(3),
  },
  [43] = {
    [sym__expression] = STATE(348),
    [sym__primary_expression] = STATE(348),
    [sym_type_cast_expression] = STATE(348),
    [sym_ternary_expression] = STATE(348),
    [sym_new_expression] = STATE(348),
    [sym_tuple_expression] = STATE(348),
    [sym_inline_array_expression] = STATE(348),
    [sym_binary_expression] = STATE(348),
    [sym_unary_expression] = STATE(348),
    [sym_update_expression] = STATE(348),
    [sym_member_expression] = STATE(348),
    [sym_array_access] = STATE(348),
    [sym_slice_access] = STATE(348),
    [sym_struct_expression] = STATE(348),
    [sym_parenthesized_expression] = STATE(348),
    [sym_assignment_expression] = STATE(348),
    [sym_augmented_assignment_expression] = STATE(348),
    [sym_call_expression] = STATE(348),
    [sym_payable_conversion_expression] = STATE(348),
    [sym_meta_type_expression] = STATE(348),
    [sym_user_defined_type] = STATE(348),
    [sym__identifier_path] = STATE(308),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym__literal] = STATE(348),
    [sym_string_literal] = STATE(348),
    [sym_number_literal] = STATE(348),
    [sym__decimal_number] = STATE(316),
    [sym__hex_number] = STATE(316),
    [sym_true] = STATE(371),
    [sym_false] = STATE(371),
    [sym_boolean_literal] = STATE(348),
    [sym_hex_string_literal] = STATE(348),
    [sym_unicode_string_literal] = STATE(348),
    [sym_string] = STATE(333),
    [aux_sym_string_literal_repeat1] = STATE(333),
    [aux_sym_hex_string_literal_repeat2] = STATE(336),
    [aux_sym_unicode_string_literal_repeat3] = STATE(335),
    [sym_identifier] = ACTIONS(105),
    [anon_sym_DASH] = ACTIONS(39),
    [anon_sym_TILDE] = ACTIONS(41),
    [anon_sym_type] = ACTIONS(47),
    [anon_sym_LPAREN] = ACTIONS(233),
    [anon_sym_true] = ACTIONS(59),
    [anon_sym_false] = ACTIONS(61),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_payable] = ACTIONS(83),
    [anon_sym_new] = ACTIONS(85),
    [anon_sym_LBRACK] = ACTIONS(87),
    [anon_sym_PLUS] = ACTIONS(39),
    [anon_sym_BANG] = ACTIONS(41),
    [anon_sym_delete] = ACTIONS(89),
    [anon_sym_PLUS_PLUS] = ACTIONS(91),
    [anon_sym_DASH_DASH] = ACTIONS(91),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [aux_sym__decimal_number_token1] = ACTIONS(93),
    [aux_sym__decimal_number_token2] = ACTIONS(95),
    [aux_sym__hex_number_token1] = ACTIONS(95),
    [anon_sym_hex] = ACTIONS(97),
    [anon_sym_DQUOTE] = ACTIONS(99),
    [anon_sym_SQUOTE] = ACTIONS(101),
    [anon_sym_unicode] = ACTIONS(103),
    [sym_comment] = ACTIONS(3),
  },
  [44] = {
    [sym__expression] = STATE(414),
    [sym__primary_expression] = STATE(414),
    [sym_type_cast_expression] = STATE(414),
    [sym_ternary_expression] = STATE(414),
    [sym_new_expression] = STATE(414),
    [sym_tuple_expression] = STATE(414),
    [sym_inline_array_expression] = STATE(414),
    [sym_binary_expression] = STATE(414),
    [sym_unary_expression] = STATE(414),
    [sym_update_expression] = STATE(414),
    [sym_member_expression] = STATE(414),
    [sym_array_access] = STATE(414),
    [sym_slice_access] = STATE(414),
    [sym_struct_expression] = STATE(414),
    [sym_parenthesized_expression] = STATE(414),
    [sym_assignment_expression] = STATE(414),
    [sym_augmented_assignment_expression] = STATE(414),
    [sym_call_expression] = STATE(414),
    [sym_payable_conversion_expression] = STATE(414),
    [sym_meta_type_expression] = STATE(414),
    [sym_user_defined_type] = STATE(414),
    [sym__identifier_path] = STATE(308),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym__literal] = STATE(414),
    [sym_string_literal] = STATE(414),
    [sym_number_literal] = STATE(414),
    [sym__decimal_number] = STATE(316),
    [sym__hex_number] = STATE(316),
    [sym_true] = STATE(371),
    [sym_false] = STATE(371),
    [sym_boolean_literal] = STATE(414),
    [sym_hex_string_literal] = STATE(414),
    [sym_unicode_string_literal] = STATE(414),
    [sym_string] = STATE(333),
    [aux_sym_string_literal_repeat1] = STATE(333),
    [aux_sym_hex_string_literal_repeat2] = STATE(336),
    [aux_sym_unicode_string_literal_repeat3] = STATE(335),
    [sym_identifier] = ACTIONS(105),
    [anon_sym_DASH] = ACTIONS(39),
    [anon_sym_TILDE] = ACTIONS(41),
    [anon_sym_type] = ACTIONS(47),
    [anon_sym_LPAREN] = ACTIONS(233),
    [anon_sym_true] = ACTIONS(59),
    [anon_sym_false] = ACTIONS(61),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_payable] = ACTIONS(83),
    [anon_sym_new] = ACTIONS(85),
    [anon_sym_LBRACK] = ACTIONS(87),
    [anon_sym_PLUS] = ACTIONS(39),
    [anon_sym_BANG] = ACTIONS(41),
    [anon_sym_delete] = ACTIONS(89),
    [anon_sym_PLUS_PLUS] = ACTIONS(91),
    [anon_sym_DASH_DASH] = ACTIONS(91),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [aux_sym__decimal_number_token1] = ACTIONS(93),
    [aux_sym__decimal_number_token2] = ACTIONS(95),
    [aux_sym__hex_number_token1] = ACTIONS(95),
    [anon_sym_hex] = ACTIONS(97),
    [anon_sym_DQUOTE] = ACTIONS(99),
    [anon_sym_SQUOTE] = ACTIONS(101),
    [anon_sym_unicode] = ACTIONS(103),
    [sym_comment] = ACTIONS(3),
  },
  [45] = {
    [sym__expression] = STATE(343),
    [sym__primary_expression] = STATE(343),
    [sym_type_cast_expression] = STATE(343),
    [sym_ternary_expression] = STATE(343),
    [sym_new_expression] = STATE(343),
    [sym_tuple_expression] = STATE(343),
    [sym_inline_array_expression] = STATE(343),
    [sym_binary_expression] = STATE(343),
    [sym_unary_expression] = STATE(343),
    [sym_update_expression] = STATE(343),
    [sym_member_expression] = STATE(343),
    [sym_array_access] = STATE(343),
    [sym_slice_access] = STATE(343),
    [sym_struct_expression] = STATE(343),
    [sym_parenthesized_expression] = STATE(343),
    [sym_assignment_expression] = STATE(343),
    [sym_augmented_assignment_expression] = STATE(343),
    [sym_call_expression] = STATE(343),
    [sym_payable_conversion_expression] = STATE(343),
    [sym_meta_type_expression] = STATE(343),
    [sym_user_defined_type] = STATE(343),
    [sym__identifier_path] = STATE(308),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym__literal] = STATE(343),
    [sym_string_literal] = STATE(343),
    [sym_number_literal] = STATE(343),
    [sym__decimal_number] = STATE(316),
    [sym__hex_number] = STATE(316),
    [sym_true] = STATE(371),
    [sym_false] = STATE(371),
    [sym_boolean_literal] = STATE(343),
    [sym_hex_string_literal] = STATE(343),
    [sym_unicode_string_literal] = STATE(343),
    [sym_string] = STATE(333),
    [aux_sym_string_literal_repeat1] = STATE(333),
    [aux_sym_hex_string_literal_repeat2] = STATE(336),
    [aux_sym_unicode_string_literal_repeat3] = STATE(335),
    [sym_identifier] = ACTIONS(105),
    [anon_sym_DASH] = ACTIONS(39),
    [anon_sym_TILDE] = ACTIONS(41),
    [anon_sym_type] = ACTIONS(47),
    [anon_sym_LPAREN] = ACTIONS(233),
    [anon_sym_true] = ACTIONS(59),
    [anon_sym_false] = ACTIONS(61),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_payable] = ACTIONS(83),
    [anon_sym_new] = ACTIONS(85),
    [anon_sym_LBRACK] = ACTIONS(87),
    [anon_sym_PLUS] = ACTIONS(39),
    [anon_sym_BANG] = ACTIONS(41),
    [anon_sym_delete] = ACTIONS(89),
    [anon_sym_PLUS_PLUS] = ACTIONS(91),
    [anon_sym_DASH_DASH] = ACTIONS(91),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [aux_sym__decimal_number_token1] = ACTIONS(93),
    [aux_sym__decimal_number_token2] = ACTIONS(95),
    [aux_sym__hex_number_token1] = ACTIONS(95),
    [anon_sym_hex] = ACTIONS(97),
    [anon_sym_DQUOTE] = ACTIONS(99),
    [anon_sym_SQUOTE] = ACTIONS(101),
    [anon_sym_unicode] = ACTIONS(103),
    [sym_comment] = ACTIONS(3),
  },
  [46] = {
    [sym__expression] = STATE(422),
    [sym__primary_expression] = STATE(422),
    [sym_type_cast_expression] = STATE(422),
    [sym_ternary_expression] = STATE(422),
    [sym_new_expression] = STATE(422),
    [sym_tuple_expression] = STATE(422),
    [sym_inline_array_expression] = STATE(422),
    [sym_binary_expression] = STATE(422),
    [sym_unary_expression] = STATE(422),
    [sym_update_expression] = STATE(422),
    [sym_member_expression] = STATE(422),
    [sym_array_access] = STATE(422),
    [sym_slice_access] = STATE(422),
    [sym_struct_expression] = STATE(422),
    [sym_parenthesized_expression] = STATE(422),
    [sym_assignment_expression] = STATE(422),
    [sym_augmented_assignment_expression] = STATE(422),
    [sym_call_expression] = STATE(422),
    [sym_payable_conversion_expression] = STATE(422),
    [sym_meta_type_expression] = STATE(422),
    [sym_user_defined_type] = STATE(422),
    [sym__identifier_path] = STATE(308),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym__literal] = STATE(422),
    [sym_string_literal] = STATE(422),
    [sym_number_literal] = STATE(422),
    [sym__decimal_number] = STATE(316),
    [sym__hex_number] = STATE(316),
    [sym_true] = STATE(371),
    [sym_false] = STATE(371),
    [sym_boolean_literal] = STATE(422),
    [sym_hex_string_literal] = STATE(422),
    [sym_unicode_string_literal] = STATE(422),
    [sym_string] = STATE(333),
    [aux_sym_string_literal_repeat1] = STATE(333),
    [aux_sym_hex_string_literal_repeat2] = STATE(336),
    [aux_sym_unicode_string_literal_repeat3] = STATE(335),
    [sym_identifier] = ACTIONS(105),
    [anon_sym_DASH] = ACTIONS(39),
    [anon_sym_TILDE] = ACTIONS(41),
    [anon_sym_type] = ACTIONS(47),
    [anon_sym_LPAREN] = ACTIONS(233),
    [anon_sym_true] = ACTIONS(59),
    [anon_sym_false] = ACTIONS(61),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_payable] = ACTIONS(83),
    [anon_sym_new] = ACTIONS(85),
    [anon_sym_LBRACK] = ACTIONS(87),
    [anon_sym_PLUS] = ACTIONS(39),
    [anon_sym_BANG] = ACTIONS(41),
    [anon_sym_delete] = ACTIONS(89),
    [anon_sym_PLUS_PLUS] = ACTIONS(91),
    [anon_sym_DASH_DASH] = ACTIONS(91),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [aux_sym__decimal_number_token1] = ACTIONS(93),
    [aux_sym__decimal_number_token2] = ACTIONS(95),
    [aux_sym__hex_number_token1] = ACTIONS(95),
    [anon_sym_hex] = ACTIONS(97),
    [anon_sym_DQUOTE] = ACTIONS(99),
    [anon_sym_SQUOTE] = ACTIONS(101),
    [anon_sym_unicode] = ACTIONS(103),
    [sym_comment] = ACTIONS(3),
  },
  [47] = {
    [sym__expression] = STATE(344),
    [sym__primary_expression] = STATE(344),
    [sym_type_cast_expression] = STATE(344),
    [sym_ternary_expression] = STATE(344),
    [sym_new_expression] = STATE(344),
    [sym_tuple_expression] = STATE(344),
    [sym_inline_array_expression] = STATE(344),
    [sym_binary_expression] = STATE(344),
    [sym_unary_expression] = STATE(344),
    [sym_update_expression] = STATE(344),
    [sym_member_expression] = STATE(344),
    [sym_array_access] = STATE(344),
    [sym_slice_access] = STATE(344),
    [sym_struct_expression] = STATE(344),
    [sym_parenthesized_expression] = STATE(344),
    [sym_assignment_expression] = STATE(344),
    [sym_augmented_assignment_expression] = STATE(344),
    [sym_call_expression] = STATE(344),
    [sym_payable_conversion_expression] = STATE(344),
    [sym_meta_type_expression] = STATE(344),
    [sym_user_defined_type] = STATE(344),
    [sym__identifier_path] = STATE(308),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym__literal] = STATE(344),
    [sym_string_literal] = STATE(344),
    [sym_number_literal] = STATE(344),
    [sym__decimal_number] = STATE(316),
    [sym__hex_number] = STATE(316),
    [sym_true] = STATE(371),
    [sym_false] = STATE(371),
    [sym_boolean_literal] = STATE(344),
    [sym_hex_string_literal] = STATE(344),
    [sym_unicode_string_literal] = STATE(344),
    [sym_string] = STATE(333),
    [aux_sym_string_literal_repeat1] = STATE(333),
    [aux_sym_hex_string_literal_repeat2] = STATE(336),
    [aux_sym_unicode_string_literal_repeat3] = STATE(335),
    [sym_identifier] = ACTIONS(105),
    [anon_sym_DASH] = ACTIONS(39),
    [anon_sym_TILDE] = ACTIONS(41),
    [anon_sym_type] = ACTIONS(47),
    [anon_sym_LPAREN] = ACTIONS(233),
    [anon_sym_true] = ACTIONS(59),
    [anon_sym_false] = ACTIONS(61),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_payable] = ACTIONS(83),
    [anon_sym_new] = ACTIONS(85),
    [anon_sym_LBRACK] = ACTIONS(87),
    [anon_sym_PLUS] = ACTIONS(39),
    [anon_sym_BANG] = ACTIONS(41),
    [anon_sym_delete] = ACTIONS(89),
    [anon_sym_PLUS_PLUS] = ACTIONS(91),
    [anon_sym_DASH_DASH] = ACTIONS(91),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [aux_sym__decimal_number_token1] = ACTIONS(93),
    [aux_sym__decimal_number_token2] = ACTIONS(95),
    [aux_sym__hex_number_token1] = ACTIONS(95),
    [anon_sym_hex] = ACTIONS(97),
    [anon_sym_DQUOTE] = ACTIONS(99),
    [anon_sym_SQUOTE] = ACTIONS(101),
    [anon_sym_unicode] = ACTIONS(103),
    [sym_comment] = ACTIONS(3),
  },
  [48] = {
    [sym__expression] = STATE(402),
    [sym__primary_expression] = STATE(402),
    [sym_type_cast_expression] = STATE(402),
    [sym_ternary_expression] = STATE(402),
    [sym_new_expression] = STATE(402),
    [sym_tuple_expression] = STATE(402),
    [sym_inline_array_expression] = STATE(402),
    [sym_binary_expression] = STATE(402),
    [sym_unary_expression] = STATE(402),
    [sym_update_expression] = STATE(402),
    [sym_member_expression] = STATE(402),
    [sym_array_access] = STATE(402),
    [sym_slice_access] = STATE(402),
    [sym_struct_expression] = STATE(402),
    [sym_parenthesized_expression] = STATE(402),
    [sym_assignment_expression] = STATE(402),
    [sym_augmented_assignment_expression] = STATE(402),
    [sym_call_expression] = STATE(402),
    [sym_payable_conversion_expression] = STATE(402),
    [sym_meta_type_expression] = STATE(402),
    [sym_user_defined_type] = STATE(402),
    [sym__identifier_path] = STATE(308),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym__literal] = STATE(402),
    [sym_string_literal] = STATE(402),
    [sym_number_literal] = STATE(402),
    [sym__decimal_number] = STATE(316),
    [sym__hex_number] = STATE(316),
    [sym_true] = STATE(371),
    [sym_false] = STATE(371),
    [sym_boolean_literal] = STATE(402),
    [sym_hex_string_literal] = STATE(402),
    [sym_unicode_string_literal] = STATE(402),
    [sym_string] = STATE(333),
    [aux_sym_string_literal_repeat1] = STATE(333),
    [aux_sym_hex_string_literal_repeat2] = STATE(336),
    [aux_sym_unicode_string_literal_repeat3] = STATE(335),
    [sym_identifier] = ACTIONS(105),
    [anon_sym_DASH] = ACTIONS(39),
    [anon_sym_TILDE] = ACTIONS(41),
    [anon_sym_type] = ACTIONS(47),
    [anon_sym_LPAREN] = ACTIONS(233),
    [anon_sym_true] = ACTIONS(59),
    [anon_sym_false] = ACTIONS(61),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_payable] = ACTIONS(83),
    [anon_sym_new] = ACTIONS(85),
    [anon_sym_LBRACK] = ACTIONS(87),
    [anon_sym_PLUS] = ACTIONS(39),
    [anon_sym_BANG] = ACTIONS(41),
    [anon_sym_delete] = ACTIONS(89),
    [anon_sym_PLUS_PLUS] = ACTIONS(91),
    [anon_sym_DASH_DASH] = ACTIONS(91),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [aux_sym__decimal_number_token1] = ACTIONS(93),
    [aux_sym__decimal_number_token2] = ACTIONS(95),
    [aux_sym__hex_number_token1] = ACTIONS(95),
    [anon_sym_hex] = ACTIONS(97),
    [anon_sym_DQUOTE] = ACTIONS(99),
    [anon_sym_SQUOTE] = ACTIONS(101),
    [anon_sym_unicode] = ACTIONS(103),
    [sym_comment] = ACTIONS(3),
  },
  [49] = {
    [sym__expression] = STATE(407),
    [sym__primary_expression] = STATE(407),
    [sym_type_cast_expression] = STATE(407),
    [sym_ternary_expression] = STATE(407),
    [sym_new_expression] = STATE(407),
    [sym_tuple_expression] = STATE(407),
    [sym_inline_array_expression] = STATE(407),
    [sym_binary_expression] = STATE(407),
    [sym_unary_expression] = STATE(407),
    [sym_update_expression] = STATE(407),
    [sym_member_expression] = STATE(407),
    [sym_array_access] = STATE(407),
    [sym_slice_access] = STATE(407),
    [sym_struct_expression] = STATE(407),
    [sym_parenthesized_expression] = STATE(407),
    [sym_assignment_expression] = STATE(407),
    [sym_augmented_assignment_expression] = STATE(407),
    [sym_call_expression] = STATE(407),
    [sym_payable_conversion_expression] = STATE(407),
    [sym_meta_type_expression] = STATE(407),
    [sym_user_defined_type] = STATE(407),
    [sym__identifier_path] = STATE(308),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym__literal] = STATE(407),
    [sym_string_literal] = STATE(407),
    [sym_number_literal] = STATE(407),
    [sym__decimal_number] = STATE(316),
    [sym__hex_number] = STATE(316),
    [sym_true] = STATE(371),
    [sym_false] = STATE(371),
    [sym_boolean_literal] = STATE(407),
    [sym_hex_string_literal] = STATE(407),
    [sym_unicode_string_literal] = STATE(407),
    [sym_string] = STATE(333),
    [aux_sym_string_literal_repeat1] = STATE(333),
    [aux_sym_hex_string_literal_repeat2] = STATE(336),
    [aux_sym_unicode_string_literal_repeat3] = STATE(335),
    [sym_identifier] = ACTIONS(105),
    [anon_sym_DASH] = ACTIONS(39),
    [anon_sym_TILDE] = ACTIONS(41),
    [anon_sym_type] = ACTIONS(47),
    [anon_sym_LPAREN] = ACTIONS(233),
    [anon_sym_true] = ACTIONS(59),
    [anon_sym_false] = ACTIONS(61),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_payable] = ACTIONS(83),
    [anon_sym_new] = ACTIONS(85),
    [anon_sym_LBRACK] = ACTIONS(87),
    [anon_sym_PLUS] = ACTIONS(39),
    [anon_sym_BANG] = ACTIONS(41),
    [anon_sym_delete] = ACTIONS(89),
    [anon_sym_PLUS_PLUS] = ACTIONS(91),
    [anon_sym_DASH_DASH] = ACTIONS(91),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [aux_sym__decimal_number_token1] = ACTIONS(93),
    [aux_sym__decimal_number_token2] = ACTIONS(95),
    [aux_sym__hex_number_token1] = ACTIONS(95),
    [anon_sym_hex] = ACTIONS(97),
    [anon_sym_DQUOTE] = ACTIONS(99),
    [anon_sym_SQUOTE] = ACTIONS(101),
    [anon_sym_unicode] = ACTIONS(103),
    [sym_comment] = ACTIONS(3),
  },
  [50] = {
    [sym__expression] = STATE(357),
    [sym__primary_expression] = STATE(357),
    [sym_type_cast_expression] = STATE(357),
    [sym_ternary_expression] = STATE(357),
    [sym_new_expression] = STATE(357),
    [sym_tuple_expression] = STATE(357),
    [sym_inline_array_expression] = STATE(357),
    [sym_binary_expression] = STATE(357),
    [sym_unary_expression] = STATE(357),
    [sym_update_expression] = STATE(357),
    [sym_member_expression] = STATE(357),
    [sym_array_access] = STATE(357),
    [sym_slice_access] = STATE(357),
    [sym_struct_expression] = STATE(357),
    [sym_parenthesized_expression] = STATE(357),
    [sym_assignment_expression] = STATE(357),
    [sym_augmented_assignment_expression] = STATE(357),
    [sym_call_expression] = STATE(357),
    [sym_payable_conversion_expression] = STATE(357),
    [sym_meta_type_expression] = STATE(357),
    [sym_user_defined_type] = STATE(357),
    [sym__identifier_path] = STATE(308),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym__literal] = STATE(357),
    [sym_string_literal] = STATE(357),
    [sym_number_literal] = STATE(357),
    [sym__decimal_number] = STATE(316),
    [sym__hex_number] = STATE(316),
    [sym_true] = STATE(371),
    [sym_false] = STATE(371),
    [sym_boolean_literal] = STATE(357),
    [sym_hex_string_literal] = STATE(357),
    [sym_unicode_string_literal] = STATE(357),
    [sym_string] = STATE(333),
    [aux_sym_string_literal_repeat1] = STATE(333),
    [aux_sym_hex_string_literal_repeat2] = STATE(336),
    [aux_sym_unicode_string_literal_repeat3] = STATE(335),
    [sym_identifier] = ACTIONS(105),
    [anon_sym_DASH] = ACTIONS(39),
    [anon_sym_TILDE] = ACTIONS(41),
    [anon_sym_type] = ACTIONS(47),
    [anon_sym_LPAREN] = ACTIONS(233),
    [anon_sym_true] = ACTIONS(59),
    [anon_sym_false] = ACTIONS(61),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_payable] = ACTIONS(83),
    [anon_sym_new] = ACTIONS(85),
    [anon_sym_LBRACK] = ACTIONS(87),
    [anon_sym_PLUS] = ACTIONS(39),
    [anon_sym_BANG] = ACTIONS(41),
    [anon_sym_delete] = ACTIONS(89),
    [anon_sym_PLUS_PLUS] = ACTIONS(91),
    [anon_sym_DASH_DASH] = ACTIONS(91),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [aux_sym__decimal_number_token1] = ACTIONS(93),
    [aux_sym__decimal_number_token2] = ACTIONS(95),
    [aux_sym__hex_number_token1] = ACTIONS(95),
    [anon_sym_hex] = ACTIONS(97),
    [anon_sym_DQUOTE] = ACTIONS(99),
    [anon_sym_SQUOTE] = ACTIONS(101),
    [anon_sym_unicode] = ACTIONS(103),
    [sym_comment] = ACTIONS(3),
  },
  [51] = {
    [sym__expression] = STATE(340),
    [sym__primary_expression] = STATE(340),
    [sym_type_cast_expression] = STATE(340),
    [sym_ternary_expression] = STATE(340),
    [sym_new_expression] = STATE(340),
    [sym_tuple_expression] = STATE(340),
    [sym_inline_array_expression] = STATE(340),
    [sym_binary_expression] = STATE(340),
    [sym_unary_expression] = STATE(340),
    [sym_update_expression] = STATE(340),
    [sym_member_expression] = STATE(340),
    [sym_array_access] = STATE(340),
    [sym_slice_access] = STATE(340),
    [sym_struct_expression] = STATE(340),
    [sym_parenthesized_expression] = STATE(340),
    [sym_assignment_expression] = STATE(340),
    [sym_augmented_assignment_expression] = STATE(340),
    [sym_call_expression] = STATE(340),
    [sym_payable_conversion_expression] = STATE(340),
    [sym_meta_type_expression] = STATE(340),
    [sym_user_defined_type] = STATE(340),
    [sym__identifier_path] = STATE(308),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym__literal] = STATE(340),
    [sym_string_literal] = STATE(340),
    [sym_number_literal] = STATE(340),
    [sym__decimal_number] = STATE(316),
    [sym__hex_number] = STATE(316),
    [sym_true] = STATE(371),
    [sym_false] = STATE(371),
    [sym_boolean_literal] = STATE(340),
    [sym_hex_string_literal] = STATE(340),
    [sym_unicode_string_literal] = STATE(340),
    [sym_string] = STATE(333),
    [aux_sym_string_literal_repeat1] = STATE(333),
    [aux_sym_hex_string_literal_repeat2] = STATE(336),
    [aux_sym_unicode_string_literal_repeat3] = STATE(335),
    [sym_identifier] = ACTIONS(105),
    [anon_sym_DASH] = ACTIONS(39),
    [anon_sym_TILDE] = ACTIONS(41),
    [anon_sym_type] = ACTIONS(47),
    [anon_sym_LPAREN] = ACTIONS(233),
    [anon_sym_true] = ACTIONS(59),
    [anon_sym_false] = ACTIONS(61),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_payable] = ACTIONS(83),
    [anon_sym_new] = ACTIONS(85),
    [anon_sym_LBRACK] = ACTIONS(87),
    [anon_sym_PLUS] = ACTIONS(39),
    [anon_sym_BANG] = ACTIONS(41),
    [anon_sym_delete] = ACTIONS(89),
    [anon_sym_PLUS_PLUS] = ACTIONS(91),
    [anon_sym_DASH_DASH] = ACTIONS(91),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [aux_sym__decimal_number_token1] = ACTIONS(93),
    [aux_sym__decimal_number_token2] = ACTIONS(95),
    [aux_sym__hex_number_token1] = ACTIONS(95),
    [anon_sym_hex] = ACTIONS(97),
    [anon_sym_DQUOTE] = ACTIONS(99),
    [anon_sym_SQUOTE] = ACTIONS(101),
    [anon_sym_unicode] = ACTIONS(103),
    [sym_comment] = ACTIONS(3),
  },
  [52] = {
    [sym__expression] = STATE(410),
    [sym__primary_expression] = STATE(410),
    [sym_type_cast_expression] = STATE(410),
    [sym_ternary_expression] = STATE(410),
    [sym_new_expression] = STATE(410),
    [sym_tuple_expression] = STATE(410),
    [sym_inline_array_expression] = STATE(410),
    [sym_binary_expression] = STATE(410),
    [sym_unary_expression] = STATE(410),
    [sym_update_expression] = STATE(410),
    [sym_member_expression] = STATE(410),
    [sym_array_access] = STATE(410),
    [sym_slice_access] = STATE(410),
    [sym_struct_expression] = STATE(410),
    [sym_parenthesized_expression] = STATE(410),
    [sym_assignment_expression] = STATE(410),
    [sym_augmented_assignment_expression] = STATE(410),
    [sym_call_expression] = STATE(410),
    [sym_payable_conversion_expression] = STATE(410),
    [sym_meta_type_expression] = STATE(410),
    [sym_user_defined_type] = STATE(410),
    [sym__identifier_path] = STATE(308),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym__literal] = STATE(410),
    [sym_string_literal] = STATE(410),
    [sym_number_literal] = STATE(410),
    [sym__decimal_number] = STATE(316),
    [sym__hex_number] = STATE(316),
    [sym_true] = STATE(371),
    [sym_false] = STATE(371),
    [sym_boolean_literal] = STATE(410),
    [sym_hex_string_literal] = STATE(410),
    [sym_unicode_string_literal] = STATE(410),
    [sym_string] = STATE(333),
    [aux_sym_string_literal_repeat1] = STATE(333),
    [aux_sym_hex_string_literal_repeat2] = STATE(336),
    [aux_sym_unicode_string_literal_repeat3] = STATE(335),
    [sym_identifier] = ACTIONS(105),
    [anon_sym_DASH] = ACTIONS(39),
    [anon_sym_TILDE] = ACTIONS(41),
    [anon_sym_type] = ACTIONS(47),
    [anon_sym_LPAREN] = ACTIONS(233),
    [anon_sym_true] = ACTIONS(59),
    [anon_sym_false] = ACTIONS(61),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_payable] = ACTIONS(83),
    [anon_sym_new] = ACTIONS(85),
    [anon_sym_LBRACK] = ACTIONS(87),
    [anon_sym_PLUS] = ACTIONS(39),
    [anon_sym_BANG] = ACTIONS(41),
    [anon_sym_delete] = ACTIONS(89),
    [anon_sym_PLUS_PLUS] = ACTIONS(91),
    [anon_sym_DASH_DASH] = ACTIONS(91),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [aux_sym__decimal_number_token1] = ACTIONS(93),
    [aux_sym__decimal_number_token2] = ACTIONS(95),
    [aux_sym__hex_number_token1] = ACTIONS(95),
    [anon_sym_hex] = ACTIONS(97),
    [anon_sym_DQUOTE] = ACTIONS(99),
    [anon_sym_SQUOTE] = ACTIONS(101),
    [anon_sym_unicode] = ACTIONS(103),
    [sym_comment] = ACTIONS(3),
  },
  [53] = {
    [sym__expression] = STATE(412),
    [sym__primary_expression] = STATE(412),
    [sym_type_cast_expression] = STATE(412),
    [sym_ternary_expression] = STATE(412),
    [sym_new_expression] = STATE(412),
    [sym_tuple_expression] = STATE(412),
    [sym_inline_array_expression] = STATE(412),
    [sym_binary_expression] = STATE(412),
    [sym_unary_expression] = STATE(412),
    [sym_update_expression] = STATE(412),
    [sym_member_expression] = STATE(412),
    [sym_array_access] = STATE(412),
    [sym_slice_access] = STATE(412),
    [sym_struct_expression] = STATE(412),
    [sym_parenthesized_expression] = STATE(412),
    [sym_assignment_expression] = STATE(412),
    [sym_augmented_assignment_expression] = STATE(412),
    [sym_call_expression] = STATE(412),
    [sym_payable_conversion_expression] = STATE(412),
    [sym_meta_type_expression] = STATE(412),
    [sym_user_defined_type] = STATE(412),
    [sym__identifier_path] = STATE(308),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym__literal] = STATE(412),
    [sym_string_literal] = STATE(412),
    [sym_number_literal] = STATE(412),
    [sym__decimal_number] = STATE(316),
    [sym__hex_number] = STATE(316),
    [sym_true] = STATE(371),
    [sym_false] = STATE(371),
    [sym_boolean_literal] = STATE(412),
    [sym_hex_string_literal] = STATE(412),
    [sym_unicode_string_literal] = STATE(412),
    [sym_string] = STATE(333),
    [aux_sym_string_literal_repeat1] = STATE(333),
    [aux_sym_hex_string_literal_repeat2] = STATE(336),
    [aux_sym_unicode_string_literal_repeat3] = STATE(335),
    [sym_identifier] = ACTIONS(105),
    [anon_sym_DASH] = ACTIONS(39),
    [anon_sym_TILDE] = ACTIONS(41),
    [anon_sym_type] = ACTIONS(47),
    [anon_sym_LPAREN] = ACTIONS(233),
    [anon_sym_true] = ACTIONS(59),
    [anon_sym_false] = ACTIONS(61),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_payable] = ACTIONS(83),
    [anon_sym_new] = ACTIONS(85),
    [anon_sym_LBRACK] = ACTIONS(87),
    [anon_sym_PLUS] = ACTIONS(39),
    [anon_sym_BANG] = ACTIONS(41),
    [anon_sym_delete] = ACTIONS(89),
    [anon_sym_PLUS_PLUS] = ACTIONS(91),
    [anon_sym_DASH_DASH] = ACTIONS(91),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [aux_sym__decimal_number_token1] = ACTIONS(93),
    [aux_sym__decimal_number_token2] = ACTIONS(95),
    [aux_sym__hex_number_token1] = ACTIONS(95),
    [anon_sym_hex] = ACTIONS(97),
    [anon_sym_DQUOTE] = ACTIONS(99),
    [anon_sym_SQUOTE] = ACTIONS(101),
    [anon_sym_unicode] = ACTIONS(103),
    [sym_comment] = ACTIONS(3),
  },
  [54] = {
    [sym__expression] = STATE(345),
    [sym__primary_expression] = STATE(345),
    [sym_type_cast_expression] = STATE(345),
    [sym_ternary_expression] = STATE(345),
    [sym_new_expression] = STATE(345),
    [sym_tuple_expression] = STATE(345),
    [sym_inline_array_expression] = STATE(345),
    [sym_binary_expression] = STATE(345),
    [sym_unary_expression] = STATE(345),
    [sym_update_expression] = STATE(345),
    [sym_member_expression] = STATE(345),
    [sym_array_access] = STATE(345),
    [sym_slice_access] = STATE(345),
    [sym_struct_expression] = STATE(345),
    [sym_parenthesized_expression] = STATE(345),
    [sym_assignment_expression] = STATE(345),
    [sym_augmented_assignment_expression] = STATE(345),
    [sym_call_expression] = STATE(345),
    [sym_payable_conversion_expression] = STATE(345),
    [sym_meta_type_expression] = STATE(345),
    [sym_user_defined_type] = STATE(345),
    [sym__identifier_path] = STATE(308),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym__literal] = STATE(345),
    [sym_string_literal] = STATE(345),
    [sym_number_literal] = STATE(345),
    [sym__decimal_number] = STATE(316),
    [sym__hex_number] = STATE(316),
    [sym_true] = STATE(371),
    [sym_false] = STATE(371),
    [sym_boolean_literal] = STATE(345),
    [sym_hex_string_literal] = STATE(345),
    [sym_unicode_string_literal] = STATE(345),
    [sym_string] = STATE(333),
    [aux_sym_string_literal_repeat1] = STATE(333),
    [aux_sym_hex_string_literal_repeat2] = STATE(336),
    [aux_sym_unicode_string_literal_repeat3] = STATE(335),
    [sym_identifier] = ACTIONS(105),
    [anon_sym_DASH] = ACTIONS(39),
    [anon_sym_TILDE] = ACTIONS(41),
    [anon_sym_type] = ACTIONS(47),
    [anon_sym_LPAREN] = ACTIONS(233),
    [anon_sym_true] = ACTIONS(59),
    [anon_sym_false] = ACTIONS(61),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_payable] = ACTIONS(83),
    [anon_sym_new] = ACTIONS(85),
    [anon_sym_LBRACK] = ACTIONS(87),
    [anon_sym_PLUS] = ACTIONS(39),
    [anon_sym_BANG] = ACTIONS(41),
    [anon_sym_delete] = ACTIONS(89),
    [anon_sym_PLUS_PLUS] = ACTIONS(91),
    [anon_sym_DASH_DASH] = ACTIONS(91),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [aux_sym__decimal_number_token1] = ACTIONS(93),
    [aux_sym__decimal_number_token2] = ACTIONS(95),
    [aux_sym__hex_number_token1] = ACTIONS(95),
    [anon_sym_hex] = ACTIONS(97),
    [anon_sym_DQUOTE] = ACTIONS(99),
    [anon_sym_SQUOTE] = ACTIONS(101),
    [anon_sym_unicode] = ACTIONS(103),
    [sym_comment] = ACTIONS(3),
  },
  [55] = {
    [sym__expression] = STATE(399),
    [sym__primary_expression] = STATE(399),
    [sym_type_cast_expression] = STATE(399),
    [sym_ternary_expression] = STATE(399),
    [sym_new_expression] = STATE(399),
    [sym_tuple_expression] = STATE(399),
    [sym_inline_array_expression] = STATE(399),
    [sym_binary_expression] = STATE(399),
    [sym_unary_expression] = STATE(399),
    [sym_update_expression] = STATE(399),
    [sym_member_expression] = STATE(399),
    [sym_array_access] = STATE(399),
    [sym_slice_access] = STATE(399),
    [sym_struct_expression] = STATE(399),
    [sym_parenthesized_expression] = STATE(399),
    [sym_assignment_expression] = STATE(399),
    [sym_augmented_assignment_expression] = STATE(399),
    [sym_call_expression] = STATE(399),
    [sym_payable_conversion_expression] = STATE(399),
    [sym_meta_type_expression] = STATE(399),
    [sym_user_defined_type] = STATE(399),
    [sym__identifier_path] = STATE(308),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym__literal] = STATE(399),
    [sym_string_literal] = STATE(399),
    [sym_number_literal] = STATE(399),
    [sym__decimal_number] = STATE(316),
    [sym__hex_number] = STATE(316),
    [sym_true] = STATE(371),
    [sym_false] = STATE(371),
    [sym_boolean_literal] = STATE(399),
    [sym_hex_string_literal] = STATE(399),
    [sym_unicode_string_literal] = STATE(399),
    [sym_string] = STATE(333),
    [aux_sym_string_literal_repeat1] = STATE(333),
    [aux_sym_hex_string_literal_repeat2] = STATE(336),
    [aux_sym_unicode_string_literal_repeat3] = STATE(335),
    [sym_identifier] = ACTIONS(105),
    [anon_sym_DASH] = ACTIONS(39),
    [anon_sym_TILDE] = ACTIONS(41),
    [anon_sym_type] = ACTIONS(47),
    [anon_sym_LPAREN] = ACTIONS(233),
    [anon_sym_true] = ACTIONS(59),
    [anon_sym_false] = ACTIONS(61),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_payable] = ACTIONS(83),
    [anon_sym_new] = ACTIONS(85),
    [anon_sym_LBRACK] = ACTIONS(87),
    [anon_sym_PLUS] = ACTIONS(39),
    [anon_sym_BANG] = ACTIONS(41),
    [anon_sym_delete] = ACTIONS(89),
    [anon_sym_PLUS_PLUS] = ACTIONS(91),
    [anon_sym_DASH_DASH] = ACTIONS(91),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [aux_sym__decimal_number_token1] = ACTIONS(93),
    [aux_sym__decimal_number_token2] = ACTIONS(95),
    [aux_sym__hex_number_token1] = ACTIONS(95),
    [anon_sym_hex] = ACTIONS(97),
    [anon_sym_DQUOTE] = ACTIONS(99),
    [anon_sym_SQUOTE] = ACTIONS(101),
    [anon_sym_unicode] = ACTIONS(103),
    [sym_comment] = ACTIONS(3),
  },
  [56] = {
    [sym__expression] = STATE(413),
    [sym__primary_expression] = STATE(413),
    [sym_type_cast_expression] = STATE(413),
    [sym_ternary_expression] = STATE(413),
    [sym_new_expression] = STATE(413),
    [sym_tuple_expression] = STATE(413),
    [sym_inline_array_expression] = STATE(413),
    [sym_binary_expression] = STATE(413),
    [sym_unary_expression] = STATE(413),
    [sym_update_expression] = STATE(413),
    [sym_member_expression] = STATE(413),
    [sym_array_access] = STATE(413),
    [sym_slice_access] = STATE(413),
    [sym_struct_expression] = STATE(413),
    [sym_parenthesized_expression] = STATE(413),
    [sym_assignment_expression] = STATE(413),
    [sym_augmented_assignment_expression] = STATE(413),
    [sym_call_expression] = STATE(413),
    [sym_payable_conversion_expression] = STATE(413),
    [sym_meta_type_expression] = STATE(413),
    [sym_user_defined_type] = STATE(413),
    [sym__identifier_path] = STATE(308),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym__literal] = STATE(413),
    [sym_string_literal] = STATE(413),
    [sym_number_literal] = STATE(413),
    [sym__decimal_number] = STATE(316),
    [sym__hex_number] = STATE(316),
    [sym_true] = STATE(371),
    [sym_false] = STATE(371),
    [sym_boolean_literal] = STATE(413),
    [sym_hex_string_literal] = STATE(413),
    [sym_unicode_string_literal] = STATE(413),
    [sym_string] = STATE(333),
    [aux_sym_string_literal_repeat1] = STATE(333),
    [aux_sym_hex_string_literal_repeat2] = STATE(336),
    [aux_sym_unicode_string_literal_repeat3] = STATE(335),
    [sym_identifier] = ACTIONS(105),
    [anon_sym_DASH] = ACTIONS(39),
    [anon_sym_TILDE] = ACTIONS(41),
    [anon_sym_type] = ACTIONS(47),
    [anon_sym_LPAREN] = ACTIONS(233),
    [anon_sym_true] = ACTIONS(59),
    [anon_sym_false] = ACTIONS(61),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_payable] = ACTIONS(83),
    [anon_sym_new] = ACTIONS(85),
    [anon_sym_LBRACK] = ACTIONS(87),
    [anon_sym_PLUS] = ACTIONS(39),
    [anon_sym_BANG] = ACTIONS(41),
    [anon_sym_delete] = ACTIONS(89),
    [anon_sym_PLUS_PLUS] = ACTIONS(91),
    [anon_sym_DASH_DASH] = ACTIONS(91),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [aux_sym__decimal_number_token1] = ACTIONS(93),
    [aux_sym__decimal_number_token2] = ACTIONS(95),
    [aux_sym__hex_number_token1] = ACTIONS(95),
    [anon_sym_hex] = ACTIONS(97),
    [anon_sym_DQUOTE] = ACTIONS(99),
    [anon_sym_SQUOTE] = ACTIONS(101),
    [anon_sym_unicode] = ACTIONS(103),
    [sym_comment] = ACTIONS(3),
  },
  [57] = {
    [sym__expression] = STATE(406),
    [sym__primary_expression] = STATE(406),
    [sym_type_cast_expression] = STATE(406),
    [sym_ternary_expression] = STATE(406),
    [sym_new_expression] = STATE(406),
    [sym_tuple_expression] = STATE(406),
    [sym_inline_array_expression] = STATE(406),
    [sym_binary_expression] = STATE(406),
    [sym_unary_expression] = STATE(406),
    [sym_update_expression] = STATE(406),
    [sym_member_expression] = STATE(406),
    [sym_array_access] = STATE(406),
    [sym_slice_access] = STATE(406),
    [sym_struct_expression] = STATE(406),
    [sym_parenthesized_expression] = STATE(406),
    [sym_assignment_expression] = STATE(406),
    [sym_augmented_assignment_expression] = STATE(406),
    [sym_call_expression] = STATE(406),
    [sym_payable_conversion_expression] = STATE(406),
    [sym_meta_type_expression] = STATE(406),
    [sym_user_defined_type] = STATE(406),
    [sym__identifier_path] = STATE(308),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym__literal] = STATE(406),
    [sym_string_literal] = STATE(406),
    [sym_number_literal] = STATE(406),
    [sym__decimal_number] = STATE(316),
    [sym__hex_number] = STATE(316),
    [sym_true] = STATE(371),
    [sym_false] = STATE(371),
    [sym_boolean_literal] = STATE(406),
    [sym_hex_string_literal] = STATE(406),
    [sym_unicode_string_literal] = STATE(406),
    [sym_string] = STATE(333),
    [aux_sym_string_literal_repeat1] = STATE(333),
    [aux_sym_hex_string_literal_repeat2] = STATE(336),
    [aux_sym_unicode_string_literal_repeat3] = STATE(335),
    [sym_identifier] = ACTIONS(105),
    [anon_sym_DASH] = ACTIONS(39),
    [anon_sym_TILDE] = ACTIONS(41),
    [anon_sym_type] = ACTIONS(47),
    [anon_sym_LPAREN] = ACTIONS(233),
    [anon_sym_true] = ACTIONS(59),
    [anon_sym_false] = ACTIONS(61),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_payable] = ACTIONS(83),
    [anon_sym_new] = ACTIONS(85),
    [anon_sym_LBRACK] = ACTIONS(87),
    [anon_sym_PLUS] = ACTIONS(39),
    [anon_sym_BANG] = ACTIONS(41),
    [anon_sym_delete] = ACTIONS(89),
    [anon_sym_PLUS_PLUS] = ACTIONS(91),
    [anon_sym_DASH_DASH] = ACTIONS(91),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [aux_sym__decimal_number_token1] = ACTIONS(93),
    [aux_sym__decimal_number_token2] = ACTIONS(95),
    [aux_sym__hex_number_token1] = ACTIONS(95),
    [anon_sym_hex] = ACTIONS(97),
    [anon_sym_DQUOTE] = ACTIONS(99),
    [anon_sym_SQUOTE] = ACTIONS(101),
    [anon_sym_unicode] = ACTIONS(103),
    [sym_comment] = ACTIONS(3),
  },
  [58] = {
    [sym__expression] = STATE(401),
    [sym__primary_expression] = STATE(401),
    [sym_type_cast_expression] = STATE(401),
    [sym_ternary_expression] = STATE(401),
    [sym_new_expression] = STATE(401),
    [sym_tuple_expression] = STATE(401),
    [sym_inline_array_expression] = STATE(401),
    [sym_binary_expression] = STATE(401),
    [sym_unary_expression] = STATE(401),
    [sym_update_expression] = STATE(401),
    [sym_member_expression] = STATE(401),
    [sym_array_access] = STATE(401),
    [sym_slice_access] = STATE(401),
    [sym_struct_expression] = STATE(401),
    [sym_parenthesized_expression] = STATE(401),
    [sym_assignment_expression] = STATE(401),
    [sym_augmented_assignment_expression] = STATE(401),
    [sym_call_expression] = STATE(401),
    [sym_payable_conversion_expression] = STATE(401),
    [sym_meta_type_expression] = STATE(401),
    [sym_user_defined_type] = STATE(401),
    [sym__identifier_path] = STATE(308),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym__literal] = STATE(401),
    [sym_string_literal] = STATE(401),
    [sym_number_literal] = STATE(401),
    [sym__decimal_number] = STATE(316),
    [sym__hex_number] = STATE(316),
    [sym_true] = STATE(371),
    [sym_false] = STATE(371),
    [sym_boolean_literal] = STATE(401),
    [sym_hex_string_literal] = STATE(401),
    [sym_unicode_string_literal] = STATE(401),
    [sym_string] = STATE(333),
    [aux_sym_string_literal_repeat1] = STATE(333),
    [aux_sym_hex_string_literal_repeat2] = STATE(336),
    [aux_sym_unicode_string_literal_repeat3] = STATE(335),
    [sym_identifier] = ACTIONS(105),
    [anon_sym_DASH] = ACTIONS(39),
    [anon_sym_TILDE] = ACTIONS(41),
    [anon_sym_type] = ACTIONS(47),
    [anon_sym_LPAREN] = ACTIONS(233),
    [anon_sym_true] = ACTIONS(59),
    [anon_sym_false] = ACTIONS(61),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_payable] = ACTIONS(83),
    [anon_sym_new] = ACTIONS(85),
    [anon_sym_LBRACK] = ACTIONS(87),
    [anon_sym_PLUS] = ACTIONS(39),
    [anon_sym_BANG] = ACTIONS(41),
    [anon_sym_delete] = ACTIONS(89),
    [anon_sym_PLUS_PLUS] = ACTIONS(91),
    [anon_sym_DASH_DASH] = ACTIONS(91),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [aux_sym__decimal_number_token1] = ACTIONS(93),
    [aux_sym__decimal_number_token2] = ACTIONS(95),
    [aux_sym__hex_number_token1] = ACTIONS(95),
    [anon_sym_hex] = ACTIONS(97),
    [anon_sym_DQUOTE] = ACTIONS(99),
    [anon_sym_SQUOTE] = ACTIONS(101),
    [anon_sym_unicode] = ACTIONS(103),
    [sym_comment] = ACTIONS(3),
  },
  [59] = {
    [sym__expression] = STATE(346),
    [sym__primary_expression] = STATE(346),
    [sym_type_cast_expression] = STATE(346),
    [sym_ternary_expression] = STATE(346),
    [sym_new_expression] = STATE(346),
    [sym_tuple_expression] = STATE(346),
    [sym_inline_array_expression] = STATE(346),
    [sym_binary_expression] = STATE(346),
    [sym_unary_expression] = STATE(346),
    [sym_update_expression] = STATE(346),
    [sym_member_expression] = STATE(346),
    [sym_array_access] = STATE(346),
    [sym_slice_access] = STATE(346),
    [sym_struct_expression] = STATE(346),
    [sym_parenthesized_expression] = STATE(346),
    [sym_assignment_expression] = STATE(346),
    [sym_augmented_assignment_expression] = STATE(346),
    [sym_call_expression] = STATE(346),
    [sym_payable_conversion_expression] = STATE(346),
    [sym_meta_type_expression] = STATE(346),
    [sym_user_defined_type] = STATE(346),
    [sym__identifier_path] = STATE(308),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym__literal] = STATE(346),
    [sym_string_literal] = STATE(346),
    [sym_number_literal] = STATE(346),
    [sym__decimal_number] = STATE(316),
    [sym__hex_number] = STATE(316),
    [sym_true] = STATE(371),
    [sym_false] = STATE(371),
    [sym_boolean_literal] = STATE(346),
    [sym_hex_string_literal] = STATE(346),
    [sym_unicode_string_literal] = STATE(346),
    [sym_string] = STATE(333),
    [aux_sym_string_literal_repeat1] = STATE(333),
    [aux_sym_hex_string_literal_repeat2] = STATE(336),
    [aux_sym_unicode_string_literal_repeat3] = STATE(335),
    [sym_identifier] = ACTIONS(105),
    [anon_sym_DASH] = ACTIONS(39),
    [anon_sym_TILDE] = ACTIONS(41),
    [anon_sym_type] = ACTIONS(47),
    [anon_sym_LPAREN] = ACTIONS(233),
    [anon_sym_true] = ACTIONS(59),
    [anon_sym_false] = ACTIONS(61),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_payable] = ACTIONS(83),
    [anon_sym_new] = ACTIONS(85),
    [anon_sym_LBRACK] = ACTIONS(87),
    [anon_sym_PLUS] = ACTIONS(39),
    [anon_sym_BANG] = ACTIONS(41),
    [anon_sym_delete] = ACTIONS(89),
    [anon_sym_PLUS_PLUS] = ACTIONS(91),
    [anon_sym_DASH_DASH] = ACTIONS(91),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [aux_sym__decimal_number_token1] = ACTIONS(93),
    [aux_sym__decimal_number_token2] = ACTIONS(95),
    [aux_sym__hex_number_token1] = ACTIONS(95),
    [anon_sym_hex] = ACTIONS(97),
    [anon_sym_DQUOTE] = ACTIONS(99),
    [anon_sym_SQUOTE] = ACTIONS(101),
    [anon_sym_unicode] = ACTIONS(103),
    [sym_comment] = ACTIONS(3),
  },
  [60] = {
    [sym__expression] = STATE(341),
    [sym__primary_expression] = STATE(341),
    [sym_type_cast_expression] = STATE(341),
    [sym_ternary_expression] = STATE(341),
    [sym_new_expression] = STATE(341),
    [sym_tuple_expression] = STATE(341),
    [sym_inline_array_expression] = STATE(341),
    [sym_binary_expression] = STATE(341),
    [sym_unary_expression] = STATE(341),
    [sym_update_expression] = STATE(341),
    [sym_member_expression] = STATE(341),
    [sym_array_access] = STATE(341),
    [sym_slice_access] = STATE(341),
    [sym_struct_expression] = STATE(341),
    [sym_parenthesized_expression] = STATE(341),
    [sym_assignment_expression] = STATE(341),
    [sym_augmented_assignment_expression] = STATE(341),
    [sym_call_expression] = STATE(341),
    [sym_payable_conversion_expression] = STATE(341),
    [sym_meta_type_expression] = STATE(341),
    [sym_user_defined_type] = STATE(341),
    [sym__identifier_path] = STATE(308),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym__literal] = STATE(341),
    [sym_string_literal] = STATE(341),
    [sym_number_literal] = STATE(341),
    [sym__decimal_number] = STATE(316),
    [sym__hex_number] = STATE(316),
    [sym_true] = STATE(371),
    [sym_false] = STATE(371),
    [sym_boolean_literal] = STATE(341),
    [sym_hex_string_literal] = STATE(341),
    [sym_unicode_string_literal] = STATE(341),
    [sym_string] = STATE(333),
    [aux_sym_string_literal_repeat1] = STATE(333),
    [aux_sym_hex_string_literal_repeat2] = STATE(336),
    [aux_sym_unicode_string_literal_repeat3] = STATE(335),
    [sym_identifier] = ACTIONS(105),
    [anon_sym_DASH] = ACTIONS(39),
    [anon_sym_TILDE] = ACTIONS(41),
    [anon_sym_type] = ACTIONS(47),
    [anon_sym_LPAREN] = ACTIONS(233),
    [anon_sym_true] = ACTIONS(59),
    [anon_sym_false] = ACTIONS(61),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_payable] = ACTIONS(83),
    [anon_sym_new] = ACTIONS(85),
    [anon_sym_LBRACK] = ACTIONS(87),
    [anon_sym_PLUS] = ACTIONS(39),
    [anon_sym_BANG] = ACTIONS(41),
    [anon_sym_delete] = ACTIONS(89),
    [anon_sym_PLUS_PLUS] = ACTIONS(91),
    [anon_sym_DASH_DASH] = ACTIONS(91),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [aux_sym__decimal_number_token1] = ACTIONS(93),
    [aux_sym__decimal_number_token2] = ACTIONS(95),
    [aux_sym__hex_number_token1] = ACTIONS(95),
    [anon_sym_hex] = ACTIONS(97),
    [anon_sym_DQUOTE] = ACTIONS(99),
    [anon_sym_SQUOTE] = ACTIONS(101),
    [anon_sym_unicode] = ACTIONS(103),
    [sym_comment] = ACTIONS(3),
  },
  [61] = {
    [sym__expression] = STATE(420),
    [sym__primary_expression] = STATE(420),
    [sym_type_cast_expression] = STATE(420),
    [sym_ternary_expression] = STATE(420),
    [sym_new_expression] = STATE(420),
    [sym_tuple_expression] = STATE(420),
    [sym_inline_array_expression] = STATE(420),
    [sym_binary_expression] = STATE(420),
    [sym_unary_expression] = STATE(420),
    [sym_update_expression] = STATE(420),
    [sym_member_expression] = STATE(420),
    [sym_array_access] = STATE(420),
    [sym_slice_access] = STATE(420),
    [sym_struct_expression] = STATE(420),
    [sym_parenthesized_expression] = STATE(420),
    [sym_assignment_expression] = STATE(420),
    [sym_augmented_assignment_expression] = STATE(420),
    [sym_call_expression] = STATE(420),
    [sym_payable_conversion_expression] = STATE(420),
    [sym_meta_type_expression] = STATE(420),
    [sym_user_defined_type] = STATE(420),
    [sym__identifier_path] = STATE(308),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym__literal] = STATE(420),
    [sym_string_literal] = STATE(420),
    [sym_number_literal] = STATE(420),
    [sym__decimal_number] = STATE(316),
    [sym__hex_number] = STATE(316),
    [sym_true] = STATE(371),
    [sym_false] = STATE(371),
    [sym_boolean_literal] = STATE(420),
    [sym_hex_string_literal] = STATE(420),
    [sym_unicode_string_literal] = STATE(420),
    [sym_string] = STATE(333),
    [aux_sym_string_literal_repeat1] = STATE(333),
    [aux_sym_hex_string_literal_repeat2] = STATE(336),
    [aux_sym_unicode_string_literal_repeat3] = STATE(335),
    [sym_identifier] = ACTIONS(105),
    [anon_sym_DASH] = ACTIONS(39),
    [anon_sym_TILDE] = ACTIONS(41),
    [anon_sym_type] = ACTIONS(47),
    [anon_sym_LPAREN] = ACTIONS(233),
    [anon_sym_true] = ACTIONS(59),
    [anon_sym_false] = ACTIONS(61),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_payable] = ACTIONS(83),
    [anon_sym_new] = ACTIONS(85),
    [anon_sym_LBRACK] = ACTIONS(87),
    [anon_sym_PLUS] = ACTIONS(39),
    [anon_sym_BANG] = ACTIONS(41),
    [anon_sym_delete] = ACTIONS(89),
    [anon_sym_PLUS_PLUS] = ACTIONS(91),
    [anon_sym_DASH_DASH] = ACTIONS(91),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [aux_sym__decimal_number_token1] = ACTIONS(93),
    [aux_sym__decimal_number_token2] = ACTIONS(95),
    [aux_sym__hex_number_token1] = ACTIONS(95),
    [anon_sym_hex] = ACTIONS(97),
    [anon_sym_DQUOTE] = ACTIONS(99),
    [anon_sym_SQUOTE] = ACTIONS(101),
    [anon_sym_unicode] = ACTIONS(103),
    [sym_comment] = ACTIONS(3),
  },
  [62] = {
    [sym__expression] = STATE(342),
    [sym__primary_expression] = STATE(342),
    [sym_type_cast_expression] = STATE(342),
    [sym_ternary_expression] = STATE(342),
    [sym_new_expression] = STATE(342),
    [sym_tuple_expression] = STATE(342),
    [sym_inline_array_expression] = STATE(342),
    [sym_binary_expression] = STATE(342),
    [sym_unary_expression] = STATE(342),
    [sym_update_expression] = STATE(342),
    [sym_member_expression] = STATE(342),
    [sym_array_access] = STATE(342),
    [sym_slice_access] = STATE(342),
    [sym_struct_expression] = STATE(342),
    [sym_parenthesized_expression] = STATE(342),
    [sym_assignment_expression] = STATE(342),
    [sym_augmented_assignment_expression] = STATE(342),
    [sym_call_expression] = STATE(342),
    [sym_payable_conversion_expression] = STATE(342),
    [sym_meta_type_expression] = STATE(342),
    [sym_user_defined_type] = STATE(342),
    [sym__identifier_path] = STATE(308),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym__literal] = STATE(342),
    [sym_string_literal] = STATE(342),
    [sym_number_literal] = STATE(342),
    [sym__decimal_number] = STATE(316),
    [sym__hex_number] = STATE(316),
    [sym_true] = STATE(371),
    [sym_false] = STATE(371),
    [sym_boolean_literal] = STATE(342),
    [sym_hex_string_literal] = STATE(342),
    [sym_unicode_string_literal] = STATE(342),
    [sym_string] = STATE(333),
    [aux_sym_string_literal_repeat1] = STATE(333),
    [aux_sym_hex_string_literal_repeat2] = STATE(336),
    [aux_sym_unicode_string_literal_repeat3] = STATE(335),
    [sym_identifier] = ACTIONS(105),
    [anon_sym_DASH] = ACTIONS(39),
    [anon_sym_TILDE] = ACTIONS(41),
    [anon_sym_type] = ACTIONS(47),
    [anon_sym_LPAREN] = ACTIONS(233),
    [anon_sym_true] = ACTIONS(59),
    [anon_sym_false] = ACTIONS(61),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_payable] = ACTIONS(83),
    [anon_sym_new] = ACTIONS(85),
    [anon_sym_LBRACK] = ACTIONS(87),
    [anon_sym_PLUS] = ACTIONS(39),
    [anon_sym_BANG] = ACTIONS(41),
    [anon_sym_delete] = ACTIONS(89),
    [anon_sym_PLUS_PLUS] = ACTIONS(91),
    [anon_sym_DASH_DASH] = ACTIONS(91),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [aux_sym__decimal_number_token1] = ACTIONS(93),
    [aux_sym__decimal_number_token2] = ACTIONS(95),
    [aux_sym__hex_number_token1] = ACTIONS(95),
    [anon_sym_hex] = ACTIONS(97),
    [anon_sym_DQUOTE] = ACTIONS(99),
    [anon_sym_SQUOTE] = ACTIONS(101),
    [anon_sym_unicode] = ACTIONS(103),
    [sym_comment] = ACTIONS(3),
  },
  [63] = {
    [sym__expression] = STATE(417),
    [sym__primary_expression] = STATE(417),
    [sym_type_cast_expression] = STATE(417),
    [sym_ternary_expression] = STATE(417),
    [sym_new_expression] = STATE(417),
    [sym_tuple_expression] = STATE(417),
    [sym_inline_array_expression] = STATE(417),
    [sym_binary_expression] = STATE(417),
    [sym_unary_expression] = STATE(417),
    [sym_update_expression] = STATE(417),
    [sym_member_expression] = STATE(417),
    [sym_array_access] = STATE(417),
    [sym_slice_access] = STATE(417),
    [sym_struct_expression] = STATE(417),
    [sym_parenthesized_expression] = STATE(417),
    [sym_assignment_expression] = STATE(417),
    [sym_augmented_assignment_expression] = STATE(417),
    [sym_call_expression] = STATE(417),
    [sym_payable_conversion_expression] = STATE(417),
    [sym_meta_type_expression] = STATE(417),
    [sym_user_defined_type] = STATE(417),
    [sym__identifier_path] = STATE(308),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym__literal] = STATE(417),
    [sym_string_literal] = STATE(417),
    [sym_number_literal] = STATE(417),
    [sym__decimal_number] = STATE(316),
    [sym__hex_number] = STATE(316),
    [sym_true] = STATE(371),
    [sym_false] = STATE(371),
    [sym_boolean_literal] = STATE(417),
    [sym_hex_string_literal] = STATE(417),
    [sym_unicode_string_literal] = STATE(417),
    [sym_string] = STATE(333),
    [aux_sym_string_literal_repeat1] = STATE(333),
    [aux_sym_hex_string_literal_repeat2] = STATE(336),
    [aux_sym_unicode_string_literal_repeat3] = STATE(335),
    [sym_identifier] = ACTIONS(105),
    [anon_sym_DASH] = ACTIONS(39),
    [anon_sym_TILDE] = ACTIONS(41),
    [anon_sym_type] = ACTIONS(47),
    [anon_sym_LPAREN] = ACTIONS(233),
    [anon_sym_true] = ACTIONS(59),
    [anon_sym_false] = ACTIONS(61),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_payable] = ACTIONS(83),
    [anon_sym_new] = ACTIONS(85),
    [anon_sym_LBRACK] = ACTIONS(87),
    [anon_sym_PLUS] = ACTIONS(39),
    [anon_sym_BANG] = ACTIONS(41),
    [anon_sym_delete] = ACTIONS(89),
    [anon_sym_PLUS_PLUS] = ACTIONS(91),
    [anon_sym_DASH_DASH] = ACTIONS(91),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [aux_sym__decimal_number_token1] = ACTIONS(93),
    [aux_sym__decimal_number_token2] = ACTIONS(95),
    [aux_sym__hex_number_token1] = ACTIONS(95),
    [anon_sym_hex] = ACTIONS(97),
    [anon_sym_DQUOTE] = ACTIONS(99),
    [anon_sym_SQUOTE] = ACTIONS(101),
    [anon_sym_unicode] = ACTIONS(103),
    [sym_comment] = ACTIONS(3),
  },
  [64] = {
    [sym__expression] = STATE(409),
    [sym__primary_expression] = STATE(409),
    [sym_type_cast_expression] = STATE(409),
    [sym_ternary_expression] = STATE(409),
    [sym_new_expression] = STATE(409),
    [sym_tuple_expression] = STATE(409),
    [sym_inline_array_expression] = STATE(409),
    [sym_binary_expression] = STATE(409),
    [sym_unary_expression] = STATE(409),
    [sym_update_expression] = STATE(409),
    [sym_member_expression] = STATE(409),
    [sym_array_access] = STATE(409),
    [sym_slice_access] = STATE(409),
    [sym_struct_expression] = STATE(409),
    [sym_parenthesized_expression] = STATE(409),
    [sym_assignment_expression] = STATE(409),
    [sym_augmented_assignment_expression] = STATE(409),
    [sym_call_expression] = STATE(409),
    [sym_payable_conversion_expression] = STATE(409),
    [sym_meta_type_expression] = STATE(409),
    [sym_user_defined_type] = STATE(409),
    [sym__identifier_path] = STATE(308),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym__literal] = STATE(409),
    [sym_string_literal] = STATE(409),
    [sym_number_literal] = STATE(409),
    [sym__decimal_number] = STATE(316),
    [sym__hex_number] = STATE(316),
    [sym_true] = STATE(371),
    [sym_false] = STATE(371),
    [sym_boolean_literal] = STATE(409),
    [sym_hex_string_literal] = STATE(409),
    [sym_unicode_string_literal] = STATE(409),
    [sym_string] = STATE(333),
    [aux_sym_string_literal_repeat1] = STATE(333),
    [aux_sym_hex_string_literal_repeat2] = STATE(336),
    [aux_sym_unicode_string_literal_repeat3] = STATE(335),
    [sym_identifier] = ACTIONS(105),
    [anon_sym_DASH] = ACTIONS(39),
    [anon_sym_TILDE] = ACTIONS(41),
    [anon_sym_type] = ACTIONS(47),
    [anon_sym_LPAREN] = ACTIONS(233),
    [anon_sym_true] = ACTIONS(59),
    [anon_sym_false] = ACTIONS(61),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_payable] = ACTIONS(83),
    [anon_sym_new] = ACTIONS(85),
    [anon_sym_LBRACK] = ACTIONS(87),
    [anon_sym_PLUS] = ACTIONS(39),
    [anon_sym_BANG] = ACTIONS(41),
    [anon_sym_delete] = ACTIONS(89),
    [anon_sym_PLUS_PLUS] = ACTIONS(91),
    [anon_sym_DASH_DASH] = ACTIONS(91),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [aux_sym__decimal_number_token1] = ACTIONS(93),
    [aux_sym__decimal_number_token2] = ACTIONS(95),
    [aux_sym__hex_number_token1] = ACTIONS(95),
    [anon_sym_hex] = ACTIONS(97),
    [anon_sym_DQUOTE] = ACTIONS(99),
    [anon_sym_SQUOTE] = ACTIONS(101),
    [anon_sym_unicode] = ACTIONS(103),
    [sym_comment] = ACTIONS(3),
  },
  [65] = {
    [sym__expression] = STATE(355),
    [sym__primary_expression] = STATE(355),
    [sym_type_cast_expression] = STATE(355),
    [sym_ternary_expression] = STATE(355),
    [sym_new_expression] = STATE(355),
    [sym_tuple_expression] = STATE(355),
    [sym_inline_array_expression] = STATE(355),
    [sym_binary_expression] = STATE(355),
    [sym_unary_expression] = STATE(355),
    [sym_update_expression] = STATE(355),
    [sym_member_expression] = STATE(355),
    [sym_array_access] = STATE(355),
    [sym_slice_access] = STATE(355),
    [sym_struct_expression] = STATE(355),
    [sym_parenthesized_expression] = STATE(355),
    [sym_assignment_expression] = STATE(355),
    [sym_augmented_assignment_expression] = STATE(355),
    [sym_call_expression] = STATE(355),
    [sym_payable_conversion_expression] = STATE(355),
    [sym_meta_type_expression] = STATE(355),
    [sym_user_defined_type] = STATE(355),
    [sym__identifier_path] = STATE(308),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym__literal] = STATE(355),
    [sym_string_literal] = STATE(355),
    [sym_number_literal] = STATE(355),
    [sym__decimal_number] = STATE(316),
    [sym__hex_number] = STATE(316),
    [sym_true] = STATE(371),
    [sym_false] = STATE(371),
    [sym_boolean_literal] = STATE(355),
    [sym_hex_string_literal] = STATE(355),
    [sym_unicode_string_literal] = STATE(355),
    [sym_string] = STATE(333),
    [aux_sym_string_literal_repeat1] = STATE(333),
    [aux_sym_hex_string_literal_repeat2] = STATE(336),
    [aux_sym_unicode_string_literal_repeat3] = STATE(335),
    [sym_identifier] = ACTIONS(105),
    [anon_sym_DASH] = ACTIONS(39),
    [anon_sym_TILDE] = ACTIONS(41),
    [anon_sym_type] = ACTIONS(47),
    [anon_sym_LPAREN] = ACTIONS(233),
    [anon_sym_true] = ACTIONS(59),
    [anon_sym_false] = ACTIONS(61),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_payable] = ACTIONS(83),
    [anon_sym_new] = ACTIONS(85),
    [anon_sym_LBRACK] = ACTIONS(87),
    [anon_sym_PLUS] = ACTIONS(39),
    [anon_sym_BANG] = ACTIONS(41),
    [anon_sym_delete] = ACTIONS(89),
    [anon_sym_PLUS_PLUS] = ACTIONS(91),
    [anon_sym_DASH_DASH] = ACTIONS(91),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [aux_sym__decimal_number_token1] = ACTIONS(93),
    [aux_sym__decimal_number_token2] = ACTIONS(95),
    [aux_sym__hex_number_token1] = ACTIONS(95),
    [anon_sym_hex] = ACTIONS(97),
    [anon_sym_DQUOTE] = ACTIONS(99),
    [anon_sym_SQUOTE] = ACTIONS(101),
    [anon_sym_unicode] = ACTIONS(103),
    [sym_comment] = ACTIONS(3),
  },
  [66] = {
    [sym__expression] = STATE(354),
    [sym__primary_expression] = STATE(354),
    [sym_type_cast_expression] = STATE(354),
    [sym_ternary_expression] = STATE(354),
    [sym_new_expression] = STATE(354),
    [sym_tuple_expression] = STATE(354),
    [sym_inline_array_expression] = STATE(354),
    [sym_binary_expression] = STATE(354),
    [sym_unary_expression] = STATE(354),
    [sym_update_expression] = STATE(354),
    [sym_member_expression] = STATE(354),
    [sym_array_access] = STATE(354),
    [sym_slice_access] = STATE(354),
    [sym_struct_expression] = STATE(354),
    [sym_parenthesized_expression] = STATE(354),
    [sym_assignment_expression] = STATE(354),
    [sym_augmented_assignment_expression] = STATE(354),
    [sym_call_expression] = STATE(354),
    [sym_payable_conversion_expression] = STATE(354),
    [sym_meta_type_expression] = STATE(354),
    [sym_user_defined_type] = STATE(354),
    [sym__identifier_path] = STATE(308),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym__literal] = STATE(354),
    [sym_string_literal] = STATE(354),
    [sym_number_literal] = STATE(354),
    [sym__decimal_number] = STATE(316),
    [sym__hex_number] = STATE(316),
    [sym_true] = STATE(371),
    [sym_false] = STATE(371),
    [sym_boolean_literal] = STATE(354),
    [sym_hex_string_literal] = STATE(354),
    [sym_unicode_string_literal] = STATE(354),
    [sym_string] = STATE(333),
    [aux_sym_string_literal_repeat1] = STATE(333),
    [aux_sym_hex_string_literal_repeat2] = STATE(336),
    [aux_sym_unicode_string_literal_repeat3] = STATE(335),
    [sym_identifier] = ACTIONS(105),
    [anon_sym_DASH] = ACTIONS(39),
    [anon_sym_TILDE] = ACTIONS(41),
    [anon_sym_type] = ACTIONS(47),
    [anon_sym_LPAREN] = ACTIONS(233),
    [anon_sym_true] = ACTIONS(59),
    [anon_sym_false] = ACTIONS(61),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_payable] = ACTIONS(83),
    [anon_sym_new] = ACTIONS(85),
    [anon_sym_LBRACK] = ACTIONS(87),
    [anon_sym_PLUS] = ACTIONS(39),
    [anon_sym_BANG] = ACTIONS(41),
    [anon_sym_delete] = ACTIONS(89),
    [anon_sym_PLUS_PLUS] = ACTIONS(91),
    [anon_sym_DASH_DASH] = ACTIONS(91),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [aux_sym__decimal_number_token1] = ACTIONS(93),
    [aux_sym__decimal_number_token2] = ACTIONS(95),
    [aux_sym__hex_number_token1] = ACTIONS(95),
    [anon_sym_hex] = ACTIONS(97),
    [anon_sym_DQUOTE] = ACTIONS(99),
    [anon_sym_SQUOTE] = ACTIONS(101),
    [anon_sym_unicode] = ACTIONS(103),
    [sym_comment] = ACTIONS(3),
  },
  [67] = {
    [sym__expression] = STATE(353),
    [sym__primary_expression] = STATE(353),
    [sym_type_cast_expression] = STATE(353),
    [sym_ternary_expression] = STATE(353),
    [sym_new_expression] = STATE(353),
    [sym_tuple_expression] = STATE(353),
    [sym_inline_array_expression] = STATE(353),
    [sym_binary_expression] = STATE(353),
    [sym_unary_expression] = STATE(353),
    [sym_update_expression] = STATE(353),
    [sym_member_expression] = STATE(353),
    [sym_array_access] = STATE(353),
    [sym_slice_access] = STATE(353),
    [sym_struct_expression] = STATE(353),
    [sym_parenthesized_expression] = STATE(353),
    [sym_assignment_expression] = STATE(353),
    [sym_augmented_assignment_expression] = STATE(353),
    [sym_call_expression] = STATE(353),
    [sym_payable_conversion_expression] = STATE(353),
    [sym_meta_type_expression] = STATE(353),
    [sym_user_defined_type] = STATE(353),
    [sym__identifier_path] = STATE(308),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym__literal] = STATE(353),
    [sym_string_literal] = STATE(353),
    [sym_number_literal] = STATE(353),
    [sym__decimal_number] = STATE(316),
    [sym__hex_number] = STATE(316),
    [sym_true] = STATE(371),
    [sym_false] = STATE(371),
    [sym_boolean_literal] = STATE(353),
    [sym_hex_string_literal] = STATE(353),
    [sym_unicode_string_literal] = STATE(353),
    [sym_string] = STATE(333),
    [aux_sym_string_literal_repeat1] = STATE(333),
    [aux_sym_hex_string_literal_repeat2] = STATE(336),
    [aux_sym_unicode_string_literal_repeat3] = STATE(335),
    [sym_identifier] = ACTIONS(105),
    [anon_sym_DASH] = ACTIONS(39),
    [anon_sym_TILDE] = ACTIONS(41),
    [anon_sym_type] = ACTIONS(47),
    [anon_sym_LPAREN] = ACTIONS(233),
    [anon_sym_true] = ACTIONS(59),
    [anon_sym_false] = ACTIONS(61),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_payable] = ACTIONS(83),
    [anon_sym_new] = ACTIONS(85),
    [anon_sym_LBRACK] = ACTIONS(87),
    [anon_sym_PLUS] = ACTIONS(39),
    [anon_sym_BANG] = ACTIONS(41),
    [anon_sym_delete] = ACTIONS(89),
    [anon_sym_PLUS_PLUS] = ACTIONS(91),
    [anon_sym_DASH_DASH] = ACTIONS(91),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [aux_sym__decimal_number_token1] = ACTIONS(93),
    [aux_sym__decimal_number_token2] = ACTIONS(95),
    [aux_sym__hex_number_token1] = ACTIONS(95),
    [anon_sym_hex] = ACTIONS(97),
    [anon_sym_DQUOTE] = ACTIONS(99),
    [anon_sym_SQUOTE] = ACTIONS(101),
    [anon_sym_unicode] = ACTIONS(103),
    [sym_comment] = ACTIONS(3),
  },
  [68] = {
    [sym__expression] = STATE(356),
    [sym__primary_expression] = STATE(356),
    [sym_type_cast_expression] = STATE(356),
    [sym_ternary_expression] = STATE(356),
    [sym_new_expression] = STATE(356),
    [sym_tuple_expression] = STATE(356),
    [sym_inline_array_expression] = STATE(356),
    [sym_binary_expression] = STATE(356),
    [sym_unary_expression] = STATE(356),
    [sym_update_expression] = STATE(356),
    [sym_member_expression] = STATE(356),
    [sym_array_access] = STATE(356),
    [sym_slice_access] = STATE(356),
    [sym_struct_expression] = STATE(356),
    [sym_parenthesized_expression] = STATE(356),
    [sym_assignment_expression] = STATE(356),
    [sym_augmented_assignment_expression] = STATE(356),
    [sym_call_expression] = STATE(356),
    [sym_payable_conversion_expression] = STATE(356),
    [sym_meta_type_expression] = STATE(356),
    [sym_user_defined_type] = STATE(356),
    [sym__identifier_path] = STATE(308),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym__literal] = STATE(356),
    [sym_string_literal] = STATE(356),
    [sym_number_literal] = STATE(356),
    [sym__decimal_number] = STATE(316),
    [sym__hex_number] = STATE(316),
    [sym_true] = STATE(371),
    [sym_false] = STATE(371),
    [sym_boolean_literal] = STATE(356),
    [sym_hex_string_literal] = STATE(356),
    [sym_unicode_string_literal] = STATE(356),
    [sym_string] = STATE(333),
    [aux_sym_string_literal_repeat1] = STATE(333),
    [aux_sym_hex_string_literal_repeat2] = STATE(336),
    [aux_sym_unicode_string_literal_repeat3] = STATE(335),
    [sym_identifier] = ACTIONS(105),
    [anon_sym_DASH] = ACTIONS(39),
    [anon_sym_TILDE] = ACTIONS(41),
    [anon_sym_type] = ACTIONS(47),
    [anon_sym_LPAREN] = ACTIONS(233),
    [anon_sym_true] = ACTIONS(59),
    [anon_sym_false] = ACTIONS(61),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_payable] = ACTIONS(83),
    [anon_sym_new] = ACTIONS(85),
    [anon_sym_LBRACK] = ACTIONS(87),
    [anon_sym_PLUS] = ACTIONS(39),
    [anon_sym_BANG] = ACTIONS(41),
    [anon_sym_delete] = ACTIONS(89),
    [anon_sym_PLUS_PLUS] = ACTIONS(91),
    [anon_sym_DASH_DASH] = ACTIONS(91),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [aux_sym__decimal_number_token1] = ACTIONS(93),
    [aux_sym__decimal_number_token2] = ACTIONS(95),
    [aux_sym__hex_number_token1] = ACTIONS(95),
    [anon_sym_hex] = ACTIONS(97),
    [anon_sym_DQUOTE] = ACTIONS(99),
    [anon_sym_SQUOTE] = ACTIONS(101),
    [anon_sym_unicode] = ACTIONS(103),
    [sym_comment] = ACTIONS(3),
  },
  [69] = {
    [sym_catch_clause] = STATE(70),
    [aux_sym_try_statement_repeat1] = STATE(70),
    [sym_identifier] = ACTIONS(292),
    [anon_sym_DASH] = ACTIONS(292),
    [anon_sym_TILDE] = ACTIONS(294),
    [anon_sym_LBRACE] = ACTIONS(294),
    [anon_sym_RBRACE] = ACTIONS(294),
    [anon_sym_type] = ACTIONS(292),
    [anon_sym_LPAREN] = ACTIONS(294),
    [anon_sym_for] = ACTIONS(292),
    [anon_sym_assembly] = ACTIONS(292),
    [anon_sym_break] = ACTIONS(292),
    [anon_sym_continue] = ACTIONS(292),
    [anon_sym_true] = ACTIONS(292),
    [anon_sym_false] = ACTIONS(292),
    [anon_sym_if] = ACTIONS(292),
    [anon_sym_function] = ACTIONS(292),
    [anon_sym_byte] = ACTIONS(292),
    [anon_sym_address] = ACTIONS(292),
    [anon_sym_return] = ACTIONS(292),
    [anon_sym_revert] = ACTIONS(292),
    [sym__unchecked] = ACTIONS(292),
    [anon_sym_var] = ACTIONS(292),
    [anon_sym_else] = ACTIONS(292),
    [anon_sym_while] = ACTIONS(292),
    [anon_sym_do] = ACTIONS(292),
    [anon_sym_try] = ACTIONS(292),
    [anon_sym_catch] = ACTIONS(296),
    [anon_sym_emit] = ACTIONS(292),
    [anon_sym_payable] = ACTIONS(292),
    [anon_sym_new] = ACTIONS(292),
    [anon_sym_LBRACK] = ACTIONS(294),
    [anon_sym_PLUS] = ACTIONS(292),
    [anon_sym_BANG] = ACTIONS(294),
    [anon_sym_delete] = ACTIONS(292),
    [anon_sym_PLUS_PLUS] = ACTIONS(294),
    [anon_sym_DASH_DASH] = ACTIONS(294),
    [anon_sym_mapping] = ACTIONS(292),
    [anon_sym_bool] = ACTIONS(292),
    [anon_sym_string] = ACTIONS(292),
    [anon_sym_int] = ACTIONS(292),
    [anon_sym_int8] = ACTIONS(292),
    [anon_sym_int16] = ACTIONS(292),
    [anon_sym_int24] = ACTIONS(292),
    [anon_sym_int32] = ACTIONS(292),
    [anon_sym_int40] = ACTIONS(292),
    [anon_sym_int48] = ACTIONS(292),
    [anon_sym_int56] = ACTIONS(292),
    [anon_sym_int64] = ACTIONS(292),
    [anon_sym_int72] = ACTIONS(292),
    [anon_sym_int80] = ACTIONS(292),
    [anon_sym_int88] = ACTIONS(292),
    [anon_sym_int96] = ACTIONS(292),
    [anon_sym_int104] = ACTIONS(292),
    [anon_sym_int112] = ACTIONS(292),
    [anon_sym_int120] = ACTIONS(292),
    [anon_sym_int128] = ACTIONS(292),
    [anon_sym_int136] = ACTIONS(292),
    [anon_sym_int144] = ACTIONS(292),
    [anon_sym_int152] = ACTIONS(292),
    [anon_sym_int160] = ACTIONS(292),
    [anon_sym_int168] = ACTIONS(292),
    [anon_sym_int176] = ACTIONS(292),
    [anon_sym_int184] = ACTIONS(292),
    [anon_sym_int192] = ACTIONS(292),
    [anon_sym_int200] = ACTIONS(292),
    [anon_sym_int208] = ACTIONS(292),
    [anon_sym_int216] = ACTIONS(292),
    [anon_sym_int224] = ACTIONS(292),
    [anon_sym_int232] = ACTIONS(292),
    [anon_sym_int240] = ACTIONS(292),
    [anon_sym_int248] = ACTIONS(292),
    [anon_sym_int256] = ACTIONS(292),
    [anon_sym_uint] = ACTIONS(292),
    [anon_sym_uint8] = ACTIONS(292),
    [anon_sym_uint16] = ACTIONS(292),
    [anon_sym_uint24] = ACTIONS(292),
    [anon_sym_uint32] = ACTIONS(292),
    [anon_sym_uint40] = ACTIONS(292),
    [anon_sym_uint48] = ACTIONS(292),
    [anon_sym_uint56] = ACTIONS(292),
    [anon_sym_uint64] = ACTIONS(292),
    [anon_sym_uint72] = ACTIONS(292),
    [anon_sym_uint80] = ACTIONS(292),
    [anon_sym_uint88] = ACTIONS(292),
    [anon_sym_uint96] = ACTIONS(292),
    [anon_sym_uint104] = ACTIONS(292),
    [anon_sym_uint112] = ACTIONS(292),
    [anon_sym_uint120] = ACTIONS(292),
    [anon_sym_uint128] = ACTIONS(292),
    [anon_sym_uint136] = ACTIONS(292),
    [anon_sym_uint144] = ACTIONS(292),
    [anon_sym_uint152] = ACTIONS(292),
    [anon_sym_uint160] = ACTIONS(292),
    [anon_sym_uint168] = ACTIONS(292),
    [anon_sym_uint176] = ACTIONS(292),
    [anon_sym_uint184] = ACTIONS(292),
    [anon_sym_uint192] = ACTIONS(292),
    [anon_sym_uint200] = ACTIONS(292),
    [anon_sym_uint208] = ACTIONS(292),
    [anon_sym_uint216] = ACTIONS(292),
    [anon_sym_uint224] = ACTIONS(292),
    [anon_sym_uint232] = ACTIONS(292),
    [anon_sym_uint240] = ACTIONS(292),
    [anon_sym_uint248] = ACTIONS(292),
    [anon_sym_uint256] = ACTIONS(292),
    [anon_sym_bytes] = ACTIONS(292),
    [anon_sym_bytes1] = ACTIONS(292),
    [anon_sym_bytes2] = ACTIONS(292),
    [anon_sym_bytes3] = ACTIONS(292),
    [anon_sym_bytes4] = ACTIONS(292),
    [anon_sym_bytes5] = ACTIONS(292),
    [anon_sym_bytes6] = ACTIONS(292),
    [anon_sym_bytes7] = ACTIONS(292),
    [anon_sym_bytes8] = ACTIONS(292),
    [anon_sym_bytes9] = ACTIONS(292),
    [anon_sym_bytes10] = ACTIONS(292),
    [anon_sym_bytes11] = ACTIONS(292),
    [anon_sym_bytes12] = ACTIONS(292),
    [anon_sym_bytes13] = ACTIONS(292),
    [anon_sym_bytes14] = ACTIONS(292),
    [anon_sym_bytes15] = ACTIONS(292),
    [anon_sym_bytes16] = ACTIONS(292),
    [anon_sym_bytes17] = ACTIONS(292),
    [anon_sym_bytes18] = ACTIONS(292),
    [anon_sym_bytes19] = ACTIONS(292),
    [anon_sym_bytes20] = ACTIONS(292),
    [anon_sym_bytes21] = ACTIONS(292),
    [anon_sym_bytes22] = ACTIONS(292),
    [anon_sym_bytes23] = ACTIONS(292),
    [anon_sym_bytes24] = ACTIONS(292),
    [anon_sym_bytes25] = ACTIONS(292),
    [anon_sym_bytes26] = ACTIONS(292),
    [anon_sym_bytes27] = ACTIONS(292),
    [anon_sym_bytes28] = ACTIONS(292),
    [anon_sym_bytes29] = ACTIONS(292),
    [anon_sym_bytes30] = ACTIONS(292),
    [anon_sym_bytes31] = ACTIONS(292),
    [anon_sym_bytes32] = ACTIONS(292),
    [anon_sym_fixed] = ACTIONS(292),
    [aux_sym__fixed_token1] = ACTIONS(292),
    [anon_sym_ufixed] = ACTIONS(292),
    [aux_sym__ufixed_token1] = ACTIONS(292),
    [aux_sym__decimal_number_token1] = ACTIONS(292),
    [aux_sym__decimal_number_token2] = ACTIONS(294),
    [aux_sym__hex_number_token1] = ACTIONS(294),
    [anon_sym_hex] = ACTIONS(292),
    [anon_sym_DQUOTE] = ACTIONS(294),
    [anon_sym_SQUOTE] = ACTIONS(294),
    [anon_sym_unicode] = ACTIONS(292),
    [sym_comment] = ACTIONS(3),
  },
  [70] = {
    [sym_catch_clause] = STATE(70),
    [aux_sym_try_statement_repeat1] = STATE(70),
    [sym_identifier] = ACTIONS(298),
    [anon_sym_DASH] = ACTIONS(298),
    [anon_sym_TILDE] = ACTIONS(300),
    [anon_sym_LBRACE] = ACTIONS(300),
    [anon_sym_RBRACE] = ACTIONS(300),
    [anon_sym_type] = ACTIONS(298),
    [anon_sym_LPAREN] = ACTIONS(300),
    [anon_sym_for] = ACTIONS(298),
    [anon_sym_assembly] = ACTIONS(298),
    [anon_sym_break] = ACTIONS(298),
    [anon_sym_continue] = ACTIONS(298),
    [anon_sym_true] = ACTIONS(298),
    [anon_sym_false] = ACTIONS(298),
    [anon_sym_if] = ACTIONS(298),
    [anon_sym_function] = ACTIONS(298),
    [anon_sym_byte] = ACTIONS(298),
    [anon_sym_address] = ACTIONS(298),
    [anon_sym_return] = ACTIONS(298),
    [anon_sym_revert] = ACTIONS(298),
    [sym__unchecked] = ACTIONS(298),
    [anon_sym_var] = ACTIONS(298),
    [anon_sym_else] = ACTIONS(298),
    [anon_sym_while] = ACTIONS(298),
    [anon_sym_do] = ACTIONS(298),
    [anon_sym_try] = ACTIONS(298),
    [anon_sym_catch] = ACTIONS(302),
    [anon_sym_emit] = ACTIONS(298),
    [anon_sym_payable] = ACTIONS(298),
    [anon_sym_new] = ACTIONS(298),
    [anon_sym_LBRACK] = ACTIONS(300),
    [anon_sym_PLUS] = ACTIONS(298),
    [anon_sym_BANG] = ACTIONS(300),
    [anon_sym_delete] = ACTIONS(298),
    [anon_sym_PLUS_PLUS] = ACTIONS(300),
    [anon_sym_DASH_DASH] = ACTIONS(300),
    [anon_sym_mapping] = ACTIONS(298),
    [anon_sym_bool] = ACTIONS(298),
    [anon_sym_string] = ACTIONS(298),
    [anon_sym_int] = ACTIONS(298),
    [anon_sym_int8] = ACTIONS(298),
    [anon_sym_int16] = ACTIONS(298),
    [anon_sym_int24] = ACTIONS(298),
    [anon_sym_int32] = ACTIONS(298),
    [anon_sym_int40] = ACTIONS(298),
    [anon_sym_int48] = ACTIONS(298),
    [anon_sym_int56] = ACTIONS(298),
    [anon_sym_int64] = ACTIONS(298),
    [anon_sym_int72] = ACTIONS(298),
    [anon_sym_int80] = ACTIONS(298),
    [anon_sym_int88] = ACTIONS(298),
    [anon_sym_int96] = ACTIONS(298),
    [anon_sym_int104] = ACTIONS(298),
    [anon_sym_int112] = ACTIONS(298),
    [anon_sym_int120] = ACTIONS(298),
    [anon_sym_int128] = ACTIONS(298),
    [anon_sym_int136] = ACTIONS(298),
    [anon_sym_int144] = ACTIONS(298),
    [anon_sym_int152] = ACTIONS(298),
    [anon_sym_int160] = ACTIONS(298),
    [anon_sym_int168] = ACTIONS(298),
    [anon_sym_int176] = ACTIONS(298),
    [anon_sym_int184] = ACTIONS(298),
    [anon_sym_int192] = ACTIONS(298),
    [anon_sym_int200] = ACTIONS(298),
    [anon_sym_int208] = ACTIONS(298),
    [anon_sym_int216] = ACTIONS(298),
    [anon_sym_int224] = ACTIONS(298),
    [anon_sym_int232] = ACTIONS(298),
    [anon_sym_int240] = ACTIONS(298),
    [anon_sym_int248] = ACTIONS(298),
    [anon_sym_int256] = ACTIONS(298),
    [anon_sym_uint] = ACTIONS(298),
    [anon_sym_uint8] = ACTIONS(298),
    [anon_sym_uint16] = ACTIONS(298),
    [anon_sym_uint24] = ACTIONS(298),
    [anon_sym_uint32] = ACTIONS(298),
    [anon_sym_uint40] = ACTIONS(298),
    [anon_sym_uint48] = ACTIONS(298),
    [anon_sym_uint56] = ACTIONS(298),
    [anon_sym_uint64] = ACTIONS(298),
    [anon_sym_uint72] = ACTIONS(298),
    [anon_sym_uint80] = ACTIONS(298),
    [anon_sym_uint88] = ACTIONS(298),
    [anon_sym_uint96] = ACTIONS(298),
    [anon_sym_uint104] = ACTIONS(298),
    [anon_sym_uint112] = ACTIONS(298),
    [anon_sym_uint120] = ACTIONS(298),
    [anon_sym_uint128] = ACTIONS(298),
    [anon_sym_uint136] = ACTIONS(298),
    [anon_sym_uint144] = ACTIONS(298),
    [anon_sym_uint152] = ACTIONS(298),
    [anon_sym_uint160] = ACTIONS(298),
    [anon_sym_uint168] = ACTIONS(298),
    [anon_sym_uint176] = ACTIONS(298),
    [anon_sym_uint184] = ACTIONS(298),
    [anon_sym_uint192] = ACTIONS(298),
    [anon_sym_uint200] = ACTIONS(298),
    [anon_sym_uint208] = ACTIONS(298),
    [anon_sym_uint216] = ACTIONS(298),
    [anon_sym_uint224] = ACTIONS(298),
    [anon_sym_uint232] = ACTIONS(298),
    [anon_sym_uint240] = ACTIONS(298),
    [anon_sym_uint248] = ACTIONS(298),
    [anon_sym_uint256] = ACTIONS(298),
    [anon_sym_bytes] = ACTIONS(298),
    [anon_sym_bytes1] = ACTIONS(298),
    [anon_sym_bytes2] = ACTIONS(298),
    [anon_sym_bytes3] = ACTIONS(298),
    [anon_sym_bytes4] = ACTIONS(298),
    [anon_sym_bytes5] = ACTIONS(298),
    [anon_sym_bytes6] = ACTIONS(298),
    [anon_sym_bytes7] = ACTIONS(298),
    [anon_sym_bytes8] = ACTIONS(298),
    [anon_sym_bytes9] = ACTIONS(298),
    [anon_sym_bytes10] = ACTIONS(298),
    [anon_sym_bytes11] = ACTIONS(298),
    [anon_sym_bytes12] = ACTIONS(298),
    [anon_sym_bytes13] = ACTIONS(298),
    [anon_sym_bytes14] = ACTIONS(298),
    [anon_sym_bytes15] = ACTIONS(298),
    [anon_sym_bytes16] = ACTIONS(298),
    [anon_sym_bytes17] = ACTIONS(298),
    [anon_sym_bytes18] = ACTIONS(298),
    [anon_sym_bytes19] = ACTIONS(298),
    [anon_sym_bytes20] = ACTIONS(298),
    [anon_sym_bytes21] = ACTIONS(298),
    [anon_sym_bytes22] = ACTIONS(298),
    [anon_sym_bytes23] = ACTIONS(298),
    [anon_sym_bytes24] = ACTIONS(298),
    [anon_sym_bytes25] = ACTIONS(298),
    [anon_sym_bytes26] = ACTIONS(298),
    [anon_sym_bytes27] = ACTIONS(298),
    [anon_sym_bytes28] = ACTIONS(298),
    [anon_sym_bytes29] = ACTIONS(298),
    [anon_sym_bytes30] = ACTIONS(298),
    [anon_sym_bytes31] = ACTIONS(298),
    [anon_sym_bytes32] = ACTIONS(298),
    [anon_sym_fixed] = ACTIONS(298),
    [aux_sym__fixed_token1] = ACTIONS(298),
    [anon_sym_ufixed] = ACTIONS(298),
    [aux_sym__ufixed_token1] = ACTIONS(298),
    [aux_sym__decimal_number_token1] = ACTIONS(298),
    [aux_sym__decimal_number_token2] = ACTIONS(300),
    [aux_sym__hex_number_token1] = ACTIONS(300),
    [anon_sym_hex] = ACTIONS(298),
    [anon_sym_DQUOTE] = ACTIONS(300),
    [anon_sym_SQUOTE] = ACTIONS(300),
    [anon_sym_unicode] = ACTIONS(298),
    [sym_comment] = ACTIONS(3),
  },
  [71] = {
    [sym_catch_clause] = STATE(70),
    [aux_sym_try_statement_repeat1] = STATE(70),
    [sym_identifier] = ACTIONS(305),
    [anon_sym_DASH] = ACTIONS(305),
    [anon_sym_TILDE] = ACTIONS(307),
    [anon_sym_LBRACE] = ACTIONS(307),
    [anon_sym_RBRACE] = ACTIONS(307),
    [anon_sym_type] = ACTIONS(305),
    [anon_sym_LPAREN] = ACTIONS(307),
    [anon_sym_for] = ACTIONS(305),
    [anon_sym_assembly] = ACTIONS(305),
    [anon_sym_break] = ACTIONS(305),
    [anon_sym_continue] = ACTIONS(305),
    [anon_sym_true] = ACTIONS(305),
    [anon_sym_false] = ACTIONS(305),
    [anon_sym_if] = ACTIONS(305),
    [anon_sym_function] = ACTIONS(305),
    [anon_sym_byte] = ACTIONS(305),
    [anon_sym_address] = ACTIONS(305),
    [anon_sym_return] = ACTIONS(305),
    [anon_sym_revert] = ACTIONS(305),
    [sym__unchecked] = ACTIONS(305),
    [anon_sym_var] = ACTIONS(305),
    [anon_sym_else] = ACTIONS(305),
    [anon_sym_while] = ACTIONS(305),
    [anon_sym_do] = ACTIONS(305),
    [anon_sym_try] = ACTIONS(305),
    [anon_sym_catch] = ACTIONS(296),
    [anon_sym_emit] = ACTIONS(305),
    [anon_sym_payable] = ACTIONS(305),
    [anon_sym_new] = ACTIONS(305),
    [anon_sym_LBRACK] = ACTIONS(307),
    [anon_sym_PLUS] = ACTIONS(305),
    [anon_sym_BANG] = ACTIONS(307),
    [anon_sym_delete] = ACTIONS(305),
    [anon_sym_PLUS_PLUS] = ACTIONS(307),
    [anon_sym_DASH_DASH] = ACTIONS(307),
    [anon_sym_mapping] = ACTIONS(305),
    [anon_sym_bool] = ACTIONS(305),
    [anon_sym_string] = ACTIONS(305),
    [anon_sym_int] = ACTIONS(305),
    [anon_sym_int8] = ACTIONS(305),
    [anon_sym_int16] = ACTIONS(305),
    [anon_sym_int24] = ACTIONS(305),
    [anon_sym_int32] = ACTIONS(305),
    [anon_sym_int40] = ACTIONS(305),
    [anon_sym_int48] = ACTIONS(305),
    [anon_sym_int56] = ACTIONS(305),
    [anon_sym_int64] = ACTIONS(305),
    [anon_sym_int72] = ACTIONS(305),
    [anon_sym_int80] = ACTIONS(305),
    [anon_sym_int88] = ACTIONS(305),
    [anon_sym_int96] = ACTIONS(305),
    [anon_sym_int104] = ACTIONS(305),
    [anon_sym_int112] = ACTIONS(305),
    [anon_sym_int120] = ACTIONS(305),
    [anon_sym_int128] = ACTIONS(305),
    [anon_sym_int136] = ACTIONS(305),
    [anon_sym_int144] = ACTIONS(305),
    [anon_sym_int152] = ACTIONS(305),
    [anon_sym_int160] = ACTIONS(305),
    [anon_sym_int168] = ACTIONS(305),
    [anon_sym_int176] = ACTIONS(305),
    [anon_sym_int184] = ACTIONS(305),
    [anon_sym_int192] = ACTIONS(305),
    [anon_sym_int200] = ACTIONS(305),
    [anon_sym_int208] = ACTIONS(305),
    [anon_sym_int216] = ACTIONS(305),
    [anon_sym_int224] = ACTIONS(305),
    [anon_sym_int232] = ACTIONS(305),
    [anon_sym_int240] = ACTIONS(305),
    [anon_sym_int248] = ACTIONS(305),
    [anon_sym_int256] = ACTIONS(305),
    [anon_sym_uint] = ACTIONS(305),
    [anon_sym_uint8] = ACTIONS(305),
    [anon_sym_uint16] = ACTIONS(305),
    [anon_sym_uint24] = ACTIONS(305),
    [anon_sym_uint32] = ACTIONS(305),
    [anon_sym_uint40] = ACTIONS(305),
    [anon_sym_uint48] = ACTIONS(305),
    [anon_sym_uint56] = ACTIONS(305),
    [anon_sym_uint64] = ACTIONS(305),
    [anon_sym_uint72] = ACTIONS(305),
    [anon_sym_uint80] = ACTIONS(305),
    [anon_sym_uint88] = ACTIONS(305),
    [anon_sym_uint96] = ACTIONS(305),
    [anon_sym_uint104] = ACTIONS(305),
    [anon_sym_uint112] = ACTIONS(305),
    [anon_sym_uint120] = ACTIONS(305),
    [anon_sym_uint128] = ACTIONS(305),
    [anon_sym_uint136] = ACTIONS(305),
    [anon_sym_uint144] = ACTIONS(305),
    [anon_sym_uint152] = ACTIONS(305),
    [anon_sym_uint160] = ACTIONS(305),
    [anon_sym_uint168] = ACTIONS(305),
    [anon_sym_uint176] = ACTIONS(305),
    [anon_sym_uint184] = ACTIONS(305),
    [anon_sym_uint192] = ACTIONS(305),
    [anon_sym_uint200] = ACTIONS(305),
    [anon_sym_uint208] = ACTIONS(305),
    [anon_sym_uint216] = ACTIONS(305),
    [anon_sym_uint224] = ACTIONS(305),
    [anon_sym_uint232] = ACTIONS(305),
    [anon_sym_uint240] = ACTIONS(305),
    [anon_sym_uint248] = ACTIONS(305),
    [anon_sym_uint256] = ACTIONS(305),
    [anon_sym_bytes] = ACTIONS(305),
    [anon_sym_bytes1] = ACTIONS(305),
    [anon_sym_bytes2] = ACTIONS(305),
    [anon_sym_bytes3] = ACTIONS(305),
    [anon_sym_bytes4] = ACTIONS(305),
    [anon_sym_bytes5] = ACTIONS(305),
    [anon_sym_bytes6] = ACTIONS(305),
    [anon_sym_bytes7] = ACTIONS(305),
    [anon_sym_bytes8] = ACTIONS(305),
    [anon_sym_bytes9] = ACTIONS(305),
    [anon_sym_bytes10] = ACTIONS(305),
    [anon_sym_bytes11] = ACTIONS(305),
    [anon_sym_bytes12] = ACTIONS(305),
    [anon_sym_bytes13] = ACTIONS(305),
    [anon_sym_bytes14] = ACTIONS(305),
    [anon_sym_bytes15] = ACTIONS(305),
    [anon_sym_bytes16] = ACTIONS(305),
    [anon_sym_bytes17] = ACTIONS(305),
    [anon_sym_bytes18] = ACTIONS(305),
    [anon_sym_bytes19] = ACTIONS(305),
    [anon_sym_bytes20] = ACTIONS(305),
    [anon_sym_bytes21] = ACTIONS(305),
    [anon_sym_bytes22] = ACTIONS(305),
    [anon_sym_bytes23] = ACTIONS(305),
    [anon_sym_bytes24] = ACTIONS(305),
    [anon_sym_bytes25] = ACTIONS(305),
    [anon_sym_bytes26] = ACTIONS(305),
    [anon_sym_bytes27] = ACTIONS(305),
    [anon_sym_bytes28] = ACTIONS(305),
    [anon_sym_bytes29] = ACTIONS(305),
    [anon_sym_bytes30] = ACTIONS(305),
    [anon_sym_bytes31] = ACTIONS(305),
    [anon_sym_bytes32] = ACTIONS(305),
    [anon_sym_fixed] = ACTIONS(305),
    [aux_sym__fixed_token1] = ACTIONS(305),
    [anon_sym_ufixed] = ACTIONS(305),
    [aux_sym__ufixed_token1] = ACTIONS(305),
    [aux_sym__decimal_number_token1] = ACTIONS(305),
    [aux_sym__decimal_number_token2] = ACTIONS(307),
    [aux_sym__hex_number_token1] = ACTIONS(307),
    [anon_sym_hex] = ACTIONS(305),
    [anon_sym_DQUOTE] = ACTIONS(307),
    [anon_sym_SQUOTE] = ACTIONS(307),
    [anon_sym_unicode] = ACTIONS(305),
    [sym_comment] = ACTIONS(3),
  },
  [72] = {
    [sym__source_unit] = STATE(73),
    [sym__directive] = STATE(73),
    [sym_pragma_directive] = STATE(73),
    [sym_import_directive] = STATE(73),
    [sym__declaration] = STATE(73),
    [sym_user_defined_type_definition] = STATE(73),
    [sym_constant_variable_declaration] = STATE(73),
    [sym_contract_declaration] = STATE(73),
    [sym_error_declaration] = STATE(73),
    [sym_interface_declaration] = STATE(73),
    [sym_library_declaration] = STATE(73),
    [sym_struct_declaration] = STATE(73),
    [sym_enum_declaration] = STATE(73),
    [sym_function_definition] = STATE(73),
    [sym_type_name] = STATE(663),
    [sym__array_type] = STATE(321),
    [sym__function_type] = STATE(323),
    [sym_user_defined_type] = STATE(321),
    [sym__identifier_path] = STATE(308),
    [sym__mapping] = STATE(317),
    [sym_primitive_type] = STATE(321),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [aux_sym_source_file_repeat1] = STATE(73),
    [ts_builtin_sym_end] = ACTIONS(309),
    [sym_identifier] = ACTIONS(7),
    [anon_sym_pragma] = ACTIONS(9),
    [anon_sym_import] = ACTIONS(11),
    [anon_sym_type] = ACTIONS(13),
    [anon_sym_abstract] = ACTIONS(15),
    [anon_sym_contract] = ACTIONS(17),
    [anon_sym_error] = ACTIONS(19),
    [anon_sym_interface] = ACTIONS(21),
    [anon_sym_library] = ACTIONS(23),
    [anon_sym_struct] = ACTIONS(25),
    [anon_sym_enum] = ACTIONS(27),
    [anon_sym_function] = ACTIONS(29),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_mapping] = ACTIONS(35),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [sym_comment] = ACTIONS(3),
  },
  [73] = {
    [sym__source_unit] = STATE(73),
    [sym__directive] = STATE(73),
    [sym_pragma_directive] = STATE(73),
    [sym_import_directive] = STATE(73),
    [sym__declaration] = STATE(73),
    [sym_user_defined_type_definition] = STATE(73),
    [sym_constant_variable_declaration] = STATE(73),
    [sym_contract_declaration] = STATE(73),
    [sym_error_declaration] = STATE(73),
    [sym_interface_declaration] = STATE(73),
    [sym_library_declaration] = STATE(73),
    [sym_struct_declaration] = STATE(73),
    [sym_enum_declaration] = STATE(73),
    [sym_function_definition] = STATE(73),
    [sym_type_name] = STATE(663),
    [sym__array_type] = STATE(321),
    [sym__function_type] = STATE(323),
    [sym_user_defined_type] = STATE(321),
    [sym__identifier_path] = STATE(308),
    [sym__mapping] = STATE(317),
    [sym_primitive_type] = STATE(321),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [aux_sym_source_file_repeat1] = STATE(73),
    [ts_builtin_sym_end] = ACTIONS(311),
    [sym_identifier] = ACTIONS(313),
    [anon_sym_pragma] = ACTIONS(316),
    [anon_sym_import] = ACTIONS(319),
    [anon_sym_type] = ACTIONS(322),
    [anon_sym_abstract] = ACTIONS(325),
    [anon_sym_contract] = ACTIONS(328),
    [anon_sym_error] = ACTIONS(331),
    [anon_sym_interface] = ACTIONS(334),
    [anon_sym_library] = ACTIONS(337),
    [anon_sym_struct] = ACTIONS(340),
    [anon_sym_enum] = ACTIONS(343),
    [anon_sym_function] = ACTIONS(346),
    [anon_sym_byte] = ACTIONS(349),
    [anon_sym_address] = ACTIONS(352),
    [anon_sym_var] = ACTIONS(349),
    [anon_sym_mapping] = ACTIONS(355),
    [anon_sym_bool] = ACTIONS(349),
    [anon_sym_string] = ACTIONS(349),
    [anon_sym_int] = ACTIONS(349),
    [anon_sym_int8] = ACTIONS(349),
    [anon_sym_int16] = ACTIONS(349),
    [anon_sym_int24] = ACTIONS(349),
    [anon_sym_int32] = ACTIONS(349),
    [anon_sym_int40] = ACTIONS(349),
    [anon_sym_int48] = ACTIONS(349),
    [anon_sym_int56] = ACTIONS(349),
    [anon_sym_int64] = ACTIONS(349),
    [anon_sym_int72] = ACTIONS(349),
    [anon_sym_int80] = ACTIONS(349),
    [anon_sym_int88] = ACTIONS(349),
    [anon_sym_int96] = ACTIONS(349),
    [anon_sym_int104] = ACTIONS(349),
    [anon_sym_int112] = ACTIONS(349),
    [anon_sym_int120] = ACTIONS(349),
    [anon_sym_int128] = ACTIONS(349),
    [anon_sym_int136] = ACTIONS(349),
    [anon_sym_int144] = ACTIONS(349),
    [anon_sym_int152] = ACTIONS(349),
    [anon_sym_int160] = ACTIONS(349),
    [anon_sym_int168] = ACTIONS(349),
    [anon_sym_int176] = ACTIONS(349),
    [anon_sym_int184] = ACTIONS(349),
    [anon_sym_int192] = ACTIONS(349),
    [anon_sym_int200] = ACTIONS(349),
    [anon_sym_int208] = ACTIONS(349),
    [anon_sym_int216] = ACTIONS(349),
    [anon_sym_int224] = ACTIONS(349),
    [anon_sym_int232] = ACTIONS(349),
    [anon_sym_int240] = ACTIONS(349),
    [anon_sym_int248] = ACTIONS(349),
    [anon_sym_int256] = ACTIONS(349),
    [anon_sym_uint] = ACTIONS(349),
    [anon_sym_uint8] = ACTIONS(349),
    [anon_sym_uint16] = ACTIONS(349),
    [anon_sym_uint24] = ACTIONS(349),
    [anon_sym_uint32] = ACTIONS(349),
    [anon_sym_uint40] = ACTIONS(349),
    [anon_sym_uint48] = ACTIONS(349),
    [anon_sym_uint56] = ACTIONS(349),
    [anon_sym_uint64] = ACTIONS(349),
    [anon_sym_uint72] = ACTIONS(349),
    [anon_sym_uint80] = ACTIONS(349),
    [anon_sym_uint88] = ACTIONS(349),
    [anon_sym_uint96] = ACTIONS(349),
    [anon_sym_uint104] = ACTIONS(349),
    [anon_sym_uint112] = ACTIONS(349),
    [anon_sym_uint120] = ACTIONS(349),
    [anon_sym_uint128] = ACTIONS(349),
    [anon_sym_uint136] = ACTIONS(349),
    [anon_sym_uint144] = ACTIONS(349),
    [anon_sym_uint152] = ACTIONS(349),
    [anon_sym_uint160] = ACTIONS(349),
    [anon_sym_uint168] = ACTIONS(349),
    [anon_sym_uint176] = ACTIONS(349),
    [anon_sym_uint184] = ACTIONS(349),
    [anon_sym_uint192] = ACTIONS(349),
    [anon_sym_uint200] = ACTIONS(349),
    [anon_sym_uint208] = ACTIONS(349),
    [anon_sym_uint216] = ACTIONS(349),
    [anon_sym_uint224] = ACTIONS(349),
    [anon_sym_uint232] = ACTIONS(349),
    [anon_sym_uint240] = ACTIONS(349),
    [anon_sym_uint248] = ACTIONS(349),
    [anon_sym_uint256] = ACTIONS(349),
    [anon_sym_bytes] = ACTIONS(349),
    [anon_sym_bytes1] = ACTIONS(349),
    [anon_sym_bytes2] = ACTIONS(349),
    [anon_sym_bytes3] = ACTIONS(349),
    [anon_sym_bytes4] = ACTIONS(349),
    [anon_sym_bytes5] = ACTIONS(349),
    [anon_sym_bytes6] = ACTIONS(349),
    [anon_sym_bytes7] = ACTIONS(349),
    [anon_sym_bytes8] = ACTIONS(349),
    [anon_sym_bytes9] = ACTIONS(349),
    [anon_sym_bytes10] = ACTIONS(349),
    [anon_sym_bytes11] = ACTIONS(349),
    [anon_sym_bytes12] = ACTIONS(349),
    [anon_sym_bytes13] = ACTIONS(349),
    [anon_sym_bytes14] = ACTIONS(349),
    [anon_sym_bytes15] = ACTIONS(349),
    [anon_sym_bytes16] = ACTIONS(349),
    [anon_sym_bytes17] = ACTIONS(349),
    [anon_sym_bytes18] = ACTIONS(349),
    [anon_sym_bytes19] = ACTIONS(349),
    [anon_sym_bytes20] = ACTIONS(349),
    [anon_sym_bytes21] = ACTIONS(349),
    [anon_sym_bytes22] = ACTIONS(349),
    [anon_sym_bytes23] = ACTIONS(349),
    [anon_sym_bytes24] = ACTIONS(349),
    [anon_sym_bytes25] = ACTIONS(349),
    [anon_sym_bytes26] = ACTIONS(349),
    [anon_sym_bytes27] = ACTIONS(349),
    [anon_sym_bytes28] = ACTIONS(349),
    [anon_sym_bytes29] = ACTIONS(349),
    [anon_sym_bytes30] = ACTIONS(349),
    [anon_sym_bytes31] = ACTIONS(349),
    [anon_sym_bytes32] = ACTIONS(349),
    [anon_sym_fixed] = ACTIONS(349),
    [aux_sym__fixed_token1] = ACTIONS(349),
    [anon_sym_ufixed] = ACTIONS(349),
    [aux_sym__ufixed_token1] = ACTIONS(349),
    [sym_comment] = ACTIONS(3),
  },
  [74] = {
    [sym_identifier] = ACTIONS(358),
    [anon_sym_DASH] = ACTIONS(358),
    [anon_sym_TILDE] = ACTIONS(360),
    [anon_sym_LBRACE] = ACTIONS(360),
    [anon_sym_RBRACE] = ACTIONS(360),
    [anon_sym_type] = ACTIONS(358),
    [anon_sym_LPAREN] = ACTIONS(360),
    [anon_sym_RPAREN] = ACTIONS(360),
    [anon_sym_for] = ACTIONS(358),
    [anon_sym_assembly] = ACTIONS(358),
    [anon_sym_break] = ACTIONS(358),
    [anon_sym_continue] = ACTIONS(358),
    [anon_sym_true] = ACTIONS(358),
    [anon_sym_false] = ACTIONS(358),
    [anon_sym_if] = ACTIONS(358),
    [anon_sym_function] = ACTIONS(358),
    [anon_sym_byte] = ACTIONS(358),
    [anon_sym_address] = ACTIONS(358),
    [anon_sym_return] = ACTIONS(358),
    [anon_sym_revert] = ACTIONS(358),
    [sym__unchecked] = ACTIONS(358),
    [anon_sym_var] = ACTIONS(358),
    [anon_sym_else] = ACTIONS(358),
    [anon_sym_while] = ACTIONS(358),
    [anon_sym_do] = ACTIONS(358),
    [anon_sym_try] = ACTIONS(358),
    [anon_sym_emit] = ACTIONS(358),
    [anon_sym_payable] = ACTIONS(358),
    [anon_sym_new] = ACTIONS(358),
    [anon_sym_LBRACK] = ACTIONS(360),
    [anon_sym_PLUS] = ACTIONS(358),
    [anon_sym_BANG] = ACTIONS(360),
    [anon_sym_delete] = ACTIONS(358),
    [anon_sym_PLUS_PLUS] = ACTIONS(360),
    [anon_sym_DASH_DASH] = ACTIONS(360),
    [anon_sym_mapping] = ACTIONS(358),
    [anon_sym_bool] = ACTIONS(358),
    [anon_sym_string] = ACTIONS(358),
    [anon_sym_int] = ACTIONS(358),
    [anon_sym_int8] = ACTIONS(358),
    [anon_sym_int16] = ACTIONS(358),
    [anon_sym_int24] = ACTIONS(358),
    [anon_sym_int32] = ACTIONS(358),
    [anon_sym_int40] = ACTIONS(358),
    [anon_sym_int48] = ACTIONS(358),
    [anon_sym_int56] = ACTIONS(358),
    [anon_sym_int64] = ACTIONS(358),
    [anon_sym_int72] = ACTIONS(358),
    [anon_sym_int80] = ACTIONS(358),
    [anon_sym_int88] = ACTIONS(358),
    [anon_sym_int96] = ACTIONS(358),
    [anon_sym_int104] = ACTIONS(358),
    [anon_sym_int112] = ACTIONS(358),
    [anon_sym_int120] = ACTIONS(358),
    [anon_sym_int128] = ACTIONS(358),
    [anon_sym_int136] = ACTIONS(358),
    [anon_sym_int144] = ACTIONS(358),
    [anon_sym_int152] = ACTIONS(358),
    [anon_sym_int160] = ACTIONS(358),
    [anon_sym_int168] = ACTIONS(358),
    [anon_sym_int176] = ACTIONS(358),
    [anon_sym_int184] = ACTIONS(358),
    [anon_sym_int192] = ACTIONS(358),
    [anon_sym_int200] = ACTIONS(358),
    [anon_sym_int208] = ACTIONS(358),
    [anon_sym_int216] = ACTIONS(358),
    [anon_sym_int224] = ACTIONS(358),
    [anon_sym_int232] = ACTIONS(358),
    [anon_sym_int240] = ACTIONS(358),
    [anon_sym_int248] = ACTIONS(358),
    [anon_sym_int256] = ACTIONS(358),
    [anon_sym_uint] = ACTIONS(358),
    [anon_sym_uint8] = ACTIONS(358),
    [anon_sym_uint16] = ACTIONS(358),
    [anon_sym_uint24] = ACTIONS(358),
    [anon_sym_uint32] = ACTIONS(358),
    [anon_sym_uint40] = ACTIONS(358),
    [anon_sym_uint48] = ACTIONS(358),
    [anon_sym_uint56] = ACTIONS(358),
    [anon_sym_uint64] = ACTIONS(358),
    [anon_sym_uint72] = ACTIONS(358),
    [anon_sym_uint80] = ACTIONS(358),
    [anon_sym_uint88] = ACTIONS(358),
    [anon_sym_uint96] = ACTIONS(358),
    [anon_sym_uint104] = ACTIONS(358),
    [anon_sym_uint112] = ACTIONS(358),
    [anon_sym_uint120] = ACTIONS(358),
    [anon_sym_uint128] = ACTIONS(358),
    [anon_sym_uint136] = ACTIONS(358),
    [anon_sym_uint144] = ACTIONS(358),
    [anon_sym_uint152] = ACTIONS(358),
    [anon_sym_uint160] = ACTIONS(358),
    [anon_sym_uint168] = ACTIONS(358),
    [anon_sym_uint176] = ACTIONS(358),
    [anon_sym_uint184] = ACTIONS(358),
    [anon_sym_uint192] = ACTIONS(358),
    [anon_sym_uint200] = ACTIONS(358),
    [anon_sym_uint208] = ACTIONS(358),
    [anon_sym_uint216] = ACTIONS(358),
    [anon_sym_uint224] = ACTIONS(358),
    [anon_sym_uint232] = ACTIONS(358),
    [anon_sym_uint240] = ACTIONS(358),
    [anon_sym_uint248] = ACTIONS(358),
    [anon_sym_uint256] = ACTIONS(358),
    [anon_sym_bytes] = ACTIONS(358),
    [anon_sym_bytes1] = ACTIONS(358),
    [anon_sym_bytes2] = ACTIONS(358),
    [anon_sym_bytes3] = ACTIONS(358),
    [anon_sym_bytes4] = ACTIONS(358),
    [anon_sym_bytes5] = ACTIONS(358),
    [anon_sym_bytes6] = ACTIONS(358),
    [anon_sym_bytes7] = ACTIONS(358),
    [anon_sym_bytes8] = ACTIONS(358),
    [anon_sym_bytes9] = ACTIONS(358),
    [anon_sym_bytes10] = ACTIONS(358),
    [anon_sym_bytes11] = ACTIONS(358),
    [anon_sym_bytes12] = ACTIONS(358),
    [anon_sym_bytes13] = ACTIONS(358),
    [anon_sym_bytes14] = ACTIONS(358),
    [anon_sym_bytes15] = ACTIONS(358),
    [anon_sym_bytes16] = ACTIONS(358),
    [anon_sym_bytes17] = ACTIONS(358),
    [anon_sym_bytes18] = ACTIONS(358),
    [anon_sym_bytes19] = ACTIONS(358),
    [anon_sym_bytes20] = ACTIONS(358),
    [anon_sym_bytes21] = ACTIONS(358),
    [anon_sym_bytes22] = ACTIONS(358),
    [anon_sym_bytes23] = ACTIONS(358),
    [anon_sym_bytes24] = ACTIONS(358),
    [anon_sym_bytes25] = ACTIONS(358),
    [anon_sym_bytes26] = ACTIONS(358),
    [anon_sym_bytes27] = ACTIONS(358),
    [anon_sym_bytes28] = ACTIONS(358),
    [anon_sym_bytes29] = ACTIONS(358),
    [anon_sym_bytes30] = ACTIONS(358),
    [anon_sym_bytes31] = ACTIONS(358),
    [anon_sym_bytes32] = ACTIONS(358),
    [anon_sym_fixed] = ACTIONS(358),
    [aux_sym__fixed_token1] = ACTIONS(358),
    [anon_sym_ufixed] = ACTIONS(358),
    [aux_sym__ufixed_token1] = ACTIONS(358),
    [sym__semicolon] = ACTIONS(360),
    [aux_sym__decimal_number_token1] = ACTIONS(358),
    [aux_sym__decimal_number_token2] = ACTIONS(360),
    [aux_sym__hex_number_token1] = ACTIONS(360),
    [anon_sym_hex] = ACTIONS(358),
    [anon_sym_DQUOTE] = ACTIONS(360),
    [anon_sym_SQUOTE] = ACTIONS(360),
    [anon_sym_unicode] = ACTIONS(358),
    [sym_comment] = ACTIONS(3),
  },
  [75] = {
    [sym_identifier] = ACTIONS(362),
    [anon_sym_DASH] = ACTIONS(362),
    [anon_sym_TILDE] = ACTIONS(364),
    [anon_sym_LBRACE] = ACTIONS(364),
    [anon_sym_RBRACE] = ACTIONS(364),
    [anon_sym_type] = ACTIONS(362),
    [anon_sym_LPAREN] = ACTIONS(364),
    [anon_sym_for] = ACTIONS(362),
    [anon_sym_assembly] = ACTIONS(362),
    [anon_sym_break] = ACTIONS(362),
    [anon_sym_continue] = ACTIONS(362),
    [anon_sym_true] = ACTIONS(362),
    [anon_sym_false] = ACTIONS(362),
    [anon_sym_if] = ACTIONS(362),
    [anon_sym_function] = ACTIONS(362),
    [anon_sym_byte] = ACTIONS(362),
    [anon_sym_address] = ACTIONS(362),
    [anon_sym_return] = ACTIONS(362),
    [anon_sym_revert] = ACTIONS(362),
    [sym__unchecked] = ACTIONS(362),
    [anon_sym_var] = ACTIONS(362),
    [anon_sym_else] = ACTIONS(362),
    [anon_sym_while] = ACTIONS(362),
    [anon_sym_do] = ACTIONS(362),
    [anon_sym_try] = ACTIONS(362),
    [anon_sym_catch] = ACTIONS(362),
    [anon_sym_emit] = ACTIONS(362),
    [anon_sym_payable] = ACTIONS(362),
    [anon_sym_new] = ACTIONS(362),
    [anon_sym_LBRACK] = ACTIONS(364),
    [anon_sym_PLUS] = ACTIONS(362),
    [anon_sym_BANG] = ACTIONS(364),
    [anon_sym_delete] = ACTIONS(362),
    [anon_sym_PLUS_PLUS] = ACTIONS(364),
    [anon_sym_DASH_DASH] = ACTIONS(364),
    [anon_sym_mapping] = ACTIONS(362),
    [anon_sym_bool] = ACTIONS(362),
    [anon_sym_string] = ACTIONS(362),
    [anon_sym_int] = ACTIONS(362),
    [anon_sym_int8] = ACTIONS(362),
    [anon_sym_int16] = ACTIONS(362),
    [anon_sym_int24] = ACTIONS(362),
    [anon_sym_int32] = ACTIONS(362),
    [anon_sym_int40] = ACTIONS(362),
    [anon_sym_int48] = ACTIONS(362),
    [anon_sym_int56] = ACTIONS(362),
    [anon_sym_int64] = ACTIONS(362),
    [anon_sym_int72] = ACTIONS(362),
    [anon_sym_int80] = ACTIONS(362),
    [anon_sym_int88] = ACTIONS(362),
    [anon_sym_int96] = ACTIONS(362),
    [anon_sym_int104] = ACTIONS(362),
    [anon_sym_int112] = ACTIONS(362),
    [anon_sym_int120] = ACTIONS(362),
    [anon_sym_int128] = ACTIONS(362),
    [anon_sym_int136] = ACTIONS(362),
    [anon_sym_int144] = ACTIONS(362),
    [anon_sym_int152] = ACTIONS(362),
    [anon_sym_int160] = ACTIONS(362),
    [anon_sym_int168] = ACTIONS(362),
    [anon_sym_int176] = ACTIONS(362),
    [anon_sym_int184] = ACTIONS(362),
    [anon_sym_int192] = ACTIONS(362),
    [anon_sym_int200] = ACTIONS(362),
    [anon_sym_int208] = ACTIONS(362),
    [anon_sym_int216] = ACTIONS(362),
    [anon_sym_int224] = ACTIONS(362),
    [anon_sym_int232] = ACTIONS(362),
    [anon_sym_int240] = ACTIONS(362),
    [anon_sym_int248] = ACTIONS(362),
    [anon_sym_int256] = ACTIONS(362),
    [anon_sym_uint] = ACTIONS(362),
    [anon_sym_uint8] = ACTIONS(362),
    [anon_sym_uint16] = ACTIONS(362),
    [anon_sym_uint24] = ACTIONS(362),
    [anon_sym_uint32] = ACTIONS(362),
    [anon_sym_uint40] = ACTIONS(362),
    [anon_sym_uint48] = ACTIONS(362),
    [anon_sym_uint56] = ACTIONS(362),
    [anon_sym_uint64] = ACTIONS(362),
    [anon_sym_uint72] = ACTIONS(362),
    [anon_sym_uint80] = ACTIONS(362),
    [anon_sym_uint88] = ACTIONS(362),
    [anon_sym_uint96] = ACTIONS(362),
    [anon_sym_uint104] = ACTIONS(362),
    [anon_sym_uint112] = ACTIONS(362),
    [anon_sym_uint120] = ACTIONS(362),
    [anon_sym_uint128] = ACTIONS(362),
    [anon_sym_uint136] = ACTIONS(362),
    [anon_sym_uint144] = ACTIONS(362),
    [anon_sym_uint152] = ACTIONS(362),
    [anon_sym_uint160] = ACTIONS(362),
    [anon_sym_uint168] = ACTIONS(362),
    [anon_sym_uint176] = ACTIONS(362),
    [anon_sym_uint184] = ACTIONS(362),
    [anon_sym_uint192] = ACTIONS(362),
    [anon_sym_uint200] = ACTIONS(362),
    [anon_sym_uint208] = ACTIONS(362),
    [anon_sym_uint216] = ACTIONS(362),
    [anon_sym_uint224] = ACTIONS(362),
    [anon_sym_uint232] = ACTIONS(362),
    [anon_sym_uint240] = ACTIONS(362),
    [anon_sym_uint248] = ACTIONS(362),
    [anon_sym_uint256] = ACTIONS(362),
    [anon_sym_bytes] = ACTIONS(362),
    [anon_sym_bytes1] = ACTIONS(362),
    [anon_sym_bytes2] = ACTIONS(362),
    [anon_sym_bytes3] = ACTIONS(362),
    [anon_sym_bytes4] = ACTIONS(362),
    [anon_sym_bytes5] = ACTIONS(362),
    [anon_sym_bytes6] = ACTIONS(362),
    [anon_sym_bytes7] = ACTIONS(362),
    [anon_sym_bytes8] = ACTIONS(362),
    [anon_sym_bytes9] = ACTIONS(362),
    [anon_sym_bytes10] = ACTIONS(362),
    [anon_sym_bytes11] = ACTIONS(362),
    [anon_sym_bytes12] = ACTIONS(362),
    [anon_sym_bytes13] = ACTIONS(362),
    [anon_sym_bytes14] = ACTIONS(362),
    [anon_sym_bytes15] = ACTIONS(362),
    [anon_sym_bytes16] = ACTIONS(362),
    [anon_sym_bytes17] = ACTIONS(362),
    [anon_sym_bytes18] = ACTIONS(362),
    [anon_sym_bytes19] = ACTIONS(362),
    [anon_sym_bytes20] = ACTIONS(362),
    [anon_sym_bytes21] = ACTIONS(362),
    [anon_sym_bytes22] = ACTIONS(362),
    [anon_sym_bytes23] = ACTIONS(362),
    [anon_sym_bytes24] = ACTIONS(362),
    [anon_sym_bytes25] = ACTIONS(362),
    [anon_sym_bytes26] = ACTIONS(362),
    [anon_sym_bytes27] = ACTIONS(362),
    [anon_sym_bytes28] = ACTIONS(362),
    [anon_sym_bytes29] = ACTIONS(362),
    [anon_sym_bytes30] = ACTIONS(362),
    [anon_sym_bytes31] = ACTIONS(362),
    [anon_sym_bytes32] = ACTIONS(362),
    [anon_sym_fixed] = ACTIONS(362),
    [aux_sym__fixed_token1] = ACTIONS(362),
    [anon_sym_ufixed] = ACTIONS(362),
    [aux_sym__ufixed_token1] = ACTIONS(362),
    [aux_sym__decimal_number_token1] = ACTIONS(362),
    [aux_sym__decimal_number_token2] = ACTIONS(364),
    [aux_sym__hex_number_token1] = ACTIONS(364),
    [anon_sym_hex] = ACTIONS(362),
    [anon_sym_DQUOTE] = ACTIONS(364),
    [anon_sym_SQUOTE] = ACTIONS(364),
    [anon_sym_unicode] = ACTIONS(362),
    [sym_comment] = ACTIONS(3),
  },
  [76] = {
    [sym_identifier] = ACTIONS(366),
    [anon_sym_DASH] = ACTIONS(366),
    [anon_sym_TILDE] = ACTIONS(368),
    [anon_sym_LBRACE] = ACTIONS(368),
    [anon_sym_RBRACE] = ACTIONS(368),
    [anon_sym_type] = ACTIONS(366),
    [anon_sym_LPAREN] = ACTIONS(368),
    [anon_sym_for] = ACTIONS(366),
    [anon_sym_assembly] = ACTIONS(366),
    [anon_sym_break] = ACTIONS(366),
    [anon_sym_continue] = ACTIONS(366),
    [anon_sym_true] = ACTIONS(366),
    [anon_sym_false] = ACTIONS(366),
    [anon_sym_if] = ACTIONS(366),
    [anon_sym_function] = ACTIONS(366),
    [anon_sym_byte] = ACTIONS(366),
    [anon_sym_address] = ACTIONS(366),
    [anon_sym_return] = ACTIONS(366),
    [anon_sym_revert] = ACTIONS(366),
    [sym__unchecked] = ACTIONS(366),
    [anon_sym_var] = ACTIONS(366),
    [anon_sym_else] = ACTIONS(366),
    [anon_sym_while] = ACTIONS(366),
    [anon_sym_do] = ACTIONS(366),
    [anon_sym_try] = ACTIONS(366),
    [anon_sym_catch] = ACTIONS(366),
    [anon_sym_emit] = ACTIONS(366),
    [anon_sym_payable] = ACTIONS(366),
    [anon_sym_new] = ACTIONS(366),
    [anon_sym_LBRACK] = ACTIONS(368),
    [anon_sym_PLUS] = ACTIONS(366),
    [anon_sym_BANG] = ACTIONS(368),
    [anon_sym_delete] = ACTIONS(366),
    [anon_sym_PLUS_PLUS] = ACTIONS(368),
    [anon_sym_DASH_DASH] = ACTIONS(368),
    [anon_sym_mapping] = ACTIONS(366),
    [anon_sym_bool] = ACTIONS(366),
    [anon_sym_string] = ACTIONS(366),
    [anon_sym_int] = ACTIONS(366),
    [anon_sym_int8] = ACTIONS(366),
    [anon_sym_int16] = ACTIONS(366),
    [anon_sym_int24] = ACTIONS(366),
    [anon_sym_int32] = ACTIONS(366),
    [anon_sym_int40] = ACTIONS(366),
    [anon_sym_int48] = ACTIONS(366),
    [anon_sym_int56] = ACTIONS(366),
    [anon_sym_int64] = ACTIONS(366),
    [anon_sym_int72] = ACTIONS(366),
    [anon_sym_int80] = ACTIONS(366),
    [anon_sym_int88] = ACTIONS(366),
    [anon_sym_int96] = ACTIONS(366),
    [anon_sym_int104] = ACTIONS(366),
    [anon_sym_int112] = ACTIONS(366),
    [anon_sym_int120] = ACTIONS(366),
    [anon_sym_int128] = ACTIONS(366),
    [anon_sym_int136] = ACTIONS(366),
    [anon_sym_int144] = ACTIONS(366),
    [anon_sym_int152] = ACTIONS(366),
    [anon_sym_int160] = ACTIONS(366),
    [anon_sym_int168] = ACTIONS(366),
    [anon_sym_int176] = ACTIONS(366),
    [anon_sym_int184] = ACTIONS(366),
    [anon_sym_int192] = ACTIONS(366),
    [anon_sym_int200] = ACTIONS(366),
    [anon_sym_int208] = ACTIONS(366),
    [anon_sym_int216] = ACTIONS(366),
    [anon_sym_int224] = ACTIONS(366),
    [anon_sym_int232] = ACTIONS(366),
    [anon_sym_int240] = ACTIONS(366),
    [anon_sym_int248] = ACTIONS(366),
    [anon_sym_int256] = ACTIONS(366),
    [anon_sym_uint] = ACTIONS(366),
    [anon_sym_uint8] = ACTIONS(366),
    [anon_sym_uint16] = ACTIONS(366),
    [anon_sym_uint24] = ACTIONS(366),
    [anon_sym_uint32] = ACTIONS(366),
    [anon_sym_uint40] = ACTIONS(366),
    [anon_sym_uint48] = ACTIONS(366),
    [anon_sym_uint56] = ACTIONS(366),
    [anon_sym_uint64] = ACTIONS(366),
    [anon_sym_uint72] = ACTIONS(366),
    [anon_sym_uint80] = ACTIONS(366),
    [anon_sym_uint88] = ACTIONS(366),
    [anon_sym_uint96] = ACTIONS(366),
    [anon_sym_uint104] = ACTIONS(366),
    [anon_sym_uint112] = ACTIONS(366),
    [anon_sym_uint120] = ACTIONS(366),
    [anon_sym_uint128] = ACTIONS(366),
    [anon_sym_uint136] = ACTIONS(366),
    [anon_sym_uint144] = ACTIONS(366),
    [anon_sym_uint152] = ACTIONS(366),
    [anon_sym_uint160] = ACTIONS(366),
    [anon_sym_uint168] = ACTIONS(366),
    [anon_sym_uint176] = ACTIONS(366),
    [anon_sym_uint184] = ACTIONS(366),
    [anon_sym_uint192] = ACTIONS(366),
    [anon_sym_uint200] = ACTIONS(366),
    [anon_sym_uint208] = ACTIONS(366),
    [anon_sym_uint216] = ACTIONS(366),
    [anon_sym_uint224] = ACTIONS(366),
    [anon_sym_uint232] = ACTIONS(366),
    [anon_sym_uint240] = ACTIONS(366),
    [anon_sym_uint248] = ACTIONS(366),
    [anon_sym_uint256] = ACTIONS(366),
    [anon_sym_bytes] = ACTIONS(366),
    [anon_sym_bytes1] = ACTIONS(366),
    [anon_sym_bytes2] = ACTIONS(366),
    [anon_sym_bytes3] = ACTIONS(366),
    [anon_sym_bytes4] = ACTIONS(366),
    [anon_sym_bytes5] = ACTIONS(366),
    [anon_sym_bytes6] = ACTIONS(366),
    [anon_sym_bytes7] = ACTIONS(366),
    [anon_sym_bytes8] = ACTIONS(366),
    [anon_sym_bytes9] = ACTIONS(366),
    [anon_sym_bytes10] = ACTIONS(366),
    [anon_sym_bytes11] = ACTIONS(366),
    [anon_sym_bytes12] = ACTIONS(366),
    [anon_sym_bytes13] = ACTIONS(366),
    [anon_sym_bytes14] = ACTIONS(366),
    [anon_sym_bytes15] = ACTIONS(366),
    [anon_sym_bytes16] = ACTIONS(366),
    [anon_sym_bytes17] = ACTIONS(366),
    [anon_sym_bytes18] = ACTIONS(366),
    [anon_sym_bytes19] = ACTIONS(366),
    [anon_sym_bytes20] = ACTIONS(366),
    [anon_sym_bytes21] = ACTIONS(366),
    [anon_sym_bytes22] = ACTIONS(366),
    [anon_sym_bytes23] = ACTIONS(366),
    [anon_sym_bytes24] = ACTIONS(366),
    [anon_sym_bytes25] = ACTIONS(366),
    [anon_sym_bytes26] = ACTIONS(366),
    [anon_sym_bytes27] = ACTIONS(366),
    [anon_sym_bytes28] = ACTIONS(366),
    [anon_sym_bytes29] = ACTIONS(366),
    [anon_sym_bytes30] = ACTIONS(366),
    [anon_sym_bytes31] = ACTIONS(366),
    [anon_sym_bytes32] = ACTIONS(366),
    [anon_sym_fixed] = ACTIONS(366),
    [aux_sym__fixed_token1] = ACTIONS(366),
    [anon_sym_ufixed] = ACTIONS(366),
    [aux_sym__ufixed_token1] = ACTIONS(366),
    [aux_sym__decimal_number_token1] = ACTIONS(366),
    [aux_sym__decimal_number_token2] = ACTIONS(368),
    [aux_sym__hex_number_token1] = ACTIONS(368),
    [anon_sym_hex] = ACTIONS(366),
    [anon_sym_DQUOTE] = ACTIONS(368),
    [anon_sym_SQUOTE] = ACTIONS(368),
    [anon_sym_unicode] = ACTIONS(366),
    [sym_comment] = ACTIONS(3),
  },
  [77] = {
    [sym_identifier] = ACTIONS(370),
    [anon_sym_DASH] = ACTIONS(370),
    [anon_sym_TILDE] = ACTIONS(372),
    [anon_sym_LBRACE] = ACTIONS(372),
    [anon_sym_RBRACE] = ACTIONS(372),
    [anon_sym_type] = ACTIONS(370),
    [anon_sym_LPAREN] = ACTIONS(372),
    [anon_sym_for] = ACTIONS(370),
    [anon_sym_assembly] = ACTIONS(370),
    [anon_sym_break] = ACTIONS(370),
    [anon_sym_continue] = ACTIONS(370),
    [anon_sym_true] = ACTIONS(370),
    [anon_sym_false] = ACTIONS(370),
    [anon_sym_if] = ACTIONS(370),
    [anon_sym_function] = ACTIONS(370),
    [anon_sym_byte] = ACTIONS(370),
    [anon_sym_address] = ACTIONS(370),
    [anon_sym_return] = ACTIONS(370),
    [anon_sym_revert] = ACTIONS(370),
    [sym__unchecked] = ACTIONS(370),
    [anon_sym_var] = ACTIONS(370),
    [anon_sym_else] = ACTIONS(370),
    [anon_sym_while] = ACTIONS(370),
    [anon_sym_do] = ACTIONS(370),
    [anon_sym_try] = ACTIONS(370),
    [anon_sym_catch] = ACTIONS(370),
    [anon_sym_emit] = ACTIONS(370),
    [anon_sym_payable] = ACTIONS(370),
    [anon_sym_new] = ACTIONS(370),
    [anon_sym_LBRACK] = ACTIONS(372),
    [anon_sym_PLUS] = ACTIONS(370),
    [anon_sym_BANG] = ACTIONS(372),
    [anon_sym_delete] = ACTIONS(370),
    [anon_sym_PLUS_PLUS] = ACTIONS(372),
    [anon_sym_DASH_DASH] = ACTIONS(372),
    [anon_sym_mapping] = ACTIONS(370),
    [anon_sym_bool] = ACTIONS(370),
    [anon_sym_string] = ACTIONS(370),
    [anon_sym_int] = ACTIONS(370),
    [anon_sym_int8] = ACTIONS(370),
    [anon_sym_int16] = ACTIONS(370),
    [anon_sym_int24] = ACTIONS(370),
    [anon_sym_int32] = ACTIONS(370),
    [anon_sym_int40] = ACTIONS(370),
    [anon_sym_int48] = ACTIONS(370),
    [anon_sym_int56] = ACTIONS(370),
    [anon_sym_int64] = ACTIONS(370),
    [anon_sym_int72] = ACTIONS(370),
    [anon_sym_int80] = ACTIONS(370),
    [anon_sym_int88] = ACTIONS(370),
    [anon_sym_int96] = ACTIONS(370),
    [anon_sym_int104] = ACTIONS(370),
    [anon_sym_int112] = ACTIONS(370),
    [anon_sym_int120] = ACTIONS(370),
    [anon_sym_int128] = ACTIONS(370),
    [anon_sym_int136] = ACTIONS(370),
    [anon_sym_int144] = ACTIONS(370),
    [anon_sym_int152] = ACTIONS(370),
    [anon_sym_int160] = ACTIONS(370),
    [anon_sym_int168] = ACTIONS(370),
    [anon_sym_int176] = ACTIONS(370),
    [anon_sym_int184] = ACTIONS(370),
    [anon_sym_int192] = ACTIONS(370),
    [anon_sym_int200] = ACTIONS(370),
    [anon_sym_int208] = ACTIONS(370),
    [anon_sym_int216] = ACTIONS(370),
    [anon_sym_int224] = ACTIONS(370),
    [anon_sym_int232] = ACTIONS(370),
    [anon_sym_int240] = ACTIONS(370),
    [anon_sym_int248] = ACTIONS(370),
    [anon_sym_int256] = ACTIONS(370),
    [anon_sym_uint] = ACTIONS(370),
    [anon_sym_uint8] = ACTIONS(370),
    [anon_sym_uint16] = ACTIONS(370),
    [anon_sym_uint24] = ACTIONS(370),
    [anon_sym_uint32] = ACTIONS(370),
    [anon_sym_uint40] = ACTIONS(370),
    [anon_sym_uint48] = ACTIONS(370),
    [anon_sym_uint56] = ACTIONS(370),
    [anon_sym_uint64] = ACTIONS(370),
    [anon_sym_uint72] = ACTIONS(370),
    [anon_sym_uint80] = ACTIONS(370),
    [anon_sym_uint88] = ACTIONS(370),
    [anon_sym_uint96] = ACTIONS(370),
    [anon_sym_uint104] = ACTIONS(370),
    [anon_sym_uint112] = ACTIONS(370),
    [anon_sym_uint120] = ACTIONS(370),
    [anon_sym_uint128] = ACTIONS(370),
    [anon_sym_uint136] = ACTIONS(370),
    [anon_sym_uint144] = ACTIONS(370),
    [anon_sym_uint152] = ACTIONS(370),
    [anon_sym_uint160] = ACTIONS(370),
    [anon_sym_uint168] = ACTIONS(370),
    [anon_sym_uint176] = ACTIONS(370),
    [anon_sym_uint184] = ACTIONS(370),
    [anon_sym_uint192] = ACTIONS(370),
    [anon_sym_uint200] = ACTIONS(370),
    [anon_sym_uint208] = ACTIONS(370),
    [anon_sym_uint216] = ACTIONS(370),
    [anon_sym_uint224] = ACTIONS(370),
    [anon_sym_uint232] = ACTIONS(370),
    [anon_sym_uint240] = ACTIONS(370),
    [anon_sym_uint248] = ACTIONS(370),
    [anon_sym_uint256] = ACTIONS(370),
    [anon_sym_bytes] = ACTIONS(370),
    [anon_sym_bytes1] = ACTIONS(370),
    [anon_sym_bytes2] = ACTIONS(370),
    [anon_sym_bytes3] = ACTIONS(370),
    [anon_sym_bytes4] = ACTIONS(370),
    [anon_sym_bytes5] = ACTIONS(370),
    [anon_sym_bytes6] = ACTIONS(370),
    [anon_sym_bytes7] = ACTIONS(370),
    [anon_sym_bytes8] = ACTIONS(370),
    [anon_sym_bytes9] = ACTIONS(370),
    [anon_sym_bytes10] = ACTIONS(370),
    [anon_sym_bytes11] = ACTIONS(370),
    [anon_sym_bytes12] = ACTIONS(370),
    [anon_sym_bytes13] = ACTIONS(370),
    [anon_sym_bytes14] = ACTIONS(370),
    [anon_sym_bytes15] = ACTIONS(370),
    [anon_sym_bytes16] = ACTIONS(370),
    [anon_sym_bytes17] = ACTIONS(370),
    [anon_sym_bytes18] = ACTIONS(370),
    [anon_sym_bytes19] = ACTIONS(370),
    [anon_sym_bytes20] = ACTIONS(370),
    [anon_sym_bytes21] = ACTIONS(370),
    [anon_sym_bytes22] = ACTIONS(370),
    [anon_sym_bytes23] = ACTIONS(370),
    [anon_sym_bytes24] = ACTIONS(370),
    [anon_sym_bytes25] = ACTIONS(370),
    [anon_sym_bytes26] = ACTIONS(370),
    [anon_sym_bytes27] = ACTIONS(370),
    [anon_sym_bytes28] = ACTIONS(370),
    [anon_sym_bytes29] = ACTIONS(370),
    [anon_sym_bytes30] = ACTIONS(370),
    [anon_sym_bytes31] = ACTIONS(370),
    [anon_sym_bytes32] = ACTIONS(370),
    [anon_sym_fixed] = ACTIONS(370),
    [aux_sym__fixed_token1] = ACTIONS(370),
    [anon_sym_ufixed] = ACTIONS(370),
    [aux_sym__ufixed_token1] = ACTIONS(370),
    [aux_sym__decimal_number_token1] = ACTIONS(370),
    [aux_sym__decimal_number_token2] = ACTIONS(372),
    [aux_sym__hex_number_token1] = ACTIONS(372),
    [anon_sym_hex] = ACTIONS(370),
    [anon_sym_DQUOTE] = ACTIONS(372),
    [anon_sym_SQUOTE] = ACTIONS(372),
    [anon_sym_unicode] = ACTIONS(370),
    [sym_comment] = ACTIONS(3),
  },
  [78] = {
    [sym_identifier] = ACTIONS(374),
    [anon_sym_DASH] = ACTIONS(374),
    [anon_sym_TILDE] = ACTIONS(376),
    [anon_sym_LBRACE] = ACTIONS(376),
    [anon_sym_RBRACE] = ACTIONS(376),
    [anon_sym_type] = ACTIONS(374),
    [anon_sym_LPAREN] = ACTIONS(376),
    [anon_sym_for] = ACTIONS(374),
    [anon_sym_assembly] = ACTIONS(374),
    [anon_sym_break] = ACTIONS(374),
    [anon_sym_continue] = ACTIONS(374),
    [anon_sym_true] = ACTIONS(374),
    [anon_sym_false] = ACTIONS(374),
    [anon_sym_if] = ACTIONS(374),
    [anon_sym_function] = ACTIONS(374),
    [anon_sym_byte] = ACTIONS(374),
    [anon_sym_address] = ACTIONS(374),
    [anon_sym_return] = ACTIONS(374),
    [anon_sym_revert] = ACTIONS(374),
    [sym__unchecked] = ACTIONS(374),
    [anon_sym_var] = ACTIONS(374),
    [anon_sym_else] = ACTIONS(374),
    [anon_sym_while] = ACTIONS(374),
    [anon_sym_do] = ACTIONS(374),
    [anon_sym_try] = ACTIONS(374),
    [anon_sym_emit] = ACTIONS(374),
    [anon_sym_payable] = ACTIONS(374),
    [anon_sym_new] = ACTIONS(374),
    [anon_sym_LBRACK] = ACTIONS(376),
    [anon_sym_PLUS] = ACTIONS(374),
    [anon_sym_BANG] = ACTIONS(376),
    [anon_sym_delete] = ACTIONS(374),
    [anon_sym_PLUS_PLUS] = ACTIONS(376),
    [anon_sym_DASH_DASH] = ACTIONS(376),
    [anon_sym_mapping] = ACTIONS(374),
    [anon_sym_bool] = ACTIONS(374),
    [anon_sym_string] = ACTIONS(374),
    [anon_sym_int] = ACTIONS(374),
    [anon_sym_int8] = ACTIONS(374),
    [anon_sym_int16] = ACTIONS(374),
    [anon_sym_int24] = ACTIONS(374),
    [anon_sym_int32] = ACTIONS(374),
    [anon_sym_int40] = ACTIONS(374),
    [anon_sym_int48] = ACTIONS(374),
    [anon_sym_int56] = ACTIONS(374),
    [anon_sym_int64] = ACTIONS(374),
    [anon_sym_int72] = ACTIONS(374),
    [anon_sym_int80] = ACTIONS(374),
    [anon_sym_int88] = ACTIONS(374),
    [anon_sym_int96] = ACTIONS(374),
    [anon_sym_int104] = ACTIONS(374),
    [anon_sym_int112] = ACTIONS(374),
    [anon_sym_int120] = ACTIONS(374),
    [anon_sym_int128] = ACTIONS(374),
    [anon_sym_int136] = ACTIONS(374),
    [anon_sym_int144] = ACTIONS(374),
    [anon_sym_int152] = ACTIONS(374),
    [anon_sym_int160] = ACTIONS(374),
    [anon_sym_int168] = ACTIONS(374),
    [anon_sym_int176] = ACTIONS(374),
    [anon_sym_int184] = ACTIONS(374),
    [anon_sym_int192] = ACTIONS(374),
    [anon_sym_int200] = ACTIONS(374),
    [anon_sym_int208] = ACTIONS(374),
    [anon_sym_int216] = ACTIONS(374),
    [anon_sym_int224] = ACTIONS(374),
    [anon_sym_int232] = ACTIONS(374),
    [anon_sym_int240] = ACTIONS(374),
    [anon_sym_int248] = ACTIONS(374),
    [anon_sym_int256] = ACTIONS(374),
    [anon_sym_uint] = ACTIONS(374),
    [anon_sym_uint8] = ACTIONS(374),
    [anon_sym_uint16] = ACTIONS(374),
    [anon_sym_uint24] = ACTIONS(374),
    [anon_sym_uint32] = ACTIONS(374),
    [anon_sym_uint40] = ACTIONS(374),
    [anon_sym_uint48] = ACTIONS(374),
    [anon_sym_uint56] = ACTIONS(374),
    [anon_sym_uint64] = ACTIONS(374),
    [anon_sym_uint72] = ACTIONS(374),
    [anon_sym_uint80] = ACTIONS(374),
    [anon_sym_uint88] = ACTIONS(374),
    [anon_sym_uint96] = ACTIONS(374),
    [anon_sym_uint104] = ACTIONS(374),
    [anon_sym_uint112] = ACTIONS(374),
    [anon_sym_uint120] = ACTIONS(374),
    [anon_sym_uint128] = ACTIONS(374),
    [anon_sym_uint136] = ACTIONS(374),
    [anon_sym_uint144] = ACTIONS(374),
    [anon_sym_uint152] = ACTIONS(374),
    [anon_sym_uint160] = ACTIONS(374),
    [anon_sym_uint168] = ACTIONS(374),
    [anon_sym_uint176] = ACTIONS(374),
    [anon_sym_uint184] = ACTIONS(374),
    [anon_sym_uint192] = ACTIONS(374),
    [anon_sym_uint200] = ACTIONS(374),
    [anon_sym_uint208] = ACTIONS(374),
    [anon_sym_uint216] = ACTIONS(374),
    [anon_sym_uint224] = ACTIONS(374),
    [anon_sym_uint232] = ACTIONS(374),
    [anon_sym_uint240] = ACTIONS(374),
    [anon_sym_uint248] = ACTIONS(374),
    [anon_sym_uint256] = ACTIONS(374),
    [anon_sym_bytes] = ACTIONS(374),
    [anon_sym_bytes1] = ACTIONS(374),
    [anon_sym_bytes2] = ACTIONS(374),
    [anon_sym_bytes3] = ACTIONS(374),
    [anon_sym_bytes4] = ACTIONS(374),
    [anon_sym_bytes5] = ACTIONS(374),
    [anon_sym_bytes6] = ACTIONS(374),
    [anon_sym_bytes7] = ACTIONS(374),
    [anon_sym_bytes8] = ACTIONS(374),
    [anon_sym_bytes9] = ACTIONS(374),
    [anon_sym_bytes10] = ACTIONS(374),
    [anon_sym_bytes11] = ACTIONS(374),
    [anon_sym_bytes12] = ACTIONS(374),
    [anon_sym_bytes13] = ACTIONS(374),
    [anon_sym_bytes14] = ACTIONS(374),
    [anon_sym_bytes15] = ACTIONS(374),
    [anon_sym_bytes16] = ACTIONS(374),
    [anon_sym_bytes17] = ACTIONS(374),
    [anon_sym_bytes18] = ACTIONS(374),
    [anon_sym_bytes19] = ACTIONS(374),
    [anon_sym_bytes20] = ACTIONS(374),
    [anon_sym_bytes21] = ACTIONS(374),
    [anon_sym_bytes22] = ACTIONS(374),
    [anon_sym_bytes23] = ACTIONS(374),
    [anon_sym_bytes24] = ACTIONS(374),
    [anon_sym_bytes25] = ACTIONS(374),
    [anon_sym_bytes26] = ACTIONS(374),
    [anon_sym_bytes27] = ACTIONS(374),
    [anon_sym_bytes28] = ACTIONS(374),
    [anon_sym_bytes29] = ACTIONS(374),
    [anon_sym_bytes30] = ACTIONS(374),
    [anon_sym_bytes31] = ACTIONS(374),
    [anon_sym_bytes32] = ACTIONS(374),
    [anon_sym_fixed] = ACTIONS(374),
    [aux_sym__fixed_token1] = ACTIONS(374),
    [anon_sym_ufixed] = ACTIONS(374),
    [aux_sym__ufixed_token1] = ACTIONS(374),
    [sym__semicolon] = ACTIONS(376),
    [aux_sym__decimal_number_token1] = ACTIONS(374),
    [aux_sym__decimal_number_token2] = ACTIONS(376),
    [aux_sym__hex_number_token1] = ACTIONS(376),
    [anon_sym_hex] = ACTIONS(374),
    [anon_sym_DQUOTE] = ACTIONS(376),
    [anon_sym_SQUOTE] = ACTIONS(376),
    [anon_sym_unicode] = ACTIONS(374),
    [sym_comment] = ACTIONS(3),
  },
  [79] = {
    [sym_identifier] = ACTIONS(378),
    [anon_sym_DASH] = ACTIONS(378),
    [anon_sym_TILDE] = ACTIONS(380),
    [anon_sym_LBRACE] = ACTIONS(380),
    [anon_sym_RBRACE] = ACTIONS(380),
    [anon_sym_type] = ACTIONS(378),
    [anon_sym_LPAREN] = ACTIONS(380),
    [anon_sym_for] = ACTIONS(378),
    [anon_sym_assembly] = ACTIONS(378),
    [anon_sym_break] = ACTIONS(378),
    [anon_sym_continue] = ACTIONS(378),
    [anon_sym_true] = ACTIONS(378),
    [anon_sym_false] = ACTIONS(378),
    [anon_sym_if] = ACTIONS(378),
    [anon_sym_function] = ACTIONS(378),
    [anon_sym_byte] = ACTIONS(378),
    [anon_sym_address] = ACTIONS(378),
    [anon_sym_return] = ACTIONS(378),
    [anon_sym_revert] = ACTIONS(378),
    [sym__unchecked] = ACTIONS(378),
    [anon_sym_var] = ACTIONS(378),
    [anon_sym_else] = ACTIONS(378),
    [anon_sym_while] = ACTIONS(378),
    [anon_sym_do] = ACTIONS(378),
    [anon_sym_try] = ACTIONS(378),
    [anon_sym_catch] = ACTIONS(378),
    [anon_sym_emit] = ACTIONS(378),
    [anon_sym_payable] = ACTIONS(378),
    [anon_sym_new] = ACTIONS(378),
    [anon_sym_LBRACK] = ACTIONS(380),
    [anon_sym_PLUS] = ACTIONS(378),
    [anon_sym_BANG] = ACTIONS(380),
    [anon_sym_delete] = ACTIONS(378),
    [anon_sym_PLUS_PLUS] = ACTIONS(380),
    [anon_sym_DASH_DASH] = ACTIONS(380),
    [anon_sym_mapping] = ACTIONS(378),
    [anon_sym_bool] = ACTIONS(378),
    [anon_sym_string] = ACTIONS(378),
    [anon_sym_int] = ACTIONS(378),
    [anon_sym_int8] = ACTIONS(378),
    [anon_sym_int16] = ACTIONS(378),
    [anon_sym_int24] = ACTIONS(378),
    [anon_sym_int32] = ACTIONS(378),
    [anon_sym_int40] = ACTIONS(378),
    [anon_sym_int48] = ACTIONS(378),
    [anon_sym_int56] = ACTIONS(378),
    [anon_sym_int64] = ACTIONS(378),
    [anon_sym_int72] = ACTIONS(378),
    [anon_sym_int80] = ACTIONS(378),
    [anon_sym_int88] = ACTIONS(378),
    [anon_sym_int96] = ACTIONS(378),
    [anon_sym_int104] = ACTIONS(378),
    [anon_sym_int112] = ACTIONS(378),
    [anon_sym_int120] = ACTIONS(378),
    [anon_sym_int128] = ACTIONS(378),
    [anon_sym_int136] = ACTIONS(378),
    [anon_sym_int144] = ACTIONS(378),
    [anon_sym_int152] = ACTIONS(378),
    [anon_sym_int160] = ACTIONS(378),
    [anon_sym_int168] = ACTIONS(378),
    [anon_sym_int176] = ACTIONS(378),
    [anon_sym_int184] = ACTIONS(378),
    [anon_sym_int192] = ACTIONS(378),
    [anon_sym_int200] = ACTIONS(378),
    [anon_sym_int208] = ACTIONS(378),
    [anon_sym_int216] = ACTIONS(378),
    [anon_sym_int224] = ACTIONS(378),
    [anon_sym_int232] = ACTIONS(378),
    [anon_sym_int240] = ACTIONS(378),
    [anon_sym_int248] = ACTIONS(378),
    [anon_sym_int256] = ACTIONS(378),
    [anon_sym_uint] = ACTIONS(378),
    [anon_sym_uint8] = ACTIONS(378),
    [anon_sym_uint16] = ACTIONS(378),
    [anon_sym_uint24] = ACTIONS(378),
    [anon_sym_uint32] = ACTIONS(378),
    [anon_sym_uint40] = ACTIONS(378),
    [anon_sym_uint48] = ACTIONS(378),
    [anon_sym_uint56] = ACTIONS(378),
    [anon_sym_uint64] = ACTIONS(378),
    [anon_sym_uint72] = ACTIONS(378),
    [anon_sym_uint80] = ACTIONS(378),
    [anon_sym_uint88] = ACTIONS(378),
    [anon_sym_uint96] = ACTIONS(378),
    [anon_sym_uint104] = ACTIONS(378),
    [anon_sym_uint112] = ACTIONS(378),
    [anon_sym_uint120] = ACTIONS(378),
    [anon_sym_uint128] = ACTIONS(378),
    [anon_sym_uint136] = ACTIONS(378),
    [anon_sym_uint144] = ACTIONS(378),
    [anon_sym_uint152] = ACTIONS(378),
    [anon_sym_uint160] = ACTIONS(378),
    [anon_sym_uint168] = ACTIONS(378),
    [anon_sym_uint176] = ACTIONS(378),
    [anon_sym_uint184] = ACTIONS(378),
    [anon_sym_uint192] = ACTIONS(378),
    [anon_sym_uint200] = ACTIONS(378),
    [anon_sym_uint208] = ACTIONS(378),
    [anon_sym_uint216] = ACTIONS(378),
    [anon_sym_uint224] = ACTIONS(378),
    [anon_sym_uint232] = ACTIONS(378),
    [anon_sym_uint240] = ACTIONS(378),
    [anon_sym_uint248] = ACTIONS(378),
    [anon_sym_uint256] = ACTIONS(378),
    [anon_sym_bytes] = ACTIONS(378),
    [anon_sym_bytes1] = ACTIONS(378),
    [anon_sym_bytes2] = ACTIONS(378),
    [anon_sym_bytes3] = ACTIONS(378),
    [anon_sym_bytes4] = ACTIONS(378),
    [anon_sym_bytes5] = ACTIONS(378),
    [anon_sym_bytes6] = ACTIONS(378),
    [anon_sym_bytes7] = ACTIONS(378),
    [anon_sym_bytes8] = ACTIONS(378),
    [anon_sym_bytes9] = ACTIONS(378),
    [anon_sym_bytes10] = ACTIONS(378),
    [anon_sym_bytes11] = ACTIONS(378),
    [anon_sym_bytes12] = ACTIONS(378),
    [anon_sym_bytes13] = ACTIONS(378),
    [anon_sym_bytes14] = ACTIONS(378),
    [anon_sym_bytes15] = ACTIONS(378),
    [anon_sym_bytes16] = ACTIONS(378),
    [anon_sym_bytes17] = ACTIONS(378),
    [anon_sym_bytes18] = ACTIONS(378),
    [anon_sym_bytes19] = ACTIONS(378),
    [anon_sym_bytes20] = ACTIONS(378),
    [anon_sym_bytes21] = ACTIONS(378),
    [anon_sym_bytes22] = ACTIONS(378),
    [anon_sym_bytes23] = ACTIONS(378),
    [anon_sym_bytes24] = ACTIONS(378),
    [anon_sym_bytes25] = ACTIONS(378),
    [anon_sym_bytes26] = ACTIONS(378),
    [anon_sym_bytes27] = ACTIONS(378),
    [anon_sym_bytes28] = ACTIONS(378),
    [anon_sym_bytes29] = ACTIONS(378),
    [anon_sym_bytes30] = ACTIONS(378),
    [anon_sym_bytes31] = ACTIONS(378),
    [anon_sym_bytes32] = ACTIONS(378),
    [anon_sym_fixed] = ACTIONS(378),
    [aux_sym__fixed_token1] = ACTIONS(378),
    [anon_sym_ufixed] = ACTIONS(378),
    [aux_sym__ufixed_token1] = ACTIONS(378),
    [aux_sym__decimal_number_token1] = ACTIONS(378),
    [aux_sym__decimal_number_token2] = ACTIONS(380),
    [aux_sym__hex_number_token1] = ACTIONS(380),
    [anon_sym_hex] = ACTIONS(378),
    [anon_sym_DQUOTE] = ACTIONS(380),
    [anon_sym_SQUOTE] = ACTIONS(380),
    [anon_sym_unicode] = ACTIONS(378),
    [sym_comment] = ACTIONS(3),
  },
  [80] = {
    [sym_identifier] = ACTIONS(382),
    [anon_sym_DASH] = ACTIONS(382),
    [anon_sym_TILDE] = ACTIONS(384),
    [anon_sym_LBRACE] = ACTIONS(384),
    [anon_sym_RBRACE] = ACTIONS(384),
    [anon_sym_type] = ACTIONS(382),
    [anon_sym_LPAREN] = ACTIONS(384),
    [anon_sym_for] = ACTIONS(382),
    [anon_sym_assembly] = ACTIONS(382),
    [anon_sym_break] = ACTIONS(382),
    [anon_sym_continue] = ACTIONS(382),
    [anon_sym_true] = ACTIONS(382),
    [anon_sym_false] = ACTIONS(382),
    [anon_sym_if] = ACTIONS(382),
    [anon_sym_function] = ACTIONS(382),
    [anon_sym_byte] = ACTIONS(382),
    [anon_sym_address] = ACTIONS(382),
    [anon_sym_return] = ACTIONS(382),
    [anon_sym_revert] = ACTIONS(382),
    [sym__unchecked] = ACTIONS(382),
    [anon_sym_var] = ACTIONS(382),
    [anon_sym_else] = ACTIONS(382),
    [anon_sym_while] = ACTIONS(382),
    [anon_sym_do] = ACTIONS(382),
    [anon_sym_try] = ACTIONS(382),
    [anon_sym_catch] = ACTIONS(382),
    [anon_sym_emit] = ACTIONS(382),
    [anon_sym_payable] = ACTIONS(382),
    [anon_sym_new] = ACTIONS(382),
    [anon_sym_LBRACK] = ACTIONS(384),
    [anon_sym_PLUS] = ACTIONS(382),
    [anon_sym_BANG] = ACTIONS(384),
    [anon_sym_delete] = ACTIONS(382),
    [anon_sym_PLUS_PLUS] = ACTIONS(384),
    [anon_sym_DASH_DASH] = ACTIONS(384),
    [anon_sym_mapping] = ACTIONS(382),
    [anon_sym_bool] = ACTIONS(382),
    [anon_sym_string] = ACTIONS(382),
    [anon_sym_int] = ACTIONS(382),
    [anon_sym_int8] = ACTIONS(382),
    [anon_sym_int16] = ACTIONS(382),
    [anon_sym_int24] = ACTIONS(382),
    [anon_sym_int32] = ACTIONS(382),
    [anon_sym_int40] = ACTIONS(382),
    [anon_sym_int48] = ACTIONS(382),
    [anon_sym_int56] = ACTIONS(382),
    [anon_sym_int64] = ACTIONS(382),
    [anon_sym_int72] = ACTIONS(382),
    [anon_sym_int80] = ACTIONS(382),
    [anon_sym_int88] = ACTIONS(382),
    [anon_sym_int96] = ACTIONS(382),
    [anon_sym_int104] = ACTIONS(382),
    [anon_sym_int112] = ACTIONS(382),
    [anon_sym_int120] = ACTIONS(382),
    [anon_sym_int128] = ACTIONS(382),
    [anon_sym_int136] = ACTIONS(382),
    [anon_sym_int144] = ACTIONS(382),
    [anon_sym_int152] = ACTIONS(382),
    [anon_sym_int160] = ACTIONS(382),
    [anon_sym_int168] = ACTIONS(382),
    [anon_sym_int176] = ACTIONS(382),
    [anon_sym_int184] = ACTIONS(382),
    [anon_sym_int192] = ACTIONS(382),
    [anon_sym_int200] = ACTIONS(382),
    [anon_sym_int208] = ACTIONS(382),
    [anon_sym_int216] = ACTIONS(382),
    [anon_sym_int224] = ACTIONS(382),
    [anon_sym_int232] = ACTIONS(382),
    [anon_sym_int240] = ACTIONS(382),
    [anon_sym_int248] = ACTIONS(382),
    [anon_sym_int256] = ACTIONS(382),
    [anon_sym_uint] = ACTIONS(382),
    [anon_sym_uint8] = ACTIONS(382),
    [anon_sym_uint16] = ACTIONS(382),
    [anon_sym_uint24] = ACTIONS(382),
    [anon_sym_uint32] = ACTIONS(382),
    [anon_sym_uint40] = ACTIONS(382),
    [anon_sym_uint48] = ACTIONS(382),
    [anon_sym_uint56] = ACTIONS(382),
    [anon_sym_uint64] = ACTIONS(382),
    [anon_sym_uint72] = ACTIONS(382),
    [anon_sym_uint80] = ACTIONS(382),
    [anon_sym_uint88] = ACTIONS(382),
    [anon_sym_uint96] = ACTIONS(382),
    [anon_sym_uint104] = ACTIONS(382),
    [anon_sym_uint112] = ACTIONS(382),
    [anon_sym_uint120] = ACTIONS(382),
    [anon_sym_uint128] = ACTIONS(382),
    [anon_sym_uint136] = ACTIONS(382),
    [anon_sym_uint144] = ACTIONS(382),
    [anon_sym_uint152] = ACTIONS(382),
    [anon_sym_uint160] = ACTIONS(382),
    [anon_sym_uint168] = ACTIONS(382),
    [anon_sym_uint176] = ACTIONS(382),
    [anon_sym_uint184] = ACTIONS(382),
    [anon_sym_uint192] = ACTIONS(382),
    [anon_sym_uint200] = ACTIONS(382),
    [anon_sym_uint208] = ACTIONS(382),
    [anon_sym_uint216] = ACTIONS(382),
    [anon_sym_uint224] = ACTIONS(382),
    [anon_sym_uint232] = ACTIONS(382),
    [anon_sym_uint240] = ACTIONS(382),
    [anon_sym_uint248] = ACTIONS(382),
    [anon_sym_uint256] = ACTIONS(382),
    [anon_sym_bytes] = ACTIONS(382),
    [anon_sym_bytes1] = ACTIONS(382),
    [anon_sym_bytes2] = ACTIONS(382),
    [anon_sym_bytes3] = ACTIONS(382),
    [anon_sym_bytes4] = ACTIONS(382),
    [anon_sym_bytes5] = ACTIONS(382),
    [anon_sym_bytes6] = ACTIONS(382),
    [anon_sym_bytes7] = ACTIONS(382),
    [anon_sym_bytes8] = ACTIONS(382),
    [anon_sym_bytes9] = ACTIONS(382),
    [anon_sym_bytes10] = ACTIONS(382),
    [anon_sym_bytes11] = ACTIONS(382),
    [anon_sym_bytes12] = ACTIONS(382),
    [anon_sym_bytes13] = ACTIONS(382),
    [anon_sym_bytes14] = ACTIONS(382),
    [anon_sym_bytes15] = ACTIONS(382),
    [anon_sym_bytes16] = ACTIONS(382),
    [anon_sym_bytes17] = ACTIONS(382),
    [anon_sym_bytes18] = ACTIONS(382),
    [anon_sym_bytes19] = ACTIONS(382),
    [anon_sym_bytes20] = ACTIONS(382),
    [anon_sym_bytes21] = ACTIONS(382),
    [anon_sym_bytes22] = ACTIONS(382),
    [anon_sym_bytes23] = ACTIONS(382),
    [anon_sym_bytes24] = ACTIONS(382),
    [anon_sym_bytes25] = ACTIONS(382),
    [anon_sym_bytes26] = ACTIONS(382),
    [anon_sym_bytes27] = ACTIONS(382),
    [anon_sym_bytes28] = ACTIONS(382),
    [anon_sym_bytes29] = ACTIONS(382),
    [anon_sym_bytes30] = ACTIONS(382),
    [anon_sym_bytes31] = ACTIONS(382),
    [anon_sym_bytes32] = ACTIONS(382),
    [anon_sym_fixed] = ACTIONS(382),
    [aux_sym__fixed_token1] = ACTIONS(382),
    [anon_sym_ufixed] = ACTIONS(382),
    [aux_sym__ufixed_token1] = ACTIONS(382),
    [aux_sym__decimal_number_token1] = ACTIONS(382),
    [aux_sym__decimal_number_token2] = ACTIONS(384),
    [aux_sym__hex_number_token1] = ACTIONS(384),
    [anon_sym_hex] = ACTIONS(382),
    [anon_sym_DQUOTE] = ACTIONS(384),
    [anon_sym_SQUOTE] = ACTIONS(384),
    [anon_sym_unicode] = ACTIONS(382),
    [sym_comment] = ACTIONS(3),
  },
  [81] = {
    [sym_identifier] = ACTIONS(386),
    [anon_sym_DASH] = ACTIONS(386),
    [anon_sym_TILDE] = ACTIONS(388),
    [anon_sym_LBRACE] = ACTIONS(388),
    [anon_sym_RBRACE] = ACTIONS(388),
    [anon_sym_type] = ACTIONS(386),
    [anon_sym_LPAREN] = ACTIONS(388),
    [anon_sym_for] = ACTIONS(386),
    [anon_sym_assembly] = ACTIONS(386),
    [anon_sym_break] = ACTIONS(386),
    [anon_sym_continue] = ACTIONS(386),
    [anon_sym_true] = ACTIONS(386),
    [anon_sym_false] = ACTIONS(386),
    [anon_sym_if] = ACTIONS(386),
    [anon_sym_function] = ACTIONS(386),
    [anon_sym_byte] = ACTIONS(386),
    [anon_sym_address] = ACTIONS(386),
    [anon_sym_return] = ACTIONS(386),
    [anon_sym_revert] = ACTIONS(386),
    [sym__unchecked] = ACTIONS(386),
    [anon_sym_var] = ACTIONS(386),
    [anon_sym_else] = ACTIONS(386),
    [anon_sym_while] = ACTIONS(386),
    [anon_sym_do] = ACTIONS(386),
    [anon_sym_try] = ACTIONS(386),
    [anon_sym_emit] = ACTIONS(386),
    [anon_sym_payable] = ACTIONS(386),
    [anon_sym_new] = ACTIONS(386),
    [anon_sym_LBRACK] = ACTIONS(388),
    [anon_sym_PLUS] = ACTIONS(386),
    [anon_sym_BANG] = ACTIONS(388),
    [anon_sym_delete] = ACTIONS(386),
    [anon_sym_PLUS_PLUS] = ACTIONS(388),
    [anon_sym_DASH_DASH] = ACTIONS(388),
    [anon_sym_mapping] = ACTIONS(386),
    [anon_sym_bool] = ACTIONS(386),
    [anon_sym_string] = ACTIONS(386),
    [anon_sym_int] = ACTIONS(386),
    [anon_sym_int8] = ACTIONS(386),
    [anon_sym_int16] = ACTIONS(386),
    [anon_sym_int24] = ACTIONS(386),
    [anon_sym_int32] = ACTIONS(386),
    [anon_sym_int40] = ACTIONS(386),
    [anon_sym_int48] = ACTIONS(386),
    [anon_sym_int56] = ACTIONS(386),
    [anon_sym_int64] = ACTIONS(386),
    [anon_sym_int72] = ACTIONS(386),
    [anon_sym_int80] = ACTIONS(386),
    [anon_sym_int88] = ACTIONS(386),
    [anon_sym_int96] = ACTIONS(386),
    [anon_sym_int104] = ACTIONS(386),
    [anon_sym_int112] = ACTIONS(386),
    [anon_sym_int120] = ACTIONS(386),
    [anon_sym_int128] = ACTIONS(386),
    [anon_sym_int136] = ACTIONS(386),
    [anon_sym_int144] = ACTIONS(386),
    [anon_sym_int152] = ACTIONS(386),
    [anon_sym_int160] = ACTIONS(386),
    [anon_sym_int168] = ACTIONS(386),
    [anon_sym_int176] = ACTIONS(386),
    [anon_sym_int184] = ACTIONS(386),
    [anon_sym_int192] = ACTIONS(386),
    [anon_sym_int200] = ACTIONS(386),
    [anon_sym_int208] = ACTIONS(386),
    [anon_sym_int216] = ACTIONS(386),
    [anon_sym_int224] = ACTIONS(386),
    [anon_sym_int232] = ACTIONS(386),
    [anon_sym_int240] = ACTIONS(386),
    [anon_sym_int248] = ACTIONS(386),
    [anon_sym_int256] = ACTIONS(386),
    [anon_sym_uint] = ACTIONS(386),
    [anon_sym_uint8] = ACTIONS(386),
    [anon_sym_uint16] = ACTIONS(386),
    [anon_sym_uint24] = ACTIONS(386),
    [anon_sym_uint32] = ACTIONS(386),
    [anon_sym_uint40] = ACTIONS(386),
    [anon_sym_uint48] = ACTIONS(386),
    [anon_sym_uint56] = ACTIONS(386),
    [anon_sym_uint64] = ACTIONS(386),
    [anon_sym_uint72] = ACTIONS(386),
    [anon_sym_uint80] = ACTIONS(386),
    [anon_sym_uint88] = ACTIONS(386),
    [anon_sym_uint96] = ACTIONS(386),
    [anon_sym_uint104] = ACTIONS(386),
    [anon_sym_uint112] = ACTIONS(386),
    [anon_sym_uint120] = ACTIONS(386),
    [anon_sym_uint128] = ACTIONS(386),
    [anon_sym_uint136] = ACTIONS(386),
    [anon_sym_uint144] = ACTIONS(386),
    [anon_sym_uint152] = ACTIONS(386),
    [anon_sym_uint160] = ACTIONS(386),
    [anon_sym_uint168] = ACTIONS(386),
    [anon_sym_uint176] = ACTIONS(386),
    [anon_sym_uint184] = ACTIONS(386),
    [anon_sym_uint192] = ACTIONS(386),
    [anon_sym_uint200] = ACTIONS(386),
    [anon_sym_uint208] = ACTIONS(386),
    [anon_sym_uint216] = ACTIONS(386),
    [anon_sym_uint224] = ACTIONS(386),
    [anon_sym_uint232] = ACTIONS(386),
    [anon_sym_uint240] = ACTIONS(386),
    [anon_sym_uint248] = ACTIONS(386),
    [anon_sym_uint256] = ACTIONS(386),
    [anon_sym_bytes] = ACTIONS(386),
    [anon_sym_bytes1] = ACTIONS(386),
    [anon_sym_bytes2] = ACTIONS(386),
    [anon_sym_bytes3] = ACTIONS(386),
    [anon_sym_bytes4] = ACTIONS(386),
    [anon_sym_bytes5] = ACTIONS(386),
    [anon_sym_bytes6] = ACTIONS(386),
    [anon_sym_bytes7] = ACTIONS(386),
    [anon_sym_bytes8] = ACTIONS(386),
    [anon_sym_bytes9] = ACTIONS(386),
    [anon_sym_bytes10] = ACTIONS(386),
    [anon_sym_bytes11] = ACTIONS(386),
    [anon_sym_bytes12] = ACTIONS(386),
    [anon_sym_bytes13] = ACTIONS(386),
    [anon_sym_bytes14] = ACTIONS(386),
    [anon_sym_bytes15] = ACTIONS(386),
    [anon_sym_bytes16] = ACTIONS(386),
    [anon_sym_bytes17] = ACTIONS(386),
    [anon_sym_bytes18] = ACTIONS(386),
    [anon_sym_bytes19] = ACTIONS(386),
    [anon_sym_bytes20] = ACTIONS(386),
    [anon_sym_bytes21] = ACTIONS(386),
    [anon_sym_bytes22] = ACTIONS(386),
    [anon_sym_bytes23] = ACTIONS(386),
    [anon_sym_bytes24] = ACTIONS(386),
    [anon_sym_bytes25] = ACTIONS(386),
    [anon_sym_bytes26] = ACTIONS(386),
    [anon_sym_bytes27] = ACTIONS(386),
    [anon_sym_bytes28] = ACTIONS(386),
    [anon_sym_bytes29] = ACTIONS(386),
    [anon_sym_bytes30] = ACTIONS(386),
    [anon_sym_bytes31] = ACTIONS(386),
    [anon_sym_bytes32] = ACTIONS(386),
    [anon_sym_fixed] = ACTIONS(386),
    [aux_sym__fixed_token1] = ACTIONS(386),
    [anon_sym_ufixed] = ACTIONS(386),
    [aux_sym__ufixed_token1] = ACTIONS(386),
    [sym__semicolon] = ACTIONS(388),
    [aux_sym__decimal_number_token1] = ACTIONS(386),
    [aux_sym__decimal_number_token2] = ACTIONS(388),
    [aux_sym__hex_number_token1] = ACTIONS(388),
    [anon_sym_hex] = ACTIONS(386),
    [anon_sym_DQUOTE] = ACTIONS(388),
    [anon_sym_SQUOTE] = ACTIONS(388),
    [anon_sym_unicode] = ACTIONS(386),
    [sym_comment] = ACTIONS(3),
  },
  [82] = {
    [sym_identifier] = ACTIONS(390),
    [anon_sym_DASH] = ACTIONS(390),
    [anon_sym_TILDE] = ACTIONS(392),
    [anon_sym_LBRACE] = ACTIONS(392),
    [anon_sym_RBRACE] = ACTIONS(392),
    [anon_sym_type] = ACTIONS(390),
    [anon_sym_LPAREN] = ACTIONS(392),
    [anon_sym_for] = ACTIONS(390),
    [anon_sym_assembly] = ACTIONS(390),
    [anon_sym_break] = ACTIONS(390),
    [anon_sym_continue] = ACTIONS(390),
    [anon_sym_true] = ACTIONS(390),
    [anon_sym_false] = ACTIONS(390),
    [anon_sym_if] = ACTIONS(390),
    [anon_sym_function] = ACTIONS(390),
    [anon_sym_byte] = ACTIONS(390),
    [anon_sym_address] = ACTIONS(390),
    [anon_sym_return] = ACTIONS(390),
    [anon_sym_revert] = ACTIONS(390),
    [sym__unchecked] = ACTIONS(390),
    [anon_sym_var] = ACTIONS(390),
    [anon_sym_else] = ACTIONS(390),
    [anon_sym_while] = ACTIONS(390),
    [anon_sym_do] = ACTIONS(390),
    [anon_sym_try] = ACTIONS(390),
    [anon_sym_catch] = ACTIONS(390),
    [anon_sym_emit] = ACTIONS(390),
    [anon_sym_payable] = ACTIONS(390),
    [anon_sym_new] = ACTIONS(390),
    [anon_sym_LBRACK] = ACTIONS(392),
    [anon_sym_PLUS] = ACTIONS(390),
    [anon_sym_BANG] = ACTIONS(392),
    [anon_sym_delete] = ACTIONS(390),
    [anon_sym_PLUS_PLUS] = ACTIONS(392),
    [anon_sym_DASH_DASH] = ACTIONS(392),
    [anon_sym_mapping] = ACTIONS(390),
    [anon_sym_bool] = ACTIONS(390),
    [anon_sym_string] = ACTIONS(390),
    [anon_sym_int] = ACTIONS(390),
    [anon_sym_int8] = ACTIONS(390),
    [anon_sym_int16] = ACTIONS(390),
    [anon_sym_int24] = ACTIONS(390),
    [anon_sym_int32] = ACTIONS(390),
    [anon_sym_int40] = ACTIONS(390),
    [anon_sym_int48] = ACTIONS(390),
    [anon_sym_int56] = ACTIONS(390),
    [anon_sym_int64] = ACTIONS(390),
    [anon_sym_int72] = ACTIONS(390),
    [anon_sym_int80] = ACTIONS(390),
    [anon_sym_int88] = ACTIONS(390),
    [anon_sym_int96] = ACTIONS(390),
    [anon_sym_int104] = ACTIONS(390),
    [anon_sym_int112] = ACTIONS(390),
    [anon_sym_int120] = ACTIONS(390),
    [anon_sym_int128] = ACTIONS(390),
    [anon_sym_int136] = ACTIONS(390),
    [anon_sym_int144] = ACTIONS(390),
    [anon_sym_int152] = ACTIONS(390),
    [anon_sym_int160] = ACTIONS(390),
    [anon_sym_int168] = ACTIONS(390),
    [anon_sym_int176] = ACTIONS(390),
    [anon_sym_int184] = ACTIONS(390),
    [anon_sym_int192] = ACTIONS(390),
    [anon_sym_int200] = ACTIONS(390),
    [anon_sym_int208] = ACTIONS(390),
    [anon_sym_int216] = ACTIONS(390),
    [anon_sym_int224] = ACTIONS(390),
    [anon_sym_int232] = ACTIONS(390),
    [anon_sym_int240] = ACTIONS(390),
    [anon_sym_int248] = ACTIONS(390),
    [anon_sym_int256] = ACTIONS(390),
    [anon_sym_uint] = ACTIONS(390),
    [anon_sym_uint8] = ACTIONS(390),
    [anon_sym_uint16] = ACTIONS(390),
    [anon_sym_uint24] = ACTIONS(390),
    [anon_sym_uint32] = ACTIONS(390),
    [anon_sym_uint40] = ACTIONS(390),
    [anon_sym_uint48] = ACTIONS(390),
    [anon_sym_uint56] = ACTIONS(390),
    [anon_sym_uint64] = ACTIONS(390),
    [anon_sym_uint72] = ACTIONS(390),
    [anon_sym_uint80] = ACTIONS(390),
    [anon_sym_uint88] = ACTIONS(390),
    [anon_sym_uint96] = ACTIONS(390),
    [anon_sym_uint104] = ACTIONS(390),
    [anon_sym_uint112] = ACTIONS(390),
    [anon_sym_uint120] = ACTIONS(390),
    [anon_sym_uint128] = ACTIONS(390),
    [anon_sym_uint136] = ACTIONS(390),
    [anon_sym_uint144] = ACTIONS(390),
    [anon_sym_uint152] = ACTIONS(390),
    [anon_sym_uint160] = ACTIONS(390),
    [anon_sym_uint168] = ACTIONS(390),
    [anon_sym_uint176] = ACTIONS(390),
    [anon_sym_uint184] = ACTIONS(390),
    [anon_sym_uint192] = ACTIONS(390),
    [anon_sym_uint200] = ACTIONS(390),
    [anon_sym_uint208] = ACTIONS(390),
    [anon_sym_uint216] = ACTIONS(390),
    [anon_sym_uint224] = ACTIONS(390),
    [anon_sym_uint232] = ACTIONS(390),
    [anon_sym_uint240] = ACTIONS(390),
    [anon_sym_uint248] = ACTIONS(390),
    [anon_sym_uint256] = ACTIONS(390),
    [anon_sym_bytes] = ACTIONS(390),
    [anon_sym_bytes1] = ACTIONS(390),
    [anon_sym_bytes2] = ACTIONS(390),
    [anon_sym_bytes3] = ACTIONS(390),
    [anon_sym_bytes4] = ACTIONS(390),
    [anon_sym_bytes5] = ACTIONS(390),
    [anon_sym_bytes6] = ACTIONS(390),
    [anon_sym_bytes7] = ACTIONS(390),
    [anon_sym_bytes8] = ACTIONS(390),
    [anon_sym_bytes9] = ACTIONS(390),
    [anon_sym_bytes10] = ACTIONS(390),
    [anon_sym_bytes11] = ACTIONS(390),
    [anon_sym_bytes12] = ACTIONS(390),
    [anon_sym_bytes13] = ACTIONS(390),
    [anon_sym_bytes14] = ACTIONS(390),
    [anon_sym_bytes15] = ACTIONS(390),
    [anon_sym_bytes16] = ACTIONS(390),
    [anon_sym_bytes17] = ACTIONS(390),
    [anon_sym_bytes18] = ACTIONS(390),
    [anon_sym_bytes19] = ACTIONS(390),
    [anon_sym_bytes20] = ACTIONS(390),
    [anon_sym_bytes21] = ACTIONS(390),
    [anon_sym_bytes22] = ACTIONS(390),
    [anon_sym_bytes23] = ACTIONS(390),
    [anon_sym_bytes24] = ACTIONS(390),
    [anon_sym_bytes25] = ACTIONS(390),
    [anon_sym_bytes26] = ACTIONS(390),
    [anon_sym_bytes27] = ACTIONS(390),
    [anon_sym_bytes28] = ACTIONS(390),
    [anon_sym_bytes29] = ACTIONS(390),
    [anon_sym_bytes30] = ACTIONS(390),
    [anon_sym_bytes31] = ACTIONS(390),
    [anon_sym_bytes32] = ACTIONS(390),
    [anon_sym_fixed] = ACTIONS(390),
    [aux_sym__fixed_token1] = ACTIONS(390),
    [anon_sym_ufixed] = ACTIONS(390),
    [aux_sym__ufixed_token1] = ACTIONS(390),
    [aux_sym__decimal_number_token1] = ACTIONS(390),
    [aux_sym__decimal_number_token2] = ACTIONS(392),
    [aux_sym__hex_number_token1] = ACTIONS(392),
    [anon_sym_hex] = ACTIONS(390),
    [anon_sym_DQUOTE] = ACTIONS(392),
    [anon_sym_SQUOTE] = ACTIONS(392),
    [anon_sym_unicode] = ACTIONS(390),
    [sym_comment] = ACTIONS(3),
  },
  [83] = {
    [sym_identifier] = ACTIONS(394),
    [anon_sym_DASH] = ACTIONS(394),
    [anon_sym_TILDE] = ACTIONS(396),
    [anon_sym_LBRACE] = ACTIONS(396),
    [anon_sym_RBRACE] = ACTIONS(396),
    [anon_sym_type] = ACTIONS(394),
    [anon_sym_LPAREN] = ACTIONS(396),
    [anon_sym_for] = ACTIONS(394),
    [anon_sym_assembly] = ACTIONS(394),
    [anon_sym_break] = ACTIONS(394),
    [anon_sym_continue] = ACTIONS(394),
    [anon_sym_true] = ACTIONS(394),
    [anon_sym_false] = ACTIONS(394),
    [anon_sym_if] = ACTIONS(394),
    [anon_sym_function] = ACTIONS(394),
    [anon_sym_byte] = ACTIONS(394),
    [anon_sym_address] = ACTIONS(394),
    [anon_sym_return] = ACTIONS(394),
    [anon_sym_revert] = ACTIONS(394),
    [sym__unchecked] = ACTIONS(394),
    [anon_sym_var] = ACTIONS(394),
    [anon_sym_else] = ACTIONS(394),
    [anon_sym_while] = ACTIONS(394),
    [anon_sym_do] = ACTIONS(394),
    [anon_sym_try] = ACTIONS(394),
    [anon_sym_emit] = ACTIONS(394),
    [anon_sym_payable] = ACTIONS(394),
    [anon_sym_new] = ACTIONS(394),
    [anon_sym_LBRACK] = ACTIONS(396),
    [anon_sym_PLUS] = ACTIONS(394),
    [anon_sym_BANG] = ACTIONS(396),
    [anon_sym_delete] = ACTIONS(394),
    [anon_sym_PLUS_PLUS] = ACTIONS(396),
    [anon_sym_DASH_DASH] = ACTIONS(396),
    [anon_sym_mapping] = ACTIONS(394),
    [anon_sym_bool] = ACTIONS(394),
    [anon_sym_string] = ACTIONS(394),
    [anon_sym_int] = ACTIONS(394),
    [anon_sym_int8] = ACTIONS(394),
    [anon_sym_int16] = ACTIONS(394),
    [anon_sym_int24] = ACTIONS(394),
    [anon_sym_int32] = ACTIONS(394),
    [anon_sym_int40] = ACTIONS(394),
    [anon_sym_int48] = ACTIONS(394),
    [anon_sym_int56] = ACTIONS(394),
    [anon_sym_int64] = ACTIONS(394),
    [anon_sym_int72] = ACTIONS(394),
    [anon_sym_int80] = ACTIONS(394),
    [anon_sym_int88] = ACTIONS(394),
    [anon_sym_int96] = ACTIONS(394),
    [anon_sym_int104] = ACTIONS(394),
    [anon_sym_int112] = ACTIONS(394),
    [anon_sym_int120] = ACTIONS(394),
    [anon_sym_int128] = ACTIONS(394),
    [anon_sym_int136] = ACTIONS(394),
    [anon_sym_int144] = ACTIONS(394),
    [anon_sym_int152] = ACTIONS(394),
    [anon_sym_int160] = ACTIONS(394),
    [anon_sym_int168] = ACTIONS(394),
    [anon_sym_int176] = ACTIONS(394),
    [anon_sym_int184] = ACTIONS(394),
    [anon_sym_int192] = ACTIONS(394),
    [anon_sym_int200] = ACTIONS(394),
    [anon_sym_int208] = ACTIONS(394),
    [anon_sym_int216] = ACTIONS(394),
    [anon_sym_int224] = ACTIONS(394),
    [anon_sym_int232] = ACTIONS(394),
    [anon_sym_int240] = ACTIONS(394),
    [anon_sym_int248] = ACTIONS(394),
    [anon_sym_int256] = ACTIONS(394),
    [anon_sym_uint] = ACTIONS(394),
    [anon_sym_uint8] = ACTIONS(394),
    [anon_sym_uint16] = ACTIONS(394),
    [anon_sym_uint24] = ACTIONS(394),
    [anon_sym_uint32] = ACTIONS(394),
    [anon_sym_uint40] = ACTIONS(394),
    [anon_sym_uint48] = ACTIONS(394),
    [anon_sym_uint56] = ACTIONS(394),
    [anon_sym_uint64] = ACTIONS(394),
    [anon_sym_uint72] = ACTIONS(394),
    [anon_sym_uint80] = ACTIONS(394),
    [anon_sym_uint88] = ACTIONS(394),
    [anon_sym_uint96] = ACTIONS(394),
    [anon_sym_uint104] = ACTIONS(394),
    [anon_sym_uint112] = ACTIONS(394),
    [anon_sym_uint120] = ACTIONS(394),
    [anon_sym_uint128] = ACTIONS(394),
    [anon_sym_uint136] = ACTIONS(394),
    [anon_sym_uint144] = ACTIONS(394),
    [anon_sym_uint152] = ACTIONS(394),
    [anon_sym_uint160] = ACTIONS(394),
    [anon_sym_uint168] = ACTIONS(394),
    [anon_sym_uint176] = ACTIONS(394),
    [anon_sym_uint184] = ACTIONS(394),
    [anon_sym_uint192] = ACTIONS(394),
    [anon_sym_uint200] = ACTIONS(394),
    [anon_sym_uint208] = ACTIONS(394),
    [anon_sym_uint216] = ACTIONS(394),
    [anon_sym_uint224] = ACTIONS(394),
    [anon_sym_uint232] = ACTIONS(394),
    [anon_sym_uint240] = ACTIONS(394),
    [anon_sym_uint248] = ACTIONS(394),
    [anon_sym_uint256] = ACTIONS(394),
    [anon_sym_bytes] = ACTIONS(394),
    [anon_sym_bytes1] = ACTIONS(394),
    [anon_sym_bytes2] = ACTIONS(394),
    [anon_sym_bytes3] = ACTIONS(394),
    [anon_sym_bytes4] = ACTIONS(394),
    [anon_sym_bytes5] = ACTIONS(394),
    [anon_sym_bytes6] = ACTIONS(394),
    [anon_sym_bytes7] = ACTIONS(394),
    [anon_sym_bytes8] = ACTIONS(394),
    [anon_sym_bytes9] = ACTIONS(394),
    [anon_sym_bytes10] = ACTIONS(394),
    [anon_sym_bytes11] = ACTIONS(394),
    [anon_sym_bytes12] = ACTIONS(394),
    [anon_sym_bytes13] = ACTIONS(394),
    [anon_sym_bytes14] = ACTIONS(394),
    [anon_sym_bytes15] = ACTIONS(394),
    [anon_sym_bytes16] = ACTIONS(394),
    [anon_sym_bytes17] = ACTIONS(394),
    [anon_sym_bytes18] = ACTIONS(394),
    [anon_sym_bytes19] = ACTIONS(394),
    [anon_sym_bytes20] = ACTIONS(394),
    [anon_sym_bytes21] = ACTIONS(394),
    [anon_sym_bytes22] = ACTIONS(394),
    [anon_sym_bytes23] = ACTIONS(394),
    [anon_sym_bytes24] = ACTIONS(394),
    [anon_sym_bytes25] = ACTIONS(394),
    [anon_sym_bytes26] = ACTIONS(394),
    [anon_sym_bytes27] = ACTIONS(394),
    [anon_sym_bytes28] = ACTIONS(394),
    [anon_sym_bytes29] = ACTIONS(394),
    [anon_sym_bytes30] = ACTIONS(394),
    [anon_sym_bytes31] = ACTIONS(394),
    [anon_sym_bytes32] = ACTIONS(394),
    [anon_sym_fixed] = ACTIONS(394),
    [aux_sym__fixed_token1] = ACTIONS(394),
    [anon_sym_ufixed] = ACTIONS(394),
    [aux_sym__ufixed_token1] = ACTIONS(394),
    [aux_sym__decimal_number_token1] = ACTIONS(394),
    [aux_sym__decimal_number_token2] = ACTIONS(396),
    [aux_sym__hex_number_token1] = ACTIONS(396),
    [anon_sym_hex] = ACTIONS(394),
    [anon_sym_DQUOTE] = ACTIONS(396),
    [anon_sym_SQUOTE] = ACTIONS(396),
    [anon_sym_unicode] = ACTIONS(394),
    [sym_comment] = ACTIONS(3),
  },
  [84] = {
    [sym_identifier] = ACTIONS(398),
    [anon_sym_DASH] = ACTIONS(398),
    [anon_sym_TILDE] = ACTIONS(400),
    [anon_sym_LBRACE] = ACTIONS(400),
    [anon_sym_RBRACE] = ACTIONS(400),
    [anon_sym_type] = ACTIONS(398),
    [anon_sym_LPAREN] = ACTIONS(400),
    [anon_sym_for] = ACTIONS(398),
    [anon_sym_assembly] = ACTIONS(398),
    [anon_sym_break] = ACTIONS(398),
    [anon_sym_continue] = ACTIONS(398),
    [anon_sym_true] = ACTIONS(398),
    [anon_sym_false] = ACTIONS(398),
    [anon_sym_if] = ACTIONS(398),
    [anon_sym_function] = ACTIONS(398),
    [anon_sym_byte] = ACTIONS(398),
    [anon_sym_address] = ACTIONS(398),
    [anon_sym_return] = ACTIONS(398),
    [anon_sym_revert] = ACTIONS(398),
    [sym__unchecked] = ACTIONS(398),
    [anon_sym_var] = ACTIONS(398),
    [anon_sym_else] = ACTIONS(398),
    [anon_sym_while] = ACTIONS(398),
    [anon_sym_do] = ACTIONS(398),
    [anon_sym_try] = ACTIONS(398),
    [anon_sym_emit] = ACTIONS(398),
    [anon_sym_payable] = ACTIONS(398),
    [anon_sym_new] = ACTIONS(398),
    [anon_sym_LBRACK] = ACTIONS(400),
    [anon_sym_PLUS] = ACTIONS(398),
    [anon_sym_BANG] = ACTIONS(400),
    [anon_sym_delete] = ACTIONS(398),
    [anon_sym_PLUS_PLUS] = ACTIONS(400),
    [anon_sym_DASH_DASH] = ACTIONS(400),
    [anon_sym_mapping] = ACTIONS(398),
    [anon_sym_bool] = ACTIONS(398),
    [anon_sym_string] = ACTIONS(398),
    [anon_sym_int] = ACTIONS(398),
    [anon_sym_int8] = ACTIONS(398),
    [anon_sym_int16] = ACTIONS(398),
    [anon_sym_int24] = ACTIONS(398),
    [anon_sym_int32] = ACTIONS(398),
    [anon_sym_int40] = ACTIONS(398),
    [anon_sym_int48] = ACTIONS(398),
    [anon_sym_int56] = ACTIONS(398),
    [anon_sym_int64] = ACTIONS(398),
    [anon_sym_int72] = ACTIONS(398),
    [anon_sym_int80] = ACTIONS(398),
    [anon_sym_int88] = ACTIONS(398),
    [anon_sym_int96] = ACTIONS(398),
    [anon_sym_int104] = ACTIONS(398),
    [anon_sym_int112] = ACTIONS(398),
    [anon_sym_int120] = ACTIONS(398),
    [anon_sym_int128] = ACTIONS(398),
    [anon_sym_int136] = ACTIONS(398),
    [anon_sym_int144] = ACTIONS(398),
    [anon_sym_int152] = ACTIONS(398),
    [anon_sym_int160] = ACTIONS(398),
    [anon_sym_int168] = ACTIONS(398),
    [anon_sym_int176] = ACTIONS(398),
    [anon_sym_int184] = ACTIONS(398),
    [anon_sym_int192] = ACTIONS(398),
    [anon_sym_int200] = ACTIONS(398),
    [anon_sym_int208] = ACTIONS(398),
    [anon_sym_int216] = ACTIONS(398),
    [anon_sym_int224] = ACTIONS(398),
    [anon_sym_int232] = ACTIONS(398),
    [anon_sym_int240] = ACTIONS(398),
    [anon_sym_int248] = ACTIONS(398),
    [anon_sym_int256] = ACTIONS(398),
    [anon_sym_uint] = ACTIONS(398),
    [anon_sym_uint8] = ACTIONS(398),
    [anon_sym_uint16] = ACTIONS(398),
    [anon_sym_uint24] = ACTIONS(398),
    [anon_sym_uint32] = ACTIONS(398),
    [anon_sym_uint40] = ACTIONS(398),
    [anon_sym_uint48] = ACTIONS(398),
    [anon_sym_uint56] = ACTIONS(398),
    [anon_sym_uint64] = ACTIONS(398),
    [anon_sym_uint72] = ACTIONS(398),
    [anon_sym_uint80] = ACTIONS(398),
    [anon_sym_uint88] = ACTIONS(398),
    [anon_sym_uint96] = ACTIONS(398),
    [anon_sym_uint104] = ACTIONS(398),
    [anon_sym_uint112] = ACTIONS(398),
    [anon_sym_uint120] = ACTIONS(398),
    [anon_sym_uint128] = ACTIONS(398),
    [anon_sym_uint136] = ACTIONS(398),
    [anon_sym_uint144] = ACTIONS(398),
    [anon_sym_uint152] = ACTIONS(398),
    [anon_sym_uint160] = ACTIONS(398),
    [anon_sym_uint168] = ACTIONS(398),
    [anon_sym_uint176] = ACTIONS(398),
    [anon_sym_uint184] = ACTIONS(398),
    [anon_sym_uint192] = ACTIONS(398),
    [anon_sym_uint200] = ACTIONS(398),
    [anon_sym_uint208] = ACTIONS(398),
    [anon_sym_uint216] = ACTIONS(398),
    [anon_sym_uint224] = ACTIONS(398),
    [anon_sym_uint232] = ACTIONS(398),
    [anon_sym_uint240] = ACTIONS(398),
    [anon_sym_uint248] = ACTIONS(398),
    [anon_sym_uint256] = ACTIONS(398),
    [anon_sym_bytes] = ACTIONS(398),
    [anon_sym_bytes1] = ACTIONS(398),
    [anon_sym_bytes2] = ACTIONS(398),
    [anon_sym_bytes3] = ACTIONS(398),
    [anon_sym_bytes4] = ACTIONS(398),
    [anon_sym_bytes5] = ACTIONS(398),
    [anon_sym_bytes6] = ACTIONS(398),
    [anon_sym_bytes7] = ACTIONS(398),
    [anon_sym_bytes8] = ACTIONS(398),
    [anon_sym_bytes9] = ACTIONS(398),
    [anon_sym_bytes10] = ACTIONS(398),
    [anon_sym_bytes11] = ACTIONS(398),
    [anon_sym_bytes12] = ACTIONS(398),
    [anon_sym_bytes13] = ACTIONS(398),
    [anon_sym_bytes14] = ACTIONS(398),
    [anon_sym_bytes15] = ACTIONS(398),
    [anon_sym_bytes16] = ACTIONS(398),
    [anon_sym_bytes17] = ACTIONS(398),
    [anon_sym_bytes18] = ACTIONS(398),
    [anon_sym_bytes19] = ACTIONS(398),
    [anon_sym_bytes20] = ACTIONS(398),
    [anon_sym_bytes21] = ACTIONS(398),
    [anon_sym_bytes22] = ACTIONS(398),
    [anon_sym_bytes23] = ACTIONS(398),
    [anon_sym_bytes24] = ACTIONS(398),
    [anon_sym_bytes25] = ACTIONS(398),
    [anon_sym_bytes26] = ACTIONS(398),
    [anon_sym_bytes27] = ACTIONS(398),
    [anon_sym_bytes28] = ACTIONS(398),
    [anon_sym_bytes29] = ACTIONS(398),
    [anon_sym_bytes30] = ACTIONS(398),
    [anon_sym_bytes31] = ACTIONS(398),
    [anon_sym_bytes32] = ACTIONS(398),
    [anon_sym_fixed] = ACTIONS(398),
    [aux_sym__fixed_token1] = ACTIONS(398),
    [anon_sym_ufixed] = ACTIONS(398),
    [aux_sym__ufixed_token1] = ACTIONS(398),
    [aux_sym__decimal_number_token1] = ACTIONS(398),
    [aux_sym__decimal_number_token2] = ACTIONS(400),
    [aux_sym__hex_number_token1] = ACTIONS(400),
    [anon_sym_hex] = ACTIONS(398),
    [anon_sym_DQUOTE] = ACTIONS(400),
    [anon_sym_SQUOTE] = ACTIONS(400),
    [anon_sym_unicode] = ACTIONS(398),
    [sym_comment] = ACTIONS(3),
  },
  [85] = {
    [sym_identifier] = ACTIONS(402),
    [anon_sym_DASH] = ACTIONS(402),
    [anon_sym_TILDE] = ACTIONS(404),
    [anon_sym_LBRACE] = ACTIONS(404),
    [anon_sym_RBRACE] = ACTIONS(404),
    [anon_sym_type] = ACTIONS(402),
    [anon_sym_LPAREN] = ACTIONS(404),
    [anon_sym_for] = ACTIONS(402),
    [anon_sym_assembly] = ACTIONS(402),
    [anon_sym_break] = ACTIONS(402),
    [anon_sym_continue] = ACTIONS(402),
    [anon_sym_true] = ACTIONS(402),
    [anon_sym_false] = ACTIONS(402),
    [anon_sym_if] = ACTIONS(402),
    [anon_sym_function] = ACTIONS(402),
    [anon_sym_byte] = ACTIONS(402),
    [anon_sym_address] = ACTIONS(402),
    [anon_sym_return] = ACTIONS(402),
    [anon_sym_revert] = ACTIONS(402),
    [sym__unchecked] = ACTIONS(402),
    [anon_sym_var] = ACTIONS(402),
    [anon_sym_else] = ACTIONS(402),
    [anon_sym_while] = ACTIONS(402),
    [anon_sym_do] = ACTIONS(402),
    [anon_sym_try] = ACTIONS(402),
    [anon_sym_emit] = ACTIONS(402),
    [anon_sym_payable] = ACTIONS(402),
    [anon_sym_new] = ACTIONS(402),
    [anon_sym_LBRACK] = ACTIONS(404),
    [anon_sym_PLUS] = ACTIONS(402),
    [anon_sym_BANG] = ACTIONS(404),
    [anon_sym_delete] = ACTIONS(402),
    [anon_sym_PLUS_PLUS] = ACTIONS(404),
    [anon_sym_DASH_DASH] = ACTIONS(404),
    [anon_sym_mapping] = ACTIONS(402),
    [anon_sym_bool] = ACTIONS(402),
    [anon_sym_string] = ACTIONS(402),
    [anon_sym_int] = ACTIONS(402),
    [anon_sym_int8] = ACTIONS(402),
    [anon_sym_int16] = ACTIONS(402),
    [anon_sym_int24] = ACTIONS(402),
    [anon_sym_int32] = ACTIONS(402),
    [anon_sym_int40] = ACTIONS(402),
    [anon_sym_int48] = ACTIONS(402),
    [anon_sym_int56] = ACTIONS(402),
    [anon_sym_int64] = ACTIONS(402),
    [anon_sym_int72] = ACTIONS(402),
    [anon_sym_int80] = ACTIONS(402),
    [anon_sym_int88] = ACTIONS(402),
    [anon_sym_int96] = ACTIONS(402),
    [anon_sym_int104] = ACTIONS(402),
    [anon_sym_int112] = ACTIONS(402),
    [anon_sym_int120] = ACTIONS(402),
    [anon_sym_int128] = ACTIONS(402),
    [anon_sym_int136] = ACTIONS(402),
    [anon_sym_int144] = ACTIONS(402),
    [anon_sym_int152] = ACTIONS(402),
    [anon_sym_int160] = ACTIONS(402),
    [anon_sym_int168] = ACTIONS(402),
    [anon_sym_int176] = ACTIONS(402),
    [anon_sym_int184] = ACTIONS(402),
    [anon_sym_int192] = ACTIONS(402),
    [anon_sym_int200] = ACTIONS(402),
    [anon_sym_int208] = ACTIONS(402),
    [anon_sym_int216] = ACTIONS(402),
    [anon_sym_int224] = ACTIONS(402),
    [anon_sym_int232] = ACTIONS(402),
    [anon_sym_int240] = ACTIONS(402),
    [anon_sym_int248] = ACTIONS(402),
    [anon_sym_int256] = ACTIONS(402),
    [anon_sym_uint] = ACTIONS(402),
    [anon_sym_uint8] = ACTIONS(402),
    [anon_sym_uint16] = ACTIONS(402),
    [anon_sym_uint24] = ACTIONS(402),
    [anon_sym_uint32] = ACTIONS(402),
    [anon_sym_uint40] = ACTIONS(402),
    [anon_sym_uint48] = ACTIONS(402),
    [anon_sym_uint56] = ACTIONS(402),
    [anon_sym_uint64] = ACTIONS(402),
    [anon_sym_uint72] = ACTIONS(402),
    [anon_sym_uint80] = ACTIONS(402),
    [anon_sym_uint88] = ACTIONS(402),
    [anon_sym_uint96] = ACTIONS(402),
    [anon_sym_uint104] = ACTIONS(402),
    [anon_sym_uint112] = ACTIONS(402),
    [anon_sym_uint120] = ACTIONS(402),
    [anon_sym_uint128] = ACTIONS(402),
    [anon_sym_uint136] = ACTIONS(402),
    [anon_sym_uint144] = ACTIONS(402),
    [anon_sym_uint152] = ACTIONS(402),
    [anon_sym_uint160] = ACTIONS(402),
    [anon_sym_uint168] = ACTIONS(402),
    [anon_sym_uint176] = ACTIONS(402),
    [anon_sym_uint184] = ACTIONS(402),
    [anon_sym_uint192] = ACTIONS(402),
    [anon_sym_uint200] = ACTIONS(402),
    [anon_sym_uint208] = ACTIONS(402),
    [anon_sym_uint216] = ACTIONS(402),
    [anon_sym_uint224] = ACTIONS(402),
    [anon_sym_uint232] = ACTIONS(402),
    [anon_sym_uint240] = ACTIONS(402),
    [anon_sym_uint248] = ACTIONS(402),
    [anon_sym_uint256] = ACTIONS(402),
    [anon_sym_bytes] = ACTIONS(402),
    [anon_sym_bytes1] = ACTIONS(402),
    [anon_sym_bytes2] = ACTIONS(402),
    [anon_sym_bytes3] = ACTIONS(402),
    [anon_sym_bytes4] = ACTIONS(402),
    [anon_sym_bytes5] = ACTIONS(402),
    [anon_sym_bytes6] = ACTIONS(402),
    [anon_sym_bytes7] = ACTIONS(402),
    [anon_sym_bytes8] = ACTIONS(402),
    [anon_sym_bytes9] = ACTIONS(402),
    [anon_sym_bytes10] = ACTIONS(402),
    [anon_sym_bytes11] = ACTIONS(402),
    [anon_sym_bytes12] = ACTIONS(402),
    [anon_sym_bytes13] = ACTIONS(402),
    [anon_sym_bytes14] = ACTIONS(402),
    [anon_sym_bytes15] = ACTIONS(402),
    [anon_sym_bytes16] = ACTIONS(402),
    [anon_sym_bytes17] = ACTIONS(402),
    [anon_sym_bytes18] = ACTIONS(402),
    [anon_sym_bytes19] = ACTIONS(402),
    [anon_sym_bytes20] = ACTIONS(402),
    [anon_sym_bytes21] = ACTIONS(402),
    [anon_sym_bytes22] = ACTIONS(402),
    [anon_sym_bytes23] = ACTIONS(402),
    [anon_sym_bytes24] = ACTIONS(402),
    [anon_sym_bytes25] = ACTIONS(402),
    [anon_sym_bytes26] = ACTIONS(402),
    [anon_sym_bytes27] = ACTIONS(402),
    [anon_sym_bytes28] = ACTIONS(402),
    [anon_sym_bytes29] = ACTIONS(402),
    [anon_sym_bytes30] = ACTIONS(402),
    [anon_sym_bytes31] = ACTIONS(402),
    [anon_sym_bytes32] = ACTIONS(402),
    [anon_sym_fixed] = ACTIONS(402),
    [aux_sym__fixed_token1] = ACTIONS(402),
    [anon_sym_ufixed] = ACTIONS(402),
    [aux_sym__ufixed_token1] = ACTIONS(402),
    [aux_sym__decimal_number_token1] = ACTIONS(402),
    [aux_sym__decimal_number_token2] = ACTIONS(404),
    [aux_sym__hex_number_token1] = ACTIONS(404),
    [anon_sym_hex] = ACTIONS(402),
    [anon_sym_DQUOTE] = ACTIONS(404),
    [anon_sym_SQUOTE] = ACTIONS(404),
    [anon_sym_unicode] = ACTIONS(402),
    [sym_comment] = ACTIONS(3),
  },
  [86] = {
    [sym_identifier] = ACTIONS(406),
    [anon_sym_DASH] = ACTIONS(406),
    [anon_sym_TILDE] = ACTIONS(408),
    [anon_sym_LBRACE] = ACTIONS(408),
    [anon_sym_RBRACE] = ACTIONS(408),
    [anon_sym_type] = ACTIONS(406),
    [anon_sym_LPAREN] = ACTIONS(408),
    [anon_sym_for] = ACTIONS(406),
    [anon_sym_assembly] = ACTIONS(406),
    [anon_sym_break] = ACTIONS(406),
    [anon_sym_continue] = ACTIONS(406),
    [anon_sym_true] = ACTIONS(406),
    [anon_sym_false] = ACTIONS(406),
    [anon_sym_if] = ACTIONS(406),
    [anon_sym_function] = ACTIONS(406),
    [anon_sym_byte] = ACTIONS(406),
    [anon_sym_address] = ACTIONS(406),
    [anon_sym_return] = ACTIONS(406),
    [anon_sym_revert] = ACTIONS(406),
    [sym__unchecked] = ACTIONS(406),
    [anon_sym_var] = ACTIONS(406),
    [anon_sym_else] = ACTIONS(406),
    [anon_sym_while] = ACTIONS(406),
    [anon_sym_do] = ACTIONS(406),
    [anon_sym_try] = ACTIONS(406),
    [anon_sym_emit] = ACTIONS(406),
    [anon_sym_payable] = ACTIONS(406),
    [anon_sym_new] = ACTIONS(406),
    [anon_sym_LBRACK] = ACTIONS(408),
    [anon_sym_PLUS] = ACTIONS(406),
    [anon_sym_BANG] = ACTIONS(408),
    [anon_sym_delete] = ACTIONS(406),
    [anon_sym_PLUS_PLUS] = ACTIONS(408),
    [anon_sym_DASH_DASH] = ACTIONS(408),
    [anon_sym_mapping] = ACTIONS(406),
    [anon_sym_bool] = ACTIONS(406),
    [anon_sym_string] = ACTIONS(406),
    [anon_sym_int] = ACTIONS(406),
    [anon_sym_int8] = ACTIONS(406),
    [anon_sym_int16] = ACTIONS(406),
    [anon_sym_int24] = ACTIONS(406),
    [anon_sym_int32] = ACTIONS(406),
    [anon_sym_int40] = ACTIONS(406),
    [anon_sym_int48] = ACTIONS(406),
    [anon_sym_int56] = ACTIONS(406),
    [anon_sym_int64] = ACTIONS(406),
    [anon_sym_int72] = ACTIONS(406),
    [anon_sym_int80] = ACTIONS(406),
    [anon_sym_int88] = ACTIONS(406),
    [anon_sym_int96] = ACTIONS(406),
    [anon_sym_int104] = ACTIONS(406),
    [anon_sym_int112] = ACTIONS(406),
    [anon_sym_int120] = ACTIONS(406),
    [anon_sym_int128] = ACTIONS(406),
    [anon_sym_int136] = ACTIONS(406),
    [anon_sym_int144] = ACTIONS(406),
    [anon_sym_int152] = ACTIONS(406),
    [anon_sym_int160] = ACTIONS(406),
    [anon_sym_int168] = ACTIONS(406),
    [anon_sym_int176] = ACTIONS(406),
    [anon_sym_int184] = ACTIONS(406),
    [anon_sym_int192] = ACTIONS(406),
    [anon_sym_int200] = ACTIONS(406),
    [anon_sym_int208] = ACTIONS(406),
    [anon_sym_int216] = ACTIONS(406),
    [anon_sym_int224] = ACTIONS(406),
    [anon_sym_int232] = ACTIONS(406),
    [anon_sym_int240] = ACTIONS(406),
    [anon_sym_int248] = ACTIONS(406),
    [anon_sym_int256] = ACTIONS(406),
    [anon_sym_uint] = ACTIONS(406),
    [anon_sym_uint8] = ACTIONS(406),
    [anon_sym_uint16] = ACTIONS(406),
    [anon_sym_uint24] = ACTIONS(406),
    [anon_sym_uint32] = ACTIONS(406),
    [anon_sym_uint40] = ACTIONS(406),
    [anon_sym_uint48] = ACTIONS(406),
    [anon_sym_uint56] = ACTIONS(406),
    [anon_sym_uint64] = ACTIONS(406),
    [anon_sym_uint72] = ACTIONS(406),
    [anon_sym_uint80] = ACTIONS(406),
    [anon_sym_uint88] = ACTIONS(406),
    [anon_sym_uint96] = ACTIONS(406),
    [anon_sym_uint104] = ACTIONS(406),
    [anon_sym_uint112] = ACTIONS(406),
    [anon_sym_uint120] = ACTIONS(406),
    [anon_sym_uint128] = ACTIONS(406),
    [anon_sym_uint136] = ACTIONS(406),
    [anon_sym_uint144] = ACTIONS(406),
    [anon_sym_uint152] = ACTIONS(406),
    [anon_sym_uint160] = ACTIONS(406),
    [anon_sym_uint168] = ACTIONS(406),
    [anon_sym_uint176] = ACTIONS(406),
    [anon_sym_uint184] = ACTIONS(406),
    [anon_sym_uint192] = ACTIONS(406),
    [anon_sym_uint200] = ACTIONS(406),
    [anon_sym_uint208] = ACTIONS(406),
    [anon_sym_uint216] = ACTIONS(406),
    [anon_sym_uint224] = ACTIONS(406),
    [anon_sym_uint232] = ACTIONS(406),
    [anon_sym_uint240] = ACTIONS(406),
    [anon_sym_uint248] = ACTIONS(406),
    [anon_sym_uint256] = ACTIONS(406),
    [anon_sym_bytes] = ACTIONS(406),
    [anon_sym_bytes1] = ACTIONS(406),
    [anon_sym_bytes2] = ACTIONS(406),
    [anon_sym_bytes3] = ACTIONS(406),
    [anon_sym_bytes4] = ACTIONS(406),
    [anon_sym_bytes5] = ACTIONS(406),
    [anon_sym_bytes6] = ACTIONS(406),
    [anon_sym_bytes7] = ACTIONS(406),
    [anon_sym_bytes8] = ACTIONS(406),
    [anon_sym_bytes9] = ACTIONS(406),
    [anon_sym_bytes10] = ACTIONS(406),
    [anon_sym_bytes11] = ACTIONS(406),
    [anon_sym_bytes12] = ACTIONS(406),
    [anon_sym_bytes13] = ACTIONS(406),
    [anon_sym_bytes14] = ACTIONS(406),
    [anon_sym_bytes15] = ACTIONS(406),
    [anon_sym_bytes16] = ACTIONS(406),
    [anon_sym_bytes17] = ACTIONS(406),
    [anon_sym_bytes18] = ACTIONS(406),
    [anon_sym_bytes19] = ACTIONS(406),
    [anon_sym_bytes20] = ACTIONS(406),
    [anon_sym_bytes21] = ACTIONS(406),
    [anon_sym_bytes22] = ACTIONS(406),
    [anon_sym_bytes23] = ACTIONS(406),
    [anon_sym_bytes24] = ACTIONS(406),
    [anon_sym_bytes25] = ACTIONS(406),
    [anon_sym_bytes26] = ACTIONS(406),
    [anon_sym_bytes27] = ACTIONS(406),
    [anon_sym_bytes28] = ACTIONS(406),
    [anon_sym_bytes29] = ACTIONS(406),
    [anon_sym_bytes30] = ACTIONS(406),
    [anon_sym_bytes31] = ACTIONS(406),
    [anon_sym_bytes32] = ACTIONS(406),
    [anon_sym_fixed] = ACTIONS(406),
    [aux_sym__fixed_token1] = ACTIONS(406),
    [anon_sym_ufixed] = ACTIONS(406),
    [aux_sym__ufixed_token1] = ACTIONS(406),
    [aux_sym__decimal_number_token1] = ACTIONS(406),
    [aux_sym__decimal_number_token2] = ACTIONS(408),
    [aux_sym__hex_number_token1] = ACTIONS(408),
    [anon_sym_hex] = ACTIONS(406),
    [anon_sym_DQUOTE] = ACTIONS(408),
    [anon_sym_SQUOTE] = ACTIONS(408),
    [anon_sym_unicode] = ACTIONS(406),
    [sym_comment] = ACTIONS(3),
  },
  [87] = {
    [sym_user_defined_type_definition] = STATE(91),
    [sym_error_declaration] = STATE(91),
    [sym__contract_member] = STATE(91),
    [sym_struct_declaration] = STATE(91),
    [sym_enum_declaration] = STATE(91),
    [sym_event_definition] = STATE(91),
    [sym_using_directive] = STATE(91),
    [sym_state_variable_declaration] = STATE(91),
    [sym_modifier_definition] = STATE(91),
    [sym_constructor_definition] = STATE(91),
    [sym_fallback_receive_definition] = STATE(91),
    [sym_function_definition] = STATE(91),
    [sym_type_name] = STATE(448),
    [sym__array_type] = STATE(321),
    [sym__function_type] = STATE(323),
    [sym_user_defined_type] = STATE(321),
    [sym__identifier_path] = STATE(308),
    [sym__mapping] = STATE(317),
    [sym_primitive_type] = STATE(321),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [aux_sym_contract_body_repeat1] = STATE(91),
    [sym_identifier] = ACTIONS(7),
    [anon_sym_RBRACE] = ACTIONS(410),
    [anon_sym_type] = ACTIONS(412),
    [anon_sym_error] = ACTIONS(414),
    [anon_sym_struct] = ACTIONS(416),
    [anon_sym_enum] = ACTIONS(418),
    [anon_sym_event] = ACTIONS(420),
    [anon_sym_using] = ACTIONS(422),
    [anon_sym_function] = ACTIONS(424),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_modifier] = ACTIONS(426),
    [anon_sym_constructor] = ACTIONS(428),
    [anon_sym_fallback] = ACTIONS(430),
    [anon_sym_receive] = ACTIONS(430),
    [anon_sym_mapping] = ACTIONS(35),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [sym_comment] = ACTIONS(3),
  },
  [88] = {
    [sym_identifier] = ACTIONS(432),
    [anon_sym_DASH] = ACTIONS(432),
    [anon_sym_TILDE] = ACTIONS(434),
    [anon_sym_LBRACE] = ACTIONS(434),
    [anon_sym_RBRACE] = ACTIONS(434),
    [anon_sym_type] = ACTIONS(432),
    [anon_sym_LPAREN] = ACTIONS(434),
    [anon_sym_for] = ACTIONS(432),
    [anon_sym_assembly] = ACTIONS(432),
    [anon_sym_break] = ACTIONS(432),
    [anon_sym_continue] = ACTIONS(432),
    [anon_sym_true] = ACTIONS(432),
    [anon_sym_false] = ACTIONS(432),
    [anon_sym_if] = ACTIONS(432),
    [anon_sym_function] = ACTIONS(432),
    [anon_sym_byte] = ACTIONS(432),
    [anon_sym_address] = ACTIONS(432),
    [anon_sym_return] = ACTIONS(432),
    [anon_sym_revert] = ACTIONS(432),
    [sym__unchecked] = ACTIONS(432),
    [anon_sym_var] = ACTIONS(432),
    [anon_sym_else] = ACTIONS(432),
    [anon_sym_while] = ACTIONS(432),
    [anon_sym_do] = ACTIONS(432),
    [anon_sym_try] = ACTIONS(432),
    [anon_sym_emit] = ACTIONS(432),
    [anon_sym_payable] = ACTIONS(432),
    [anon_sym_new] = ACTIONS(432),
    [anon_sym_LBRACK] = ACTIONS(434),
    [anon_sym_PLUS] = ACTIONS(432),
    [anon_sym_BANG] = ACTIONS(434),
    [anon_sym_delete] = ACTIONS(432),
    [anon_sym_PLUS_PLUS] = ACTIONS(434),
    [anon_sym_DASH_DASH] = ACTIONS(434),
    [anon_sym_mapping] = ACTIONS(432),
    [anon_sym_bool] = ACTIONS(432),
    [anon_sym_string] = ACTIONS(432),
    [anon_sym_int] = ACTIONS(432),
    [anon_sym_int8] = ACTIONS(432),
    [anon_sym_int16] = ACTIONS(432),
    [anon_sym_int24] = ACTIONS(432),
    [anon_sym_int32] = ACTIONS(432),
    [anon_sym_int40] = ACTIONS(432),
    [anon_sym_int48] = ACTIONS(432),
    [anon_sym_int56] = ACTIONS(432),
    [anon_sym_int64] = ACTIONS(432),
    [anon_sym_int72] = ACTIONS(432),
    [anon_sym_int80] = ACTIONS(432),
    [anon_sym_int88] = ACTIONS(432),
    [anon_sym_int96] = ACTIONS(432),
    [anon_sym_int104] = ACTIONS(432),
    [anon_sym_int112] = ACTIONS(432),
    [anon_sym_int120] = ACTIONS(432),
    [anon_sym_int128] = ACTIONS(432),
    [anon_sym_int136] = ACTIONS(432),
    [anon_sym_int144] = ACTIONS(432),
    [anon_sym_int152] = ACTIONS(432),
    [anon_sym_int160] = ACTIONS(432),
    [anon_sym_int168] = ACTIONS(432),
    [anon_sym_int176] = ACTIONS(432),
    [anon_sym_int184] = ACTIONS(432),
    [anon_sym_int192] = ACTIONS(432),
    [anon_sym_int200] = ACTIONS(432),
    [anon_sym_int208] = ACTIONS(432),
    [anon_sym_int216] = ACTIONS(432),
    [anon_sym_int224] = ACTIONS(432),
    [anon_sym_int232] = ACTIONS(432),
    [anon_sym_int240] = ACTIONS(432),
    [anon_sym_int248] = ACTIONS(432),
    [anon_sym_int256] = ACTIONS(432),
    [anon_sym_uint] = ACTIONS(432),
    [anon_sym_uint8] = ACTIONS(432),
    [anon_sym_uint16] = ACTIONS(432),
    [anon_sym_uint24] = ACTIONS(432),
    [anon_sym_uint32] = ACTIONS(432),
    [anon_sym_uint40] = ACTIONS(432),
    [anon_sym_uint48] = ACTIONS(432),
    [anon_sym_uint56] = ACTIONS(432),
    [anon_sym_uint64] = ACTIONS(432),
    [anon_sym_uint72] = ACTIONS(432),
    [anon_sym_uint80] = ACTIONS(432),
    [anon_sym_uint88] = ACTIONS(432),
    [anon_sym_uint96] = ACTIONS(432),
    [anon_sym_uint104] = ACTIONS(432),
    [anon_sym_uint112] = ACTIONS(432),
    [anon_sym_uint120] = ACTIONS(432),
    [anon_sym_uint128] = ACTIONS(432),
    [anon_sym_uint136] = ACTIONS(432),
    [anon_sym_uint144] = ACTIONS(432),
    [anon_sym_uint152] = ACTIONS(432),
    [anon_sym_uint160] = ACTIONS(432),
    [anon_sym_uint168] = ACTIONS(432),
    [anon_sym_uint176] = ACTIONS(432),
    [anon_sym_uint184] = ACTIONS(432),
    [anon_sym_uint192] = ACTIONS(432),
    [anon_sym_uint200] = ACTIONS(432),
    [anon_sym_uint208] = ACTIONS(432),
    [anon_sym_uint216] = ACTIONS(432),
    [anon_sym_uint224] = ACTIONS(432),
    [anon_sym_uint232] = ACTIONS(432),
    [anon_sym_uint240] = ACTIONS(432),
    [anon_sym_uint248] = ACTIONS(432),
    [anon_sym_uint256] = ACTIONS(432),
    [anon_sym_bytes] = ACTIONS(432),
    [anon_sym_bytes1] = ACTIONS(432),
    [anon_sym_bytes2] = ACTIONS(432),
    [anon_sym_bytes3] = ACTIONS(432),
    [anon_sym_bytes4] = ACTIONS(432),
    [anon_sym_bytes5] = ACTIONS(432),
    [anon_sym_bytes6] = ACTIONS(432),
    [anon_sym_bytes7] = ACTIONS(432),
    [anon_sym_bytes8] = ACTIONS(432),
    [anon_sym_bytes9] = ACTIONS(432),
    [anon_sym_bytes10] = ACTIONS(432),
    [anon_sym_bytes11] = ACTIONS(432),
    [anon_sym_bytes12] = ACTIONS(432),
    [anon_sym_bytes13] = ACTIONS(432),
    [anon_sym_bytes14] = ACTIONS(432),
    [anon_sym_bytes15] = ACTIONS(432),
    [anon_sym_bytes16] = ACTIONS(432),
    [anon_sym_bytes17] = ACTIONS(432),
    [anon_sym_bytes18] = ACTIONS(432),
    [anon_sym_bytes19] = ACTIONS(432),
    [anon_sym_bytes20] = ACTIONS(432),
    [anon_sym_bytes21] = ACTIONS(432),
    [anon_sym_bytes22] = ACTIONS(432),
    [anon_sym_bytes23] = ACTIONS(432),
    [anon_sym_bytes24] = ACTIONS(432),
    [anon_sym_bytes25] = ACTIONS(432),
    [anon_sym_bytes26] = ACTIONS(432),
    [anon_sym_bytes27] = ACTIONS(432),
    [anon_sym_bytes28] = ACTIONS(432),
    [anon_sym_bytes29] = ACTIONS(432),
    [anon_sym_bytes30] = ACTIONS(432),
    [anon_sym_bytes31] = ACTIONS(432),
    [anon_sym_bytes32] = ACTIONS(432),
    [anon_sym_fixed] = ACTIONS(432),
    [aux_sym__fixed_token1] = ACTIONS(432),
    [anon_sym_ufixed] = ACTIONS(432),
    [aux_sym__ufixed_token1] = ACTIONS(432),
    [aux_sym__decimal_number_token1] = ACTIONS(432),
    [aux_sym__decimal_number_token2] = ACTIONS(434),
    [aux_sym__hex_number_token1] = ACTIONS(434),
    [anon_sym_hex] = ACTIONS(432),
    [anon_sym_DQUOTE] = ACTIONS(434),
    [anon_sym_SQUOTE] = ACTIONS(434),
    [anon_sym_unicode] = ACTIONS(432),
    [sym_comment] = ACTIONS(3),
  },
  [89] = {
    [sym_identifier] = ACTIONS(436),
    [anon_sym_DASH] = ACTIONS(436),
    [anon_sym_TILDE] = ACTIONS(438),
    [anon_sym_LBRACE] = ACTIONS(438),
    [anon_sym_RBRACE] = ACTIONS(438),
    [anon_sym_type] = ACTIONS(436),
    [anon_sym_LPAREN] = ACTIONS(438),
    [anon_sym_for] = ACTIONS(436),
    [anon_sym_assembly] = ACTIONS(436),
    [anon_sym_break] = ACTIONS(436),
    [anon_sym_continue] = ACTIONS(436),
    [anon_sym_true] = ACTIONS(436),
    [anon_sym_false] = ACTIONS(436),
    [anon_sym_if] = ACTIONS(436),
    [anon_sym_function] = ACTIONS(436),
    [anon_sym_byte] = ACTIONS(436),
    [anon_sym_address] = ACTIONS(436),
    [anon_sym_return] = ACTIONS(436),
    [anon_sym_revert] = ACTIONS(436),
    [sym__unchecked] = ACTIONS(436),
    [anon_sym_var] = ACTIONS(436),
    [anon_sym_else] = ACTIONS(436),
    [anon_sym_while] = ACTIONS(436),
    [anon_sym_do] = ACTIONS(436),
    [anon_sym_try] = ACTIONS(436),
    [anon_sym_emit] = ACTIONS(436),
    [anon_sym_payable] = ACTIONS(436),
    [anon_sym_new] = ACTIONS(436),
    [anon_sym_LBRACK] = ACTIONS(438),
    [anon_sym_PLUS] = ACTIONS(436),
    [anon_sym_BANG] = ACTIONS(438),
    [anon_sym_delete] = ACTIONS(436),
    [anon_sym_PLUS_PLUS] = ACTIONS(438),
    [anon_sym_DASH_DASH] = ACTIONS(438),
    [anon_sym_mapping] = ACTIONS(436),
    [anon_sym_bool] = ACTIONS(436),
    [anon_sym_string] = ACTIONS(436),
    [anon_sym_int] = ACTIONS(436),
    [anon_sym_int8] = ACTIONS(436),
    [anon_sym_int16] = ACTIONS(436),
    [anon_sym_int24] = ACTIONS(436),
    [anon_sym_int32] = ACTIONS(436),
    [anon_sym_int40] = ACTIONS(436),
    [anon_sym_int48] = ACTIONS(436),
    [anon_sym_int56] = ACTIONS(436),
    [anon_sym_int64] = ACTIONS(436),
    [anon_sym_int72] = ACTIONS(436),
    [anon_sym_int80] = ACTIONS(436),
    [anon_sym_int88] = ACTIONS(436),
    [anon_sym_int96] = ACTIONS(436),
    [anon_sym_int104] = ACTIONS(436),
    [anon_sym_int112] = ACTIONS(436),
    [anon_sym_int120] = ACTIONS(436),
    [anon_sym_int128] = ACTIONS(436),
    [anon_sym_int136] = ACTIONS(436),
    [anon_sym_int144] = ACTIONS(436),
    [anon_sym_int152] = ACTIONS(436),
    [anon_sym_int160] = ACTIONS(436),
    [anon_sym_int168] = ACTIONS(436),
    [anon_sym_int176] = ACTIONS(436),
    [anon_sym_int184] = ACTIONS(436),
    [anon_sym_int192] = ACTIONS(436),
    [anon_sym_int200] = ACTIONS(436),
    [anon_sym_int208] = ACTIONS(436),
    [anon_sym_int216] = ACTIONS(436),
    [anon_sym_int224] = ACTIONS(436),
    [anon_sym_int232] = ACTIONS(436),
    [anon_sym_int240] = ACTIONS(436),
    [anon_sym_int248] = ACTIONS(436),
    [anon_sym_int256] = ACTIONS(436),
    [anon_sym_uint] = ACTIONS(436),
    [anon_sym_uint8] = ACTIONS(436),
    [anon_sym_uint16] = ACTIONS(436),
    [anon_sym_uint24] = ACTIONS(436),
    [anon_sym_uint32] = ACTIONS(436),
    [anon_sym_uint40] = ACTIONS(436),
    [anon_sym_uint48] = ACTIONS(436),
    [anon_sym_uint56] = ACTIONS(436),
    [anon_sym_uint64] = ACTIONS(436),
    [anon_sym_uint72] = ACTIONS(436),
    [anon_sym_uint80] = ACTIONS(436),
    [anon_sym_uint88] = ACTIONS(436),
    [anon_sym_uint96] = ACTIONS(436),
    [anon_sym_uint104] = ACTIONS(436),
    [anon_sym_uint112] = ACTIONS(436),
    [anon_sym_uint120] = ACTIONS(436),
    [anon_sym_uint128] = ACTIONS(436),
    [anon_sym_uint136] = ACTIONS(436),
    [anon_sym_uint144] = ACTIONS(436),
    [anon_sym_uint152] = ACTIONS(436),
    [anon_sym_uint160] = ACTIONS(436),
    [anon_sym_uint168] = ACTIONS(436),
    [anon_sym_uint176] = ACTIONS(436),
    [anon_sym_uint184] = ACTIONS(436),
    [anon_sym_uint192] = ACTIONS(436),
    [anon_sym_uint200] = ACTIONS(436),
    [anon_sym_uint208] = ACTIONS(436),
    [anon_sym_uint216] = ACTIONS(436),
    [anon_sym_uint224] = ACTIONS(436),
    [anon_sym_uint232] = ACTIONS(436),
    [anon_sym_uint240] = ACTIONS(436),
    [anon_sym_uint248] = ACTIONS(436),
    [anon_sym_uint256] = ACTIONS(436),
    [anon_sym_bytes] = ACTIONS(436),
    [anon_sym_bytes1] = ACTIONS(436),
    [anon_sym_bytes2] = ACTIONS(436),
    [anon_sym_bytes3] = ACTIONS(436),
    [anon_sym_bytes4] = ACTIONS(436),
    [anon_sym_bytes5] = ACTIONS(436),
    [anon_sym_bytes6] = ACTIONS(436),
    [anon_sym_bytes7] = ACTIONS(436),
    [anon_sym_bytes8] = ACTIONS(436),
    [anon_sym_bytes9] = ACTIONS(436),
    [anon_sym_bytes10] = ACTIONS(436),
    [anon_sym_bytes11] = ACTIONS(436),
    [anon_sym_bytes12] = ACTIONS(436),
    [anon_sym_bytes13] = ACTIONS(436),
    [anon_sym_bytes14] = ACTIONS(436),
    [anon_sym_bytes15] = ACTIONS(436),
    [anon_sym_bytes16] = ACTIONS(436),
    [anon_sym_bytes17] = ACTIONS(436),
    [anon_sym_bytes18] = ACTIONS(436),
    [anon_sym_bytes19] = ACTIONS(436),
    [anon_sym_bytes20] = ACTIONS(436),
    [anon_sym_bytes21] = ACTIONS(436),
    [anon_sym_bytes22] = ACTIONS(436),
    [anon_sym_bytes23] = ACTIONS(436),
    [anon_sym_bytes24] = ACTIONS(436),
    [anon_sym_bytes25] = ACTIONS(436),
    [anon_sym_bytes26] = ACTIONS(436),
    [anon_sym_bytes27] = ACTIONS(436),
    [anon_sym_bytes28] = ACTIONS(436),
    [anon_sym_bytes29] = ACTIONS(436),
    [anon_sym_bytes30] = ACTIONS(436),
    [anon_sym_bytes31] = ACTIONS(436),
    [anon_sym_bytes32] = ACTIONS(436),
    [anon_sym_fixed] = ACTIONS(436),
    [aux_sym__fixed_token1] = ACTIONS(436),
    [anon_sym_ufixed] = ACTIONS(436),
    [aux_sym__ufixed_token1] = ACTIONS(436),
    [aux_sym__decimal_number_token1] = ACTIONS(436),
    [aux_sym__decimal_number_token2] = ACTIONS(438),
    [aux_sym__hex_number_token1] = ACTIONS(438),
    [anon_sym_hex] = ACTIONS(436),
    [anon_sym_DQUOTE] = ACTIONS(438),
    [anon_sym_SQUOTE] = ACTIONS(438),
    [anon_sym_unicode] = ACTIONS(436),
    [sym_comment] = ACTIONS(3),
  },
  [90] = {
    [sym_user_defined_type_definition] = STATE(87),
    [sym_error_declaration] = STATE(87),
    [sym__contract_member] = STATE(87),
    [sym_struct_declaration] = STATE(87),
    [sym_enum_declaration] = STATE(87),
    [sym_event_definition] = STATE(87),
    [sym_using_directive] = STATE(87),
    [sym_state_variable_declaration] = STATE(87),
    [sym_modifier_definition] = STATE(87),
    [sym_constructor_definition] = STATE(87),
    [sym_fallback_receive_definition] = STATE(87),
    [sym_function_definition] = STATE(87),
    [sym_type_name] = STATE(448),
    [sym__array_type] = STATE(321),
    [sym__function_type] = STATE(323),
    [sym_user_defined_type] = STATE(321),
    [sym__identifier_path] = STATE(308),
    [sym__mapping] = STATE(317),
    [sym_primitive_type] = STATE(321),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [aux_sym_contract_body_repeat1] = STATE(87),
    [sym_identifier] = ACTIONS(7),
    [anon_sym_RBRACE] = ACTIONS(440),
    [anon_sym_type] = ACTIONS(412),
    [anon_sym_error] = ACTIONS(414),
    [anon_sym_struct] = ACTIONS(416),
    [anon_sym_enum] = ACTIONS(418),
    [anon_sym_event] = ACTIONS(420),
    [anon_sym_using] = ACTIONS(422),
    [anon_sym_function] = ACTIONS(424),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_modifier] = ACTIONS(426),
    [anon_sym_constructor] = ACTIONS(428),
    [anon_sym_fallback] = ACTIONS(430),
    [anon_sym_receive] = ACTIONS(430),
    [anon_sym_mapping] = ACTIONS(35),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [sym_comment] = ACTIONS(3),
  },
  [91] = {
    [sym_user_defined_type_definition] = STATE(91),
    [sym_error_declaration] = STATE(91),
    [sym__contract_member] = STATE(91),
    [sym_struct_declaration] = STATE(91),
    [sym_enum_declaration] = STATE(91),
    [sym_event_definition] = STATE(91),
    [sym_using_directive] = STATE(91),
    [sym_state_variable_declaration] = STATE(91),
    [sym_modifier_definition] = STATE(91),
    [sym_constructor_definition] = STATE(91),
    [sym_fallback_receive_definition] = STATE(91),
    [sym_function_definition] = STATE(91),
    [sym_type_name] = STATE(448),
    [sym__array_type] = STATE(321),
    [sym__function_type] = STATE(323),
    [sym_user_defined_type] = STATE(321),
    [sym__identifier_path] = STATE(308),
    [sym__mapping] = STATE(317),
    [sym_primitive_type] = STATE(321),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [aux_sym_contract_body_repeat1] = STATE(91),
    [sym_identifier] = ACTIONS(442),
    [anon_sym_RBRACE] = ACTIONS(445),
    [anon_sym_type] = ACTIONS(447),
    [anon_sym_error] = ACTIONS(450),
    [anon_sym_struct] = ACTIONS(453),
    [anon_sym_enum] = ACTIONS(456),
    [anon_sym_event] = ACTIONS(459),
    [anon_sym_using] = ACTIONS(462),
    [anon_sym_function] = ACTIONS(465),
    [anon_sym_byte] = ACTIONS(468),
    [anon_sym_address] = ACTIONS(471),
    [anon_sym_var] = ACTIONS(468),
    [anon_sym_modifier] = ACTIONS(474),
    [anon_sym_constructor] = ACTIONS(477),
    [anon_sym_fallback] = ACTIONS(480),
    [anon_sym_receive] = ACTIONS(480),
    [anon_sym_mapping] = ACTIONS(483),
    [anon_sym_bool] = ACTIONS(468),
    [anon_sym_string] = ACTIONS(468),
    [anon_sym_int] = ACTIONS(468),
    [anon_sym_int8] = ACTIONS(468),
    [anon_sym_int16] = ACTIONS(468),
    [anon_sym_int24] = ACTIONS(468),
    [anon_sym_int32] = ACTIONS(468),
    [anon_sym_int40] = ACTIONS(468),
    [anon_sym_int48] = ACTIONS(468),
    [anon_sym_int56] = ACTIONS(468),
    [anon_sym_int64] = ACTIONS(468),
    [anon_sym_int72] = ACTIONS(468),
    [anon_sym_int80] = ACTIONS(468),
    [anon_sym_int88] = ACTIONS(468),
    [anon_sym_int96] = ACTIONS(468),
    [anon_sym_int104] = ACTIONS(468),
    [anon_sym_int112] = ACTIONS(468),
    [anon_sym_int120] = ACTIONS(468),
    [anon_sym_int128] = ACTIONS(468),
    [anon_sym_int136] = ACTIONS(468),
    [anon_sym_int144] = ACTIONS(468),
    [anon_sym_int152] = ACTIONS(468),
    [anon_sym_int160] = ACTIONS(468),
    [anon_sym_int168] = ACTIONS(468),
    [anon_sym_int176] = ACTIONS(468),
    [anon_sym_int184] = ACTIONS(468),
    [anon_sym_int192] = ACTIONS(468),
    [anon_sym_int200] = ACTIONS(468),
    [anon_sym_int208] = ACTIONS(468),
    [anon_sym_int216] = ACTIONS(468),
    [anon_sym_int224] = ACTIONS(468),
    [anon_sym_int232] = ACTIONS(468),
    [anon_sym_int240] = ACTIONS(468),
    [anon_sym_int248] = ACTIONS(468),
    [anon_sym_int256] = ACTIONS(468),
    [anon_sym_uint] = ACTIONS(468),
    [anon_sym_uint8] = ACTIONS(468),
    [anon_sym_uint16] = ACTIONS(468),
    [anon_sym_uint24] = ACTIONS(468),
    [anon_sym_uint32] = ACTIONS(468),
    [anon_sym_uint40] = ACTIONS(468),
    [anon_sym_uint48] = ACTIONS(468),
    [anon_sym_uint56] = ACTIONS(468),
    [anon_sym_uint64] = ACTIONS(468),
    [anon_sym_uint72] = ACTIONS(468),
    [anon_sym_uint80] = ACTIONS(468),
    [anon_sym_uint88] = ACTIONS(468),
    [anon_sym_uint96] = ACTIONS(468),
    [anon_sym_uint104] = ACTIONS(468),
    [anon_sym_uint112] = ACTIONS(468),
    [anon_sym_uint120] = ACTIONS(468),
    [anon_sym_uint128] = ACTIONS(468),
    [anon_sym_uint136] = ACTIONS(468),
    [anon_sym_uint144] = ACTIONS(468),
    [anon_sym_uint152] = ACTIONS(468),
    [anon_sym_uint160] = ACTIONS(468),
    [anon_sym_uint168] = ACTIONS(468),
    [anon_sym_uint176] = ACTIONS(468),
    [anon_sym_uint184] = ACTIONS(468),
    [anon_sym_uint192] = ACTIONS(468),
    [anon_sym_uint200] = ACTIONS(468),
    [anon_sym_uint208] = ACTIONS(468),
    [anon_sym_uint216] = ACTIONS(468),
    [anon_sym_uint224] = ACTIONS(468),
    [anon_sym_uint232] = ACTIONS(468),
    [anon_sym_uint240] = ACTIONS(468),
    [anon_sym_uint248] = ACTIONS(468),
    [anon_sym_uint256] = ACTIONS(468),
    [anon_sym_bytes] = ACTIONS(468),
    [anon_sym_bytes1] = ACTIONS(468),
    [anon_sym_bytes2] = ACTIONS(468),
    [anon_sym_bytes3] = ACTIONS(468),
    [anon_sym_bytes4] = ACTIONS(468),
    [anon_sym_bytes5] = ACTIONS(468),
    [anon_sym_bytes6] = ACTIONS(468),
    [anon_sym_bytes7] = ACTIONS(468),
    [anon_sym_bytes8] = ACTIONS(468),
    [anon_sym_bytes9] = ACTIONS(468),
    [anon_sym_bytes10] = ACTIONS(468),
    [anon_sym_bytes11] = ACTIONS(468),
    [anon_sym_bytes12] = ACTIONS(468),
    [anon_sym_bytes13] = ACTIONS(468),
    [anon_sym_bytes14] = ACTIONS(468),
    [anon_sym_bytes15] = ACTIONS(468),
    [anon_sym_bytes16] = ACTIONS(468),
    [anon_sym_bytes17] = ACTIONS(468),
    [anon_sym_bytes18] = ACTIONS(468),
    [anon_sym_bytes19] = ACTIONS(468),
    [anon_sym_bytes20] = ACTIONS(468),
    [anon_sym_bytes21] = ACTIONS(468),
    [anon_sym_bytes22] = ACTIONS(468),
    [anon_sym_bytes23] = ACTIONS(468),
    [anon_sym_bytes24] = ACTIONS(468),
    [anon_sym_bytes25] = ACTIONS(468),
    [anon_sym_bytes26] = ACTIONS(468),
    [anon_sym_bytes27] = ACTIONS(468),
    [anon_sym_bytes28] = ACTIONS(468),
    [anon_sym_bytes29] = ACTIONS(468),
    [anon_sym_bytes30] = ACTIONS(468),
    [anon_sym_bytes31] = ACTIONS(468),
    [anon_sym_bytes32] = ACTIONS(468),
    [anon_sym_fixed] = ACTIONS(468),
    [aux_sym__fixed_token1] = ACTIONS(468),
    [anon_sym_ufixed] = ACTIONS(468),
    [aux_sym__ufixed_token1] = ACTIONS(468),
    [sym_comment] = ACTIONS(3),
  },
  [92] = {
    [sym_identifier] = ACTIONS(486),
    [anon_sym_DASH] = ACTIONS(486),
    [anon_sym_TILDE] = ACTIONS(488),
    [anon_sym_LBRACE] = ACTIONS(488),
    [anon_sym_RBRACE] = ACTIONS(488),
    [anon_sym_type] = ACTIONS(486),
    [anon_sym_LPAREN] = ACTIONS(488),
    [anon_sym_for] = ACTIONS(486),
    [anon_sym_assembly] = ACTIONS(486),
    [anon_sym_break] = ACTIONS(486),
    [anon_sym_continue] = ACTIONS(486),
    [anon_sym_true] = ACTIONS(486),
    [anon_sym_false] = ACTIONS(486),
    [anon_sym_if] = ACTIONS(486),
    [anon_sym_function] = ACTIONS(486),
    [anon_sym_byte] = ACTIONS(486),
    [anon_sym_address] = ACTIONS(486),
    [anon_sym_return] = ACTIONS(486),
    [anon_sym_revert] = ACTIONS(486),
    [sym__unchecked] = ACTIONS(486),
    [anon_sym_var] = ACTIONS(486),
    [anon_sym_else] = ACTIONS(486),
    [anon_sym_while] = ACTIONS(486),
    [anon_sym_do] = ACTIONS(486),
    [anon_sym_try] = ACTIONS(486),
    [anon_sym_emit] = ACTIONS(486),
    [anon_sym_payable] = ACTIONS(486),
    [anon_sym_new] = ACTIONS(486),
    [anon_sym_LBRACK] = ACTIONS(488),
    [anon_sym_PLUS] = ACTIONS(486),
    [anon_sym_BANG] = ACTIONS(488),
    [anon_sym_delete] = ACTIONS(486),
    [anon_sym_PLUS_PLUS] = ACTIONS(488),
    [anon_sym_DASH_DASH] = ACTIONS(488),
    [anon_sym_mapping] = ACTIONS(486),
    [anon_sym_bool] = ACTIONS(486),
    [anon_sym_string] = ACTIONS(486),
    [anon_sym_int] = ACTIONS(486),
    [anon_sym_int8] = ACTIONS(486),
    [anon_sym_int16] = ACTIONS(486),
    [anon_sym_int24] = ACTIONS(486),
    [anon_sym_int32] = ACTIONS(486),
    [anon_sym_int40] = ACTIONS(486),
    [anon_sym_int48] = ACTIONS(486),
    [anon_sym_int56] = ACTIONS(486),
    [anon_sym_int64] = ACTIONS(486),
    [anon_sym_int72] = ACTIONS(486),
    [anon_sym_int80] = ACTIONS(486),
    [anon_sym_int88] = ACTIONS(486),
    [anon_sym_int96] = ACTIONS(486),
    [anon_sym_int104] = ACTIONS(486),
    [anon_sym_int112] = ACTIONS(486),
    [anon_sym_int120] = ACTIONS(486),
    [anon_sym_int128] = ACTIONS(486),
    [anon_sym_int136] = ACTIONS(486),
    [anon_sym_int144] = ACTIONS(486),
    [anon_sym_int152] = ACTIONS(486),
    [anon_sym_int160] = ACTIONS(486),
    [anon_sym_int168] = ACTIONS(486),
    [anon_sym_int176] = ACTIONS(486),
    [anon_sym_int184] = ACTIONS(486),
    [anon_sym_int192] = ACTIONS(486),
    [anon_sym_int200] = ACTIONS(486),
    [anon_sym_int208] = ACTIONS(486),
    [anon_sym_int216] = ACTIONS(486),
    [anon_sym_int224] = ACTIONS(486),
    [anon_sym_int232] = ACTIONS(486),
    [anon_sym_int240] = ACTIONS(486),
    [anon_sym_int248] = ACTIONS(486),
    [anon_sym_int256] = ACTIONS(486),
    [anon_sym_uint] = ACTIONS(486),
    [anon_sym_uint8] = ACTIONS(486),
    [anon_sym_uint16] = ACTIONS(486),
    [anon_sym_uint24] = ACTIONS(486),
    [anon_sym_uint32] = ACTIONS(486),
    [anon_sym_uint40] = ACTIONS(486),
    [anon_sym_uint48] = ACTIONS(486),
    [anon_sym_uint56] = ACTIONS(486),
    [anon_sym_uint64] = ACTIONS(486),
    [anon_sym_uint72] = ACTIONS(486),
    [anon_sym_uint80] = ACTIONS(486),
    [anon_sym_uint88] = ACTIONS(486),
    [anon_sym_uint96] = ACTIONS(486),
    [anon_sym_uint104] = ACTIONS(486),
    [anon_sym_uint112] = ACTIONS(486),
    [anon_sym_uint120] = ACTIONS(486),
    [anon_sym_uint128] = ACTIONS(486),
    [anon_sym_uint136] = ACTIONS(486),
    [anon_sym_uint144] = ACTIONS(486),
    [anon_sym_uint152] = ACTIONS(486),
    [anon_sym_uint160] = ACTIONS(486),
    [anon_sym_uint168] = ACTIONS(486),
    [anon_sym_uint176] = ACTIONS(486),
    [anon_sym_uint184] = ACTIONS(486),
    [anon_sym_uint192] = ACTIONS(486),
    [anon_sym_uint200] = ACTIONS(486),
    [anon_sym_uint208] = ACTIONS(486),
    [anon_sym_uint216] = ACTIONS(486),
    [anon_sym_uint224] = ACTIONS(486),
    [anon_sym_uint232] = ACTIONS(486),
    [anon_sym_uint240] = ACTIONS(486),
    [anon_sym_uint248] = ACTIONS(486),
    [anon_sym_uint256] = ACTIONS(486),
    [anon_sym_bytes] = ACTIONS(486),
    [anon_sym_bytes1] = ACTIONS(486),
    [anon_sym_bytes2] = ACTIONS(486),
    [anon_sym_bytes3] = ACTIONS(486),
    [anon_sym_bytes4] = ACTIONS(486),
    [anon_sym_bytes5] = ACTIONS(486),
    [anon_sym_bytes6] = ACTIONS(486),
    [anon_sym_bytes7] = ACTIONS(486),
    [anon_sym_bytes8] = ACTIONS(486),
    [anon_sym_bytes9] = ACTIONS(486),
    [anon_sym_bytes10] = ACTIONS(486),
    [anon_sym_bytes11] = ACTIONS(486),
    [anon_sym_bytes12] = ACTIONS(486),
    [anon_sym_bytes13] = ACTIONS(486),
    [anon_sym_bytes14] = ACTIONS(486),
    [anon_sym_bytes15] = ACTIONS(486),
    [anon_sym_bytes16] = ACTIONS(486),
    [anon_sym_bytes17] = ACTIONS(486),
    [anon_sym_bytes18] = ACTIONS(486),
    [anon_sym_bytes19] = ACTIONS(486),
    [anon_sym_bytes20] = ACTIONS(486),
    [anon_sym_bytes21] = ACTIONS(486),
    [anon_sym_bytes22] = ACTIONS(486),
    [anon_sym_bytes23] = ACTIONS(486),
    [anon_sym_bytes24] = ACTIONS(486),
    [anon_sym_bytes25] = ACTIONS(486),
    [anon_sym_bytes26] = ACTIONS(486),
    [anon_sym_bytes27] = ACTIONS(486),
    [anon_sym_bytes28] = ACTIONS(486),
    [anon_sym_bytes29] = ACTIONS(486),
    [anon_sym_bytes30] = ACTIONS(486),
    [anon_sym_bytes31] = ACTIONS(486),
    [anon_sym_bytes32] = ACTIONS(486),
    [anon_sym_fixed] = ACTIONS(486),
    [aux_sym__fixed_token1] = ACTIONS(486),
    [anon_sym_ufixed] = ACTIONS(486),
    [aux_sym__ufixed_token1] = ACTIONS(486),
    [aux_sym__decimal_number_token1] = ACTIONS(486),
    [aux_sym__decimal_number_token2] = ACTIONS(488),
    [aux_sym__hex_number_token1] = ACTIONS(488),
    [anon_sym_hex] = ACTIONS(486),
    [anon_sym_DQUOTE] = ACTIONS(488),
    [anon_sym_SQUOTE] = ACTIONS(488),
    [anon_sym_unicode] = ACTIONS(486),
    [sym_comment] = ACTIONS(3),
  },
  [93] = {
    [sym_identifier] = ACTIONS(490),
    [anon_sym_DASH] = ACTIONS(490),
    [anon_sym_TILDE] = ACTIONS(492),
    [anon_sym_LBRACE] = ACTIONS(492),
    [anon_sym_RBRACE] = ACTIONS(492),
    [anon_sym_type] = ACTIONS(490),
    [anon_sym_LPAREN] = ACTIONS(492),
    [anon_sym_for] = ACTIONS(490),
    [anon_sym_assembly] = ACTIONS(490),
    [anon_sym_break] = ACTIONS(490),
    [anon_sym_continue] = ACTIONS(490),
    [anon_sym_true] = ACTIONS(490),
    [anon_sym_false] = ACTIONS(490),
    [anon_sym_if] = ACTIONS(490),
    [anon_sym_function] = ACTIONS(490),
    [anon_sym_byte] = ACTIONS(490),
    [anon_sym_address] = ACTIONS(490),
    [anon_sym_return] = ACTIONS(490),
    [anon_sym_revert] = ACTIONS(490),
    [sym__unchecked] = ACTIONS(490),
    [anon_sym_var] = ACTIONS(490),
    [anon_sym_else] = ACTIONS(490),
    [anon_sym_while] = ACTIONS(490),
    [anon_sym_do] = ACTIONS(490),
    [anon_sym_try] = ACTIONS(490),
    [anon_sym_emit] = ACTIONS(490),
    [anon_sym_payable] = ACTIONS(490),
    [anon_sym_new] = ACTIONS(490),
    [anon_sym_LBRACK] = ACTIONS(492),
    [anon_sym_PLUS] = ACTIONS(490),
    [anon_sym_BANG] = ACTIONS(492),
    [anon_sym_delete] = ACTIONS(490),
    [anon_sym_PLUS_PLUS] = ACTIONS(492),
    [anon_sym_DASH_DASH] = ACTIONS(492),
    [anon_sym_mapping] = ACTIONS(490),
    [anon_sym_bool] = ACTIONS(490),
    [anon_sym_string] = ACTIONS(490),
    [anon_sym_int] = ACTIONS(490),
    [anon_sym_int8] = ACTIONS(490),
    [anon_sym_int16] = ACTIONS(490),
    [anon_sym_int24] = ACTIONS(490),
    [anon_sym_int32] = ACTIONS(490),
    [anon_sym_int40] = ACTIONS(490),
    [anon_sym_int48] = ACTIONS(490),
    [anon_sym_int56] = ACTIONS(490),
    [anon_sym_int64] = ACTIONS(490),
    [anon_sym_int72] = ACTIONS(490),
    [anon_sym_int80] = ACTIONS(490),
    [anon_sym_int88] = ACTIONS(490),
    [anon_sym_int96] = ACTIONS(490),
    [anon_sym_int104] = ACTIONS(490),
    [anon_sym_int112] = ACTIONS(490),
    [anon_sym_int120] = ACTIONS(490),
    [anon_sym_int128] = ACTIONS(490),
    [anon_sym_int136] = ACTIONS(490),
    [anon_sym_int144] = ACTIONS(490),
    [anon_sym_int152] = ACTIONS(490),
    [anon_sym_int160] = ACTIONS(490),
    [anon_sym_int168] = ACTIONS(490),
    [anon_sym_int176] = ACTIONS(490),
    [anon_sym_int184] = ACTIONS(490),
    [anon_sym_int192] = ACTIONS(490),
    [anon_sym_int200] = ACTIONS(490),
    [anon_sym_int208] = ACTIONS(490),
    [anon_sym_int216] = ACTIONS(490),
    [anon_sym_int224] = ACTIONS(490),
    [anon_sym_int232] = ACTIONS(490),
    [anon_sym_int240] = ACTIONS(490),
    [anon_sym_int248] = ACTIONS(490),
    [anon_sym_int256] = ACTIONS(490),
    [anon_sym_uint] = ACTIONS(490),
    [anon_sym_uint8] = ACTIONS(490),
    [anon_sym_uint16] = ACTIONS(490),
    [anon_sym_uint24] = ACTIONS(490),
    [anon_sym_uint32] = ACTIONS(490),
    [anon_sym_uint40] = ACTIONS(490),
    [anon_sym_uint48] = ACTIONS(490),
    [anon_sym_uint56] = ACTIONS(490),
    [anon_sym_uint64] = ACTIONS(490),
    [anon_sym_uint72] = ACTIONS(490),
    [anon_sym_uint80] = ACTIONS(490),
    [anon_sym_uint88] = ACTIONS(490),
    [anon_sym_uint96] = ACTIONS(490),
    [anon_sym_uint104] = ACTIONS(490),
    [anon_sym_uint112] = ACTIONS(490),
    [anon_sym_uint120] = ACTIONS(490),
    [anon_sym_uint128] = ACTIONS(490),
    [anon_sym_uint136] = ACTIONS(490),
    [anon_sym_uint144] = ACTIONS(490),
    [anon_sym_uint152] = ACTIONS(490),
    [anon_sym_uint160] = ACTIONS(490),
    [anon_sym_uint168] = ACTIONS(490),
    [anon_sym_uint176] = ACTIONS(490),
    [anon_sym_uint184] = ACTIONS(490),
    [anon_sym_uint192] = ACTIONS(490),
    [anon_sym_uint200] = ACTIONS(490),
    [anon_sym_uint208] = ACTIONS(490),
    [anon_sym_uint216] = ACTIONS(490),
    [anon_sym_uint224] = ACTIONS(490),
    [anon_sym_uint232] = ACTIONS(490),
    [anon_sym_uint240] = ACTIONS(490),
    [anon_sym_uint248] = ACTIONS(490),
    [anon_sym_uint256] = ACTIONS(490),
    [anon_sym_bytes] = ACTIONS(490),
    [anon_sym_bytes1] = ACTIONS(490),
    [anon_sym_bytes2] = ACTIONS(490),
    [anon_sym_bytes3] = ACTIONS(490),
    [anon_sym_bytes4] = ACTIONS(490),
    [anon_sym_bytes5] = ACTIONS(490),
    [anon_sym_bytes6] = ACTIONS(490),
    [anon_sym_bytes7] = ACTIONS(490),
    [anon_sym_bytes8] = ACTIONS(490),
    [anon_sym_bytes9] = ACTIONS(490),
    [anon_sym_bytes10] = ACTIONS(490),
    [anon_sym_bytes11] = ACTIONS(490),
    [anon_sym_bytes12] = ACTIONS(490),
    [anon_sym_bytes13] = ACTIONS(490),
    [anon_sym_bytes14] = ACTIONS(490),
    [anon_sym_bytes15] = ACTIONS(490),
    [anon_sym_bytes16] = ACTIONS(490),
    [anon_sym_bytes17] = ACTIONS(490),
    [anon_sym_bytes18] = ACTIONS(490),
    [anon_sym_bytes19] = ACTIONS(490),
    [anon_sym_bytes20] = ACTIONS(490),
    [anon_sym_bytes21] = ACTIONS(490),
    [anon_sym_bytes22] = ACTIONS(490),
    [anon_sym_bytes23] = ACTIONS(490),
    [anon_sym_bytes24] = ACTIONS(490),
    [anon_sym_bytes25] = ACTIONS(490),
    [anon_sym_bytes26] = ACTIONS(490),
    [anon_sym_bytes27] = ACTIONS(490),
    [anon_sym_bytes28] = ACTIONS(490),
    [anon_sym_bytes29] = ACTIONS(490),
    [anon_sym_bytes30] = ACTIONS(490),
    [anon_sym_bytes31] = ACTIONS(490),
    [anon_sym_bytes32] = ACTIONS(490),
    [anon_sym_fixed] = ACTIONS(490),
    [aux_sym__fixed_token1] = ACTIONS(490),
    [anon_sym_ufixed] = ACTIONS(490),
    [aux_sym__ufixed_token1] = ACTIONS(490),
    [aux_sym__decimal_number_token1] = ACTIONS(490),
    [aux_sym__decimal_number_token2] = ACTIONS(492),
    [aux_sym__hex_number_token1] = ACTIONS(492),
    [anon_sym_hex] = ACTIONS(490),
    [anon_sym_DQUOTE] = ACTIONS(492),
    [anon_sym_SQUOTE] = ACTIONS(492),
    [anon_sym_unicode] = ACTIONS(490),
    [sym_comment] = ACTIONS(3),
  },
  [94] = {
    [sym_identifier] = ACTIONS(494),
    [anon_sym_DASH] = ACTIONS(494),
    [anon_sym_TILDE] = ACTIONS(496),
    [anon_sym_LBRACE] = ACTIONS(496),
    [anon_sym_RBRACE] = ACTIONS(496),
    [anon_sym_type] = ACTIONS(494),
    [anon_sym_LPAREN] = ACTIONS(496),
    [anon_sym_for] = ACTIONS(494),
    [anon_sym_assembly] = ACTIONS(494),
    [anon_sym_break] = ACTIONS(494),
    [anon_sym_continue] = ACTIONS(494),
    [anon_sym_true] = ACTIONS(494),
    [anon_sym_false] = ACTIONS(494),
    [anon_sym_if] = ACTIONS(494),
    [anon_sym_function] = ACTIONS(494),
    [anon_sym_byte] = ACTIONS(494),
    [anon_sym_address] = ACTIONS(494),
    [anon_sym_return] = ACTIONS(494),
    [anon_sym_revert] = ACTIONS(494),
    [sym__unchecked] = ACTIONS(494),
    [anon_sym_var] = ACTIONS(494),
    [anon_sym_else] = ACTIONS(498),
    [anon_sym_while] = ACTIONS(494),
    [anon_sym_do] = ACTIONS(494),
    [anon_sym_try] = ACTIONS(494),
    [anon_sym_emit] = ACTIONS(494),
    [anon_sym_payable] = ACTIONS(494),
    [anon_sym_new] = ACTIONS(494),
    [anon_sym_LBRACK] = ACTIONS(496),
    [anon_sym_PLUS] = ACTIONS(494),
    [anon_sym_BANG] = ACTIONS(496),
    [anon_sym_delete] = ACTIONS(494),
    [anon_sym_PLUS_PLUS] = ACTIONS(496),
    [anon_sym_DASH_DASH] = ACTIONS(496),
    [anon_sym_mapping] = ACTIONS(494),
    [anon_sym_bool] = ACTIONS(494),
    [anon_sym_string] = ACTIONS(494),
    [anon_sym_int] = ACTIONS(494),
    [anon_sym_int8] = ACTIONS(494),
    [anon_sym_int16] = ACTIONS(494),
    [anon_sym_int24] = ACTIONS(494),
    [anon_sym_int32] = ACTIONS(494),
    [anon_sym_int40] = ACTIONS(494),
    [anon_sym_int48] = ACTIONS(494),
    [anon_sym_int56] = ACTIONS(494),
    [anon_sym_int64] = ACTIONS(494),
    [anon_sym_int72] = ACTIONS(494),
    [anon_sym_int80] = ACTIONS(494),
    [anon_sym_int88] = ACTIONS(494),
    [anon_sym_int96] = ACTIONS(494),
    [anon_sym_int104] = ACTIONS(494),
    [anon_sym_int112] = ACTIONS(494),
    [anon_sym_int120] = ACTIONS(494),
    [anon_sym_int128] = ACTIONS(494),
    [anon_sym_int136] = ACTIONS(494),
    [anon_sym_int144] = ACTIONS(494),
    [anon_sym_int152] = ACTIONS(494),
    [anon_sym_int160] = ACTIONS(494),
    [anon_sym_int168] = ACTIONS(494),
    [anon_sym_int176] = ACTIONS(494),
    [anon_sym_int184] = ACTIONS(494),
    [anon_sym_int192] = ACTIONS(494),
    [anon_sym_int200] = ACTIONS(494),
    [anon_sym_int208] = ACTIONS(494),
    [anon_sym_int216] = ACTIONS(494),
    [anon_sym_int224] = ACTIONS(494),
    [anon_sym_int232] = ACTIONS(494),
    [anon_sym_int240] = ACTIONS(494),
    [anon_sym_int248] = ACTIONS(494),
    [anon_sym_int256] = ACTIONS(494),
    [anon_sym_uint] = ACTIONS(494),
    [anon_sym_uint8] = ACTIONS(494),
    [anon_sym_uint16] = ACTIONS(494),
    [anon_sym_uint24] = ACTIONS(494),
    [anon_sym_uint32] = ACTIONS(494),
    [anon_sym_uint40] = ACTIONS(494),
    [anon_sym_uint48] = ACTIONS(494),
    [anon_sym_uint56] = ACTIONS(494),
    [anon_sym_uint64] = ACTIONS(494),
    [anon_sym_uint72] = ACTIONS(494),
    [anon_sym_uint80] = ACTIONS(494),
    [anon_sym_uint88] = ACTIONS(494),
    [anon_sym_uint96] = ACTIONS(494),
    [anon_sym_uint104] = ACTIONS(494),
    [anon_sym_uint112] = ACTIONS(494),
    [anon_sym_uint120] = ACTIONS(494),
    [anon_sym_uint128] = ACTIONS(494),
    [anon_sym_uint136] = ACTIONS(494),
    [anon_sym_uint144] = ACTIONS(494),
    [anon_sym_uint152] = ACTIONS(494),
    [anon_sym_uint160] = ACTIONS(494),
    [anon_sym_uint168] = ACTIONS(494),
    [anon_sym_uint176] = ACTIONS(494),
    [anon_sym_uint184] = ACTIONS(494),
    [anon_sym_uint192] = ACTIONS(494),
    [anon_sym_uint200] = ACTIONS(494),
    [anon_sym_uint208] = ACTIONS(494),
    [anon_sym_uint216] = ACTIONS(494),
    [anon_sym_uint224] = ACTIONS(494),
    [anon_sym_uint232] = ACTIONS(494),
    [anon_sym_uint240] = ACTIONS(494),
    [anon_sym_uint248] = ACTIONS(494),
    [anon_sym_uint256] = ACTIONS(494),
    [anon_sym_bytes] = ACTIONS(494),
    [anon_sym_bytes1] = ACTIONS(494),
    [anon_sym_bytes2] = ACTIONS(494),
    [anon_sym_bytes3] = ACTIONS(494),
    [anon_sym_bytes4] = ACTIONS(494),
    [anon_sym_bytes5] = ACTIONS(494),
    [anon_sym_bytes6] = ACTIONS(494),
    [anon_sym_bytes7] = ACTIONS(494),
    [anon_sym_bytes8] = ACTIONS(494),
    [anon_sym_bytes9] = ACTIONS(494),
    [anon_sym_bytes10] = ACTIONS(494),
    [anon_sym_bytes11] = ACTIONS(494),
    [anon_sym_bytes12] = ACTIONS(494),
    [anon_sym_bytes13] = ACTIONS(494),
    [anon_sym_bytes14] = ACTIONS(494),
    [anon_sym_bytes15] = ACTIONS(494),
    [anon_sym_bytes16] = ACTIONS(494),
    [anon_sym_bytes17] = ACTIONS(494),
    [anon_sym_bytes18] = ACTIONS(494),
    [anon_sym_bytes19] = ACTIONS(494),
    [anon_sym_bytes20] = ACTIONS(494),
    [anon_sym_bytes21] = ACTIONS(494),
    [anon_sym_bytes22] = ACTIONS(494),
    [anon_sym_bytes23] = ACTIONS(494),
    [anon_sym_bytes24] = ACTIONS(494),
    [anon_sym_bytes25] = ACTIONS(494),
    [anon_sym_bytes26] = ACTIONS(494),
    [anon_sym_bytes27] = ACTIONS(494),
    [anon_sym_bytes28] = ACTIONS(494),
    [anon_sym_bytes29] = ACTIONS(494),
    [anon_sym_bytes30] = ACTIONS(494),
    [anon_sym_bytes31] = ACTIONS(494),
    [anon_sym_bytes32] = ACTIONS(494),
    [anon_sym_fixed] = ACTIONS(494),
    [aux_sym__fixed_token1] = ACTIONS(494),
    [anon_sym_ufixed] = ACTIONS(494),
    [aux_sym__ufixed_token1] = ACTIONS(494),
    [aux_sym__decimal_number_token1] = ACTIONS(494),
    [aux_sym__decimal_number_token2] = ACTIONS(496),
    [aux_sym__hex_number_token1] = ACTIONS(496),
    [anon_sym_hex] = ACTIONS(494),
    [anon_sym_DQUOTE] = ACTIONS(496),
    [anon_sym_SQUOTE] = ACTIONS(496),
    [anon_sym_unicode] = ACTIONS(494),
    [sym_comment] = ACTIONS(3),
  },
  [95] = {
    [sym_identifier] = ACTIONS(500),
    [anon_sym_DASH] = ACTIONS(500),
    [anon_sym_TILDE] = ACTIONS(502),
    [anon_sym_LBRACE] = ACTIONS(502),
    [anon_sym_RBRACE] = ACTIONS(502),
    [anon_sym_type] = ACTIONS(500),
    [anon_sym_LPAREN] = ACTIONS(502),
    [anon_sym_for] = ACTIONS(500),
    [anon_sym_assembly] = ACTIONS(500),
    [anon_sym_break] = ACTIONS(500),
    [anon_sym_continue] = ACTIONS(500),
    [anon_sym_true] = ACTIONS(500),
    [anon_sym_false] = ACTIONS(500),
    [anon_sym_if] = ACTIONS(500),
    [anon_sym_function] = ACTIONS(500),
    [anon_sym_byte] = ACTIONS(500),
    [anon_sym_address] = ACTIONS(500),
    [anon_sym_return] = ACTIONS(500),
    [anon_sym_revert] = ACTIONS(500),
    [sym__unchecked] = ACTIONS(500),
    [anon_sym_var] = ACTIONS(500),
    [anon_sym_else] = ACTIONS(500),
    [anon_sym_while] = ACTIONS(500),
    [anon_sym_do] = ACTIONS(500),
    [anon_sym_try] = ACTIONS(500),
    [anon_sym_emit] = ACTIONS(500),
    [anon_sym_payable] = ACTIONS(500),
    [anon_sym_new] = ACTIONS(500),
    [anon_sym_LBRACK] = ACTIONS(502),
    [anon_sym_PLUS] = ACTIONS(500),
    [anon_sym_BANG] = ACTIONS(502),
    [anon_sym_delete] = ACTIONS(500),
    [anon_sym_PLUS_PLUS] = ACTIONS(502),
    [anon_sym_DASH_DASH] = ACTIONS(502),
    [anon_sym_mapping] = ACTIONS(500),
    [anon_sym_bool] = ACTIONS(500),
    [anon_sym_string] = ACTIONS(500),
    [anon_sym_int] = ACTIONS(500),
    [anon_sym_int8] = ACTIONS(500),
    [anon_sym_int16] = ACTIONS(500),
    [anon_sym_int24] = ACTIONS(500),
    [anon_sym_int32] = ACTIONS(500),
    [anon_sym_int40] = ACTIONS(500),
    [anon_sym_int48] = ACTIONS(500),
    [anon_sym_int56] = ACTIONS(500),
    [anon_sym_int64] = ACTIONS(500),
    [anon_sym_int72] = ACTIONS(500),
    [anon_sym_int80] = ACTIONS(500),
    [anon_sym_int88] = ACTIONS(500),
    [anon_sym_int96] = ACTIONS(500),
    [anon_sym_int104] = ACTIONS(500),
    [anon_sym_int112] = ACTIONS(500),
    [anon_sym_int120] = ACTIONS(500),
    [anon_sym_int128] = ACTIONS(500),
    [anon_sym_int136] = ACTIONS(500),
    [anon_sym_int144] = ACTIONS(500),
    [anon_sym_int152] = ACTIONS(500),
    [anon_sym_int160] = ACTIONS(500),
    [anon_sym_int168] = ACTIONS(500),
    [anon_sym_int176] = ACTIONS(500),
    [anon_sym_int184] = ACTIONS(500),
    [anon_sym_int192] = ACTIONS(500),
    [anon_sym_int200] = ACTIONS(500),
    [anon_sym_int208] = ACTIONS(500),
    [anon_sym_int216] = ACTIONS(500),
    [anon_sym_int224] = ACTIONS(500),
    [anon_sym_int232] = ACTIONS(500),
    [anon_sym_int240] = ACTIONS(500),
    [anon_sym_int248] = ACTIONS(500),
    [anon_sym_int256] = ACTIONS(500),
    [anon_sym_uint] = ACTIONS(500),
    [anon_sym_uint8] = ACTIONS(500),
    [anon_sym_uint16] = ACTIONS(500),
    [anon_sym_uint24] = ACTIONS(500),
    [anon_sym_uint32] = ACTIONS(500),
    [anon_sym_uint40] = ACTIONS(500),
    [anon_sym_uint48] = ACTIONS(500),
    [anon_sym_uint56] = ACTIONS(500),
    [anon_sym_uint64] = ACTIONS(500),
    [anon_sym_uint72] = ACTIONS(500),
    [anon_sym_uint80] = ACTIONS(500),
    [anon_sym_uint88] = ACTIONS(500),
    [anon_sym_uint96] = ACTIONS(500),
    [anon_sym_uint104] = ACTIONS(500),
    [anon_sym_uint112] = ACTIONS(500),
    [anon_sym_uint120] = ACTIONS(500),
    [anon_sym_uint128] = ACTIONS(500),
    [anon_sym_uint136] = ACTIONS(500),
    [anon_sym_uint144] = ACTIONS(500),
    [anon_sym_uint152] = ACTIONS(500),
    [anon_sym_uint160] = ACTIONS(500),
    [anon_sym_uint168] = ACTIONS(500),
    [anon_sym_uint176] = ACTIONS(500),
    [anon_sym_uint184] = ACTIONS(500),
    [anon_sym_uint192] = ACTIONS(500),
    [anon_sym_uint200] = ACTIONS(500),
    [anon_sym_uint208] = ACTIONS(500),
    [anon_sym_uint216] = ACTIONS(500),
    [anon_sym_uint224] = ACTIONS(500),
    [anon_sym_uint232] = ACTIONS(500),
    [anon_sym_uint240] = ACTIONS(500),
    [anon_sym_uint248] = ACTIONS(500),
    [anon_sym_uint256] = ACTIONS(500),
    [anon_sym_bytes] = ACTIONS(500),
    [anon_sym_bytes1] = ACTIONS(500),
    [anon_sym_bytes2] = ACTIONS(500),
    [anon_sym_bytes3] = ACTIONS(500),
    [anon_sym_bytes4] = ACTIONS(500),
    [anon_sym_bytes5] = ACTIONS(500),
    [anon_sym_bytes6] = ACTIONS(500),
    [anon_sym_bytes7] = ACTIONS(500),
    [anon_sym_bytes8] = ACTIONS(500),
    [anon_sym_bytes9] = ACTIONS(500),
    [anon_sym_bytes10] = ACTIONS(500),
    [anon_sym_bytes11] = ACTIONS(500),
    [anon_sym_bytes12] = ACTIONS(500),
    [anon_sym_bytes13] = ACTIONS(500),
    [anon_sym_bytes14] = ACTIONS(500),
    [anon_sym_bytes15] = ACTIONS(500),
    [anon_sym_bytes16] = ACTIONS(500),
    [anon_sym_bytes17] = ACTIONS(500),
    [anon_sym_bytes18] = ACTIONS(500),
    [anon_sym_bytes19] = ACTIONS(500),
    [anon_sym_bytes20] = ACTIONS(500),
    [anon_sym_bytes21] = ACTIONS(500),
    [anon_sym_bytes22] = ACTIONS(500),
    [anon_sym_bytes23] = ACTIONS(500),
    [anon_sym_bytes24] = ACTIONS(500),
    [anon_sym_bytes25] = ACTIONS(500),
    [anon_sym_bytes26] = ACTIONS(500),
    [anon_sym_bytes27] = ACTIONS(500),
    [anon_sym_bytes28] = ACTIONS(500),
    [anon_sym_bytes29] = ACTIONS(500),
    [anon_sym_bytes30] = ACTIONS(500),
    [anon_sym_bytes31] = ACTIONS(500),
    [anon_sym_bytes32] = ACTIONS(500),
    [anon_sym_fixed] = ACTIONS(500),
    [aux_sym__fixed_token1] = ACTIONS(500),
    [anon_sym_ufixed] = ACTIONS(500),
    [aux_sym__ufixed_token1] = ACTIONS(500),
    [aux_sym__decimal_number_token1] = ACTIONS(500),
    [aux_sym__decimal_number_token2] = ACTIONS(502),
    [aux_sym__hex_number_token1] = ACTIONS(502),
    [anon_sym_hex] = ACTIONS(500),
    [anon_sym_DQUOTE] = ACTIONS(502),
    [anon_sym_SQUOTE] = ACTIONS(502),
    [anon_sym_unicode] = ACTIONS(500),
    [sym_comment] = ACTIONS(3),
  },
  [96] = {
    [sym_identifier] = ACTIONS(504),
    [anon_sym_DASH] = ACTIONS(504),
    [anon_sym_TILDE] = ACTIONS(506),
    [anon_sym_LBRACE] = ACTIONS(506),
    [anon_sym_RBRACE] = ACTIONS(506),
    [anon_sym_type] = ACTIONS(504),
    [anon_sym_LPAREN] = ACTIONS(506),
    [anon_sym_for] = ACTIONS(504),
    [anon_sym_assembly] = ACTIONS(504),
    [anon_sym_break] = ACTIONS(504),
    [anon_sym_continue] = ACTIONS(504),
    [anon_sym_true] = ACTIONS(504),
    [anon_sym_false] = ACTIONS(504),
    [anon_sym_if] = ACTIONS(504),
    [anon_sym_function] = ACTIONS(504),
    [anon_sym_byte] = ACTIONS(504),
    [anon_sym_address] = ACTIONS(504),
    [anon_sym_return] = ACTIONS(504),
    [anon_sym_revert] = ACTIONS(504),
    [sym__unchecked] = ACTIONS(504),
    [anon_sym_var] = ACTIONS(504),
    [anon_sym_else] = ACTIONS(504),
    [anon_sym_while] = ACTIONS(504),
    [anon_sym_do] = ACTIONS(504),
    [anon_sym_try] = ACTIONS(504),
    [anon_sym_emit] = ACTIONS(504),
    [anon_sym_payable] = ACTIONS(504),
    [anon_sym_new] = ACTIONS(504),
    [anon_sym_LBRACK] = ACTIONS(506),
    [anon_sym_PLUS] = ACTIONS(504),
    [anon_sym_BANG] = ACTIONS(506),
    [anon_sym_delete] = ACTIONS(504),
    [anon_sym_PLUS_PLUS] = ACTIONS(506),
    [anon_sym_DASH_DASH] = ACTIONS(506),
    [anon_sym_mapping] = ACTIONS(504),
    [anon_sym_bool] = ACTIONS(504),
    [anon_sym_string] = ACTIONS(504),
    [anon_sym_int] = ACTIONS(504),
    [anon_sym_int8] = ACTIONS(504),
    [anon_sym_int16] = ACTIONS(504),
    [anon_sym_int24] = ACTIONS(504),
    [anon_sym_int32] = ACTIONS(504),
    [anon_sym_int40] = ACTIONS(504),
    [anon_sym_int48] = ACTIONS(504),
    [anon_sym_int56] = ACTIONS(504),
    [anon_sym_int64] = ACTIONS(504),
    [anon_sym_int72] = ACTIONS(504),
    [anon_sym_int80] = ACTIONS(504),
    [anon_sym_int88] = ACTIONS(504),
    [anon_sym_int96] = ACTIONS(504),
    [anon_sym_int104] = ACTIONS(504),
    [anon_sym_int112] = ACTIONS(504),
    [anon_sym_int120] = ACTIONS(504),
    [anon_sym_int128] = ACTIONS(504),
    [anon_sym_int136] = ACTIONS(504),
    [anon_sym_int144] = ACTIONS(504),
    [anon_sym_int152] = ACTIONS(504),
    [anon_sym_int160] = ACTIONS(504),
    [anon_sym_int168] = ACTIONS(504),
    [anon_sym_int176] = ACTIONS(504),
    [anon_sym_int184] = ACTIONS(504),
    [anon_sym_int192] = ACTIONS(504),
    [anon_sym_int200] = ACTIONS(504),
    [anon_sym_int208] = ACTIONS(504),
    [anon_sym_int216] = ACTIONS(504),
    [anon_sym_int224] = ACTIONS(504),
    [anon_sym_int232] = ACTIONS(504),
    [anon_sym_int240] = ACTIONS(504),
    [anon_sym_int248] = ACTIONS(504),
    [anon_sym_int256] = ACTIONS(504),
    [anon_sym_uint] = ACTIONS(504),
    [anon_sym_uint8] = ACTIONS(504),
    [anon_sym_uint16] = ACTIONS(504),
    [anon_sym_uint24] = ACTIONS(504),
    [anon_sym_uint32] = ACTIONS(504),
    [anon_sym_uint40] = ACTIONS(504),
    [anon_sym_uint48] = ACTIONS(504),
    [anon_sym_uint56] = ACTIONS(504),
    [anon_sym_uint64] = ACTIONS(504),
    [anon_sym_uint72] = ACTIONS(504),
    [anon_sym_uint80] = ACTIONS(504),
    [anon_sym_uint88] = ACTIONS(504),
    [anon_sym_uint96] = ACTIONS(504),
    [anon_sym_uint104] = ACTIONS(504),
    [anon_sym_uint112] = ACTIONS(504),
    [anon_sym_uint120] = ACTIONS(504),
    [anon_sym_uint128] = ACTIONS(504),
    [anon_sym_uint136] = ACTIONS(504),
    [anon_sym_uint144] = ACTIONS(504),
    [anon_sym_uint152] = ACTIONS(504),
    [anon_sym_uint160] = ACTIONS(504),
    [anon_sym_uint168] = ACTIONS(504),
    [anon_sym_uint176] = ACTIONS(504),
    [anon_sym_uint184] = ACTIONS(504),
    [anon_sym_uint192] = ACTIONS(504),
    [anon_sym_uint200] = ACTIONS(504),
    [anon_sym_uint208] = ACTIONS(504),
    [anon_sym_uint216] = ACTIONS(504),
    [anon_sym_uint224] = ACTIONS(504),
    [anon_sym_uint232] = ACTIONS(504),
    [anon_sym_uint240] = ACTIONS(504),
    [anon_sym_uint248] = ACTIONS(504),
    [anon_sym_uint256] = ACTIONS(504),
    [anon_sym_bytes] = ACTIONS(504),
    [anon_sym_bytes1] = ACTIONS(504),
    [anon_sym_bytes2] = ACTIONS(504),
    [anon_sym_bytes3] = ACTIONS(504),
    [anon_sym_bytes4] = ACTIONS(504),
    [anon_sym_bytes5] = ACTIONS(504),
    [anon_sym_bytes6] = ACTIONS(504),
    [anon_sym_bytes7] = ACTIONS(504),
    [anon_sym_bytes8] = ACTIONS(504),
    [anon_sym_bytes9] = ACTIONS(504),
    [anon_sym_bytes10] = ACTIONS(504),
    [anon_sym_bytes11] = ACTIONS(504),
    [anon_sym_bytes12] = ACTIONS(504),
    [anon_sym_bytes13] = ACTIONS(504),
    [anon_sym_bytes14] = ACTIONS(504),
    [anon_sym_bytes15] = ACTIONS(504),
    [anon_sym_bytes16] = ACTIONS(504),
    [anon_sym_bytes17] = ACTIONS(504),
    [anon_sym_bytes18] = ACTIONS(504),
    [anon_sym_bytes19] = ACTIONS(504),
    [anon_sym_bytes20] = ACTIONS(504),
    [anon_sym_bytes21] = ACTIONS(504),
    [anon_sym_bytes22] = ACTIONS(504),
    [anon_sym_bytes23] = ACTIONS(504),
    [anon_sym_bytes24] = ACTIONS(504),
    [anon_sym_bytes25] = ACTIONS(504),
    [anon_sym_bytes26] = ACTIONS(504),
    [anon_sym_bytes27] = ACTIONS(504),
    [anon_sym_bytes28] = ACTIONS(504),
    [anon_sym_bytes29] = ACTIONS(504),
    [anon_sym_bytes30] = ACTIONS(504),
    [anon_sym_bytes31] = ACTIONS(504),
    [anon_sym_bytes32] = ACTIONS(504),
    [anon_sym_fixed] = ACTIONS(504),
    [aux_sym__fixed_token1] = ACTIONS(504),
    [anon_sym_ufixed] = ACTIONS(504),
    [aux_sym__ufixed_token1] = ACTIONS(504),
    [aux_sym__decimal_number_token1] = ACTIONS(504),
    [aux_sym__decimal_number_token2] = ACTIONS(506),
    [aux_sym__hex_number_token1] = ACTIONS(506),
    [anon_sym_hex] = ACTIONS(504),
    [anon_sym_DQUOTE] = ACTIONS(506),
    [anon_sym_SQUOTE] = ACTIONS(506),
    [anon_sym_unicode] = ACTIONS(504),
    [sym_comment] = ACTIONS(3),
  },
  [97] = {
    [sym_identifier] = ACTIONS(508),
    [anon_sym_DASH] = ACTIONS(508),
    [anon_sym_TILDE] = ACTIONS(510),
    [anon_sym_LBRACE] = ACTIONS(510),
    [anon_sym_RBRACE] = ACTIONS(510),
    [anon_sym_type] = ACTIONS(508),
    [anon_sym_LPAREN] = ACTIONS(510),
    [anon_sym_for] = ACTIONS(508),
    [anon_sym_assembly] = ACTIONS(508),
    [anon_sym_break] = ACTIONS(508),
    [anon_sym_continue] = ACTIONS(508),
    [anon_sym_true] = ACTIONS(508),
    [anon_sym_false] = ACTIONS(508),
    [anon_sym_if] = ACTIONS(508),
    [anon_sym_function] = ACTIONS(508),
    [anon_sym_byte] = ACTIONS(508),
    [anon_sym_address] = ACTIONS(508),
    [anon_sym_return] = ACTIONS(508),
    [anon_sym_revert] = ACTIONS(508),
    [sym__unchecked] = ACTIONS(508),
    [anon_sym_var] = ACTIONS(508),
    [anon_sym_else] = ACTIONS(508),
    [anon_sym_while] = ACTIONS(508),
    [anon_sym_do] = ACTIONS(508),
    [anon_sym_try] = ACTIONS(508),
    [anon_sym_emit] = ACTIONS(508),
    [anon_sym_payable] = ACTIONS(508),
    [anon_sym_new] = ACTIONS(508),
    [anon_sym_LBRACK] = ACTIONS(510),
    [anon_sym_PLUS] = ACTIONS(508),
    [anon_sym_BANG] = ACTIONS(510),
    [anon_sym_delete] = ACTIONS(508),
    [anon_sym_PLUS_PLUS] = ACTIONS(510),
    [anon_sym_DASH_DASH] = ACTIONS(510),
    [anon_sym_mapping] = ACTIONS(508),
    [anon_sym_bool] = ACTIONS(508),
    [anon_sym_string] = ACTIONS(508),
    [anon_sym_int] = ACTIONS(508),
    [anon_sym_int8] = ACTIONS(508),
    [anon_sym_int16] = ACTIONS(508),
    [anon_sym_int24] = ACTIONS(508),
    [anon_sym_int32] = ACTIONS(508),
    [anon_sym_int40] = ACTIONS(508),
    [anon_sym_int48] = ACTIONS(508),
    [anon_sym_int56] = ACTIONS(508),
    [anon_sym_int64] = ACTIONS(508),
    [anon_sym_int72] = ACTIONS(508),
    [anon_sym_int80] = ACTIONS(508),
    [anon_sym_int88] = ACTIONS(508),
    [anon_sym_int96] = ACTIONS(508),
    [anon_sym_int104] = ACTIONS(508),
    [anon_sym_int112] = ACTIONS(508),
    [anon_sym_int120] = ACTIONS(508),
    [anon_sym_int128] = ACTIONS(508),
    [anon_sym_int136] = ACTIONS(508),
    [anon_sym_int144] = ACTIONS(508),
    [anon_sym_int152] = ACTIONS(508),
    [anon_sym_int160] = ACTIONS(508),
    [anon_sym_int168] = ACTIONS(508),
    [anon_sym_int176] = ACTIONS(508),
    [anon_sym_int184] = ACTIONS(508),
    [anon_sym_int192] = ACTIONS(508),
    [anon_sym_int200] = ACTIONS(508),
    [anon_sym_int208] = ACTIONS(508),
    [anon_sym_int216] = ACTIONS(508),
    [anon_sym_int224] = ACTIONS(508),
    [anon_sym_int232] = ACTIONS(508),
    [anon_sym_int240] = ACTIONS(508),
    [anon_sym_int248] = ACTIONS(508),
    [anon_sym_int256] = ACTIONS(508),
    [anon_sym_uint] = ACTIONS(508),
    [anon_sym_uint8] = ACTIONS(508),
    [anon_sym_uint16] = ACTIONS(508),
    [anon_sym_uint24] = ACTIONS(508),
    [anon_sym_uint32] = ACTIONS(508),
    [anon_sym_uint40] = ACTIONS(508),
    [anon_sym_uint48] = ACTIONS(508),
    [anon_sym_uint56] = ACTIONS(508),
    [anon_sym_uint64] = ACTIONS(508),
    [anon_sym_uint72] = ACTIONS(508),
    [anon_sym_uint80] = ACTIONS(508),
    [anon_sym_uint88] = ACTIONS(508),
    [anon_sym_uint96] = ACTIONS(508),
    [anon_sym_uint104] = ACTIONS(508),
    [anon_sym_uint112] = ACTIONS(508),
    [anon_sym_uint120] = ACTIONS(508),
    [anon_sym_uint128] = ACTIONS(508),
    [anon_sym_uint136] = ACTIONS(508),
    [anon_sym_uint144] = ACTIONS(508),
    [anon_sym_uint152] = ACTIONS(508),
    [anon_sym_uint160] = ACTIONS(508),
    [anon_sym_uint168] = ACTIONS(508),
    [anon_sym_uint176] = ACTIONS(508),
    [anon_sym_uint184] = ACTIONS(508),
    [anon_sym_uint192] = ACTIONS(508),
    [anon_sym_uint200] = ACTIONS(508),
    [anon_sym_uint208] = ACTIONS(508),
    [anon_sym_uint216] = ACTIONS(508),
    [anon_sym_uint224] = ACTIONS(508),
    [anon_sym_uint232] = ACTIONS(508),
    [anon_sym_uint240] = ACTIONS(508),
    [anon_sym_uint248] = ACTIONS(508),
    [anon_sym_uint256] = ACTIONS(508),
    [anon_sym_bytes] = ACTIONS(508),
    [anon_sym_bytes1] = ACTIONS(508),
    [anon_sym_bytes2] = ACTIONS(508),
    [anon_sym_bytes3] = ACTIONS(508),
    [anon_sym_bytes4] = ACTIONS(508),
    [anon_sym_bytes5] = ACTIONS(508),
    [anon_sym_bytes6] = ACTIONS(508),
    [anon_sym_bytes7] = ACTIONS(508),
    [anon_sym_bytes8] = ACTIONS(508),
    [anon_sym_bytes9] = ACTIONS(508),
    [anon_sym_bytes10] = ACTIONS(508),
    [anon_sym_bytes11] = ACTIONS(508),
    [anon_sym_bytes12] = ACTIONS(508),
    [anon_sym_bytes13] = ACTIONS(508),
    [anon_sym_bytes14] = ACTIONS(508),
    [anon_sym_bytes15] = ACTIONS(508),
    [anon_sym_bytes16] = ACTIONS(508),
    [anon_sym_bytes17] = ACTIONS(508),
    [anon_sym_bytes18] = ACTIONS(508),
    [anon_sym_bytes19] = ACTIONS(508),
    [anon_sym_bytes20] = ACTIONS(508),
    [anon_sym_bytes21] = ACTIONS(508),
    [anon_sym_bytes22] = ACTIONS(508),
    [anon_sym_bytes23] = ACTIONS(508),
    [anon_sym_bytes24] = ACTIONS(508),
    [anon_sym_bytes25] = ACTIONS(508),
    [anon_sym_bytes26] = ACTIONS(508),
    [anon_sym_bytes27] = ACTIONS(508),
    [anon_sym_bytes28] = ACTIONS(508),
    [anon_sym_bytes29] = ACTIONS(508),
    [anon_sym_bytes30] = ACTIONS(508),
    [anon_sym_bytes31] = ACTIONS(508),
    [anon_sym_bytes32] = ACTIONS(508),
    [anon_sym_fixed] = ACTIONS(508),
    [aux_sym__fixed_token1] = ACTIONS(508),
    [anon_sym_ufixed] = ACTIONS(508),
    [aux_sym__ufixed_token1] = ACTIONS(508),
    [aux_sym__decimal_number_token1] = ACTIONS(508),
    [aux_sym__decimal_number_token2] = ACTIONS(510),
    [aux_sym__hex_number_token1] = ACTIONS(510),
    [anon_sym_hex] = ACTIONS(508),
    [anon_sym_DQUOTE] = ACTIONS(510),
    [anon_sym_SQUOTE] = ACTIONS(510),
    [anon_sym_unicode] = ACTIONS(508),
    [sym_comment] = ACTIONS(3),
  },
  [98] = {
    [sym_identifier] = ACTIONS(512),
    [anon_sym_DASH] = ACTIONS(512),
    [anon_sym_TILDE] = ACTIONS(514),
    [anon_sym_LBRACE] = ACTIONS(514),
    [anon_sym_RBRACE] = ACTIONS(514),
    [anon_sym_type] = ACTIONS(512),
    [anon_sym_LPAREN] = ACTIONS(514),
    [anon_sym_for] = ACTIONS(512),
    [anon_sym_assembly] = ACTIONS(512),
    [anon_sym_break] = ACTIONS(512),
    [anon_sym_continue] = ACTIONS(512),
    [anon_sym_true] = ACTIONS(512),
    [anon_sym_false] = ACTIONS(512),
    [anon_sym_if] = ACTIONS(512),
    [anon_sym_function] = ACTIONS(512),
    [anon_sym_byte] = ACTIONS(512),
    [anon_sym_address] = ACTIONS(512),
    [anon_sym_return] = ACTIONS(512),
    [anon_sym_revert] = ACTIONS(512),
    [sym__unchecked] = ACTIONS(512),
    [anon_sym_var] = ACTIONS(512),
    [anon_sym_else] = ACTIONS(512),
    [anon_sym_while] = ACTIONS(512),
    [anon_sym_do] = ACTIONS(512),
    [anon_sym_try] = ACTIONS(512),
    [anon_sym_emit] = ACTIONS(512),
    [anon_sym_payable] = ACTIONS(512),
    [anon_sym_new] = ACTIONS(512),
    [anon_sym_LBRACK] = ACTIONS(514),
    [anon_sym_PLUS] = ACTIONS(512),
    [anon_sym_BANG] = ACTIONS(514),
    [anon_sym_delete] = ACTIONS(512),
    [anon_sym_PLUS_PLUS] = ACTIONS(514),
    [anon_sym_DASH_DASH] = ACTIONS(514),
    [anon_sym_mapping] = ACTIONS(512),
    [anon_sym_bool] = ACTIONS(512),
    [anon_sym_string] = ACTIONS(512),
    [anon_sym_int] = ACTIONS(512),
    [anon_sym_int8] = ACTIONS(512),
    [anon_sym_int16] = ACTIONS(512),
    [anon_sym_int24] = ACTIONS(512),
    [anon_sym_int32] = ACTIONS(512),
    [anon_sym_int40] = ACTIONS(512),
    [anon_sym_int48] = ACTIONS(512),
    [anon_sym_int56] = ACTIONS(512),
    [anon_sym_int64] = ACTIONS(512),
    [anon_sym_int72] = ACTIONS(512),
    [anon_sym_int80] = ACTIONS(512),
    [anon_sym_int88] = ACTIONS(512),
    [anon_sym_int96] = ACTIONS(512),
    [anon_sym_int104] = ACTIONS(512),
    [anon_sym_int112] = ACTIONS(512),
    [anon_sym_int120] = ACTIONS(512),
    [anon_sym_int128] = ACTIONS(512),
    [anon_sym_int136] = ACTIONS(512),
    [anon_sym_int144] = ACTIONS(512),
    [anon_sym_int152] = ACTIONS(512),
    [anon_sym_int160] = ACTIONS(512),
    [anon_sym_int168] = ACTIONS(512),
    [anon_sym_int176] = ACTIONS(512),
    [anon_sym_int184] = ACTIONS(512),
    [anon_sym_int192] = ACTIONS(512),
    [anon_sym_int200] = ACTIONS(512),
    [anon_sym_int208] = ACTIONS(512),
    [anon_sym_int216] = ACTIONS(512),
    [anon_sym_int224] = ACTIONS(512),
    [anon_sym_int232] = ACTIONS(512),
    [anon_sym_int240] = ACTIONS(512),
    [anon_sym_int248] = ACTIONS(512),
    [anon_sym_int256] = ACTIONS(512),
    [anon_sym_uint] = ACTIONS(512),
    [anon_sym_uint8] = ACTIONS(512),
    [anon_sym_uint16] = ACTIONS(512),
    [anon_sym_uint24] = ACTIONS(512),
    [anon_sym_uint32] = ACTIONS(512),
    [anon_sym_uint40] = ACTIONS(512),
    [anon_sym_uint48] = ACTIONS(512),
    [anon_sym_uint56] = ACTIONS(512),
    [anon_sym_uint64] = ACTIONS(512),
    [anon_sym_uint72] = ACTIONS(512),
    [anon_sym_uint80] = ACTIONS(512),
    [anon_sym_uint88] = ACTIONS(512),
    [anon_sym_uint96] = ACTIONS(512),
    [anon_sym_uint104] = ACTIONS(512),
    [anon_sym_uint112] = ACTIONS(512),
    [anon_sym_uint120] = ACTIONS(512),
    [anon_sym_uint128] = ACTIONS(512),
    [anon_sym_uint136] = ACTIONS(512),
    [anon_sym_uint144] = ACTIONS(512),
    [anon_sym_uint152] = ACTIONS(512),
    [anon_sym_uint160] = ACTIONS(512),
    [anon_sym_uint168] = ACTIONS(512),
    [anon_sym_uint176] = ACTIONS(512),
    [anon_sym_uint184] = ACTIONS(512),
    [anon_sym_uint192] = ACTIONS(512),
    [anon_sym_uint200] = ACTIONS(512),
    [anon_sym_uint208] = ACTIONS(512),
    [anon_sym_uint216] = ACTIONS(512),
    [anon_sym_uint224] = ACTIONS(512),
    [anon_sym_uint232] = ACTIONS(512),
    [anon_sym_uint240] = ACTIONS(512),
    [anon_sym_uint248] = ACTIONS(512),
    [anon_sym_uint256] = ACTIONS(512),
    [anon_sym_bytes] = ACTIONS(512),
    [anon_sym_bytes1] = ACTIONS(512),
    [anon_sym_bytes2] = ACTIONS(512),
    [anon_sym_bytes3] = ACTIONS(512),
    [anon_sym_bytes4] = ACTIONS(512),
    [anon_sym_bytes5] = ACTIONS(512),
    [anon_sym_bytes6] = ACTIONS(512),
    [anon_sym_bytes7] = ACTIONS(512),
    [anon_sym_bytes8] = ACTIONS(512),
    [anon_sym_bytes9] = ACTIONS(512),
    [anon_sym_bytes10] = ACTIONS(512),
    [anon_sym_bytes11] = ACTIONS(512),
    [anon_sym_bytes12] = ACTIONS(512),
    [anon_sym_bytes13] = ACTIONS(512),
    [anon_sym_bytes14] = ACTIONS(512),
    [anon_sym_bytes15] = ACTIONS(512),
    [anon_sym_bytes16] = ACTIONS(512),
    [anon_sym_bytes17] = ACTIONS(512),
    [anon_sym_bytes18] = ACTIONS(512),
    [anon_sym_bytes19] = ACTIONS(512),
    [anon_sym_bytes20] = ACTIONS(512),
    [anon_sym_bytes21] = ACTIONS(512),
    [anon_sym_bytes22] = ACTIONS(512),
    [anon_sym_bytes23] = ACTIONS(512),
    [anon_sym_bytes24] = ACTIONS(512),
    [anon_sym_bytes25] = ACTIONS(512),
    [anon_sym_bytes26] = ACTIONS(512),
    [anon_sym_bytes27] = ACTIONS(512),
    [anon_sym_bytes28] = ACTIONS(512),
    [anon_sym_bytes29] = ACTIONS(512),
    [anon_sym_bytes30] = ACTIONS(512),
    [anon_sym_bytes31] = ACTIONS(512),
    [anon_sym_bytes32] = ACTIONS(512),
    [anon_sym_fixed] = ACTIONS(512),
    [aux_sym__fixed_token1] = ACTIONS(512),
    [anon_sym_ufixed] = ACTIONS(512),
    [aux_sym__ufixed_token1] = ACTIONS(512),
    [aux_sym__decimal_number_token1] = ACTIONS(512),
    [aux_sym__decimal_number_token2] = ACTIONS(514),
    [aux_sym__hex_number_token1] = ACTIONS(514),
    [anon_sym_hex] = ACTIONS(512),
    [anon_sym_DQUOTE] = ACTIONS(514),
    [anon_sym_SQUOTE] = ACTIONS(514),
    [anon_sym_unicode] = ACTIONS(512),
    [sym_comment] = ACTIONS(3),
  },
  [99] = {
    [sym_identifier] = ACTIONS(516),
    [anon_sym_DASH] = ACTIONS(516),
    [anon_sym_TILDE] = ACTIONS(518),
    [anon_sym_LBRACE] = ACTIONS(518),
    [anon_sym_RBRACE] = ACTIONS(518),
    [anon_sym_type] = ACTIONS(516),
    [anon_sym_LPAREN] = ACTIONS(518),
    [anon_sym_for] = ACTIONS(516),
    [anon_sym_assembly] = ACTIONS(516),
    [anon_sym_break] = ACTIONS(516),
    [anon_sym_continue] = ACTIONS(516),
    [anon_sym_true] = ACTIONS(516),
    [anon_sym_false] = ACTIONS(516),
    [anon_sym_if] = ACTIONS(516),
    [anon_sym_function] = ACTIONS(516),
    [anon_sym_byte] = ACTIONS(516),
    [anon_sym_address] = ACTIONS(516),
    [anon_sym_return] = ACTIONS(516),
    [anon_sym_revert] = ACTIONS(516),
    [sym__unchecked] = ACTIONS(516),
    [anon_sym_var] = ACTIONS(516),
    [anon_sym_else] = ACTIONS(516),
    [anon_sym_while] = ACTIONS(516),
    [anon_sym_do] = ACTIONS(516),
    [anon_sym_try] = ACTIONS(516),
    [anon_sym_emit] = ACTIONS(516),
    [anon_sym_payable] = ACTIONS(516),
    [anon_sym_new] = ACTIONS(516),
    [anon_sym_LBRACK] = ACTIONS(518),
    [anon_sym_PLUS] = ACTIONS(516),
    [anon_sym_BANG] = ACTIONS(518),
    [anon_sym_delete] = ACTIONS(516),
    [anon_sym_PLUS_PLUS] = ACTIONS(518),
    [anon_sym_DASH_DASH] = ACTIONS(518),
    [anon_sym_mapping] = ACTIONS(516),
    [anon_sym_bool] = ACTIONS(516),
    [anon_sym_string] = ACTIONS(516),
    [anon_sym_int] = ACTIONS(516),
    [anon_sym_int8] = ACTIONS(516),
    [anon_sym_int16] = ACTIONS(516),
    [anon_sym_int24] = ACTIONS(516),
    [anon_sym_int32] = ACTIONS(516),
    [anon_sym_int40] = ACTIONS(516),
    [anon_sym_int48] = ACTIONS(516),
    [anon_sym_int56] = ACTIONS(516),
    [anon_sym_int64] = ACTIONS(516),
    [anon_sym_int72] = ACTIONS(516),
    [anon_sym_int80] = ACTIONS(516),
    [anon_sym_int88] = ACTIONS(516),
    [anon_sym_int96] = ACTIONS(516),
    [anon_sym_int104] = ACTIONS(516),
    [anon_sym_int112] = ACTIONS(516),
    [anon_sym_int120] = ACTIONS(516),
    [anon_sym_int128] = ACTIONS(516),
    [anon_sym_int136] = ACTIONS(516),
    [anon_sym_int144] = ACTIONS(516),
    [anon_sym_int152] = ACTIONS(516),
    [anon_sym_int160] = ACTIONS(516),
    [anon_sym_int168] = ACTIONS(516),
    [anon_sym_int176] = ACTIONS(516),
    [anon_sym_int184] = ACTIONS(516),
    [anon_sym_int192] = ACTIONS(516),
    [anon_sym_int200] = ACTIONS(516),
    [anon_sym_int208] = ACTIONS(516),
    [anon_sym_int216] = ACTIONS(516),
    [anon_sym_int224] = ACTIONS(516),
    [anon_sym_int232] = ACTIONS(516),
    [anon_sym_int240] = ACTIONS(516),
    [anon_sym_int248] = ACTIONS(516),
    [anon_sym_int256] = ACTIONS(516),
    [anon_sym_uint] = ACTIONS(516),
    [anon_sym_uint8] = ACTIONS(516),
    [anon_sym_uint16] = ACTIONS(516),
    [anon_sym_uint24] = ACTIONS(516),
    [anon_sym_uint32] = ACTIONS(516),
    [anon_sym_uint40] = ACTIONS(516),
    [anon_sym_uint48] = ACTIONS(516),
    [anon_sym_uint56] = ACTIONS(516),
    [anon_sym_uint64] = ACTIONS(516),
    [anon_sym_uint72] = ACTIONS(516),
    [anon_sym_uint80] = ACTIONS(516),
    [anon_sym_uint88] = ACTIONS(516),
    [anon_sym_uint96] = ACTIONS(516),
    [anon_sym_uint104] = ACTIONS(516),
    [anon_sym_uint112] = ACTIONS(516),
    [anon_sym_uint120] = ACTIONS(516),
    [anon_sym_uint128] = ACTIONS(516),
    [anon_sym_uint136] = ACTIONS(516),
    [anon_sym_uint144] = ACTIONS(516),
    [anon_sym_uint152] = ACTIONS(516),
    [anon_sym_uint160] = ACTIONS(516),
    [anon_sym_uint168] = ACTIONS(516),
    [anon_sym_uint176] = ACTIONS(516),
    [anon_sym_uint184] = ACTIONS(516),
    [anon_sym_uint192] = ACTIONS(516),
    [anon_sym_uint200] = ACTIONS(516),
    [anon_sym_uint208] = ACTIONS(516),
    [anon_sym_uint216] = ACTIONS(516),
    [anon_sym_uint224] = ACTIONS(516),
    [anon_sym_uint232] = ACTIONS(516),
    [anon_sym_uint240] = ACTIONS(516),
    [anon_sym_uint248] = ACTIONS(516),
    [anon_sym_uint256] = ACTIONS(516),
    [anon_sym_bytes] = ACTIONS(516),
    [anon_sym_bytes1] = ACTIONS(516),
    [anon_sym_bytes2] = ACTIONS(516),
    [anon_sym_bytes3] = ACTIONS(516),
    [anon_sym_bytes4] = ACTIONS(516),
    [anon_sym_bytes5] = ACTIONS(516),
    [anon_sym_bytes6] = ACTIONS(516),
    [anon_sym_bytes7] = ACTIONS(516),
    [anon_sym_bytes8] = ACTIONS(516),
    [anon_sym_bytes9] = ACTIONS(516),
    [anon_sym_bytes10] = ACTIONS(516),
    [anon_sym_bytes11] = ACTIONS(516),
    [anon_sym_bytes12] = ACTIONS(516),
    [anon_sym_bytes13] = ACTIONS(516),
    [anon_sym_bytes14] = ACTIONS(516),
    [anon_sym_bytes15] = ACTIONS(516),
    [anon_sym_bytes16] = ACTIONS(516),
    [anon_sym_bytes17] = ACTIONS(516),
    [anon_sym_bytes18] = ACTIONS(516),
    [anon_sym_bytes19] = ACTIONS(516),
    [anon_sym_bytes20] = ACTIONS(516),
    [anon_sym_bytes21] = ACTIONS(516),
    [anon_sym_bytes22] = ACTIONS(516),
    [anon_sym_bytes23] = ACTIONS(516),
    [anon_sym_bytes24] = ACTIONS(516),
    [anon_sym_bytes25] = ACTIONS(516),
    [anon_sym_bytes26] = ACTIONS(516),
    [anon_sym_bytes27] = ACTIONS(516),
    [anon_sym_bytes28] = ACTIONS(516),
    [anon_sym_bytes29] = ACTIONS(516),
    [anon_sym_bytes30] = ACTIONS(516),
    [anon_sym_bytes31] = ACTIONS(516),
    [anon_sym_bytes32] = ACTIONS(516),
    [anon_sym_fixed] = ACTIONS(516),
    [aux_sym__fixed_token1] = ACTIONS(516),
    [anon_sym_ufixed] = ACTIONS(516),
    [aux_sym__ufixed_token1] = ACTIONS(516),
    [aux_sym__decimal_number_token1] = ACTIONS(516),
    [aux_sym__decimal_number_token2] = ACTIONS(518),
    [aux_sym__hex_number_token1] = ACTIONS(518),
    [anon_sym_hex] = ACTIONS(516),
    [anon_sym_DQUOTE] = ACTIONS(518),
    [anon_sym_SQUOTE] = ACTIONS(518),
    [anon_sym_unicode] = ACTIONS(516),
    [sym_comment] = ACTIONS(3),
  },
  [100] = {
    [sym_identifier] = ACTIONS(520),
    [anon_sym_DASH] = ACTIONS(520),
    [anon_sym_TILDE] = ACTIONS(522),
    [anon_sym_LBRACE] = ACTIONS(522),
    [anon_sym_RBRACE] = ACTIONS(522),
    [anon_sym_type] = ACTIONS(520),
    [anon_sym_LPAREN] = ACTIONS(522),
    [anon_sym_for] = ACTIONS(520),
    [anon_sym_assembly] = ACTIONS(520),
    [anon_sym_break] = ACTIONS(520),
    [anon_sym_continue] = ACTIONS(520),
    [anon_sym_true] = ACTIONS(520),
    [anon_sym_false] = ACTIONS(520),
    [anon_sym_if] = ACTIONS(520),
    [anon_sym_function] = ACTIONS(520),
    [anon_sym_byte] = ACTIONS(520),
    [anon_sym_address] = ACTIONS(520),
    [anon_sym_return] = ACTIONS(520),
    [anon_sym_revert] = ACTIONS(520),
    [sym__unchecked] = ACTIONS(520),
    [anon_sym_var] = ACTIONS(520),
    [anon_sym_else] = ACTIONS(520),
    [anon_sym_while] = ACTIONS(520),
    [anon_sym_do] = ACTIONS(520),
    [anon_sym_try] = ACTIONS(520),
    [anon_sym_emit] = ACTIONS(520),
    [anon_sym_payable] = ACTIONS(520),
    [anon_sym_new] = ACTIONS(520),
    [anon_sym_LBRACK] = ACTIONS(522),
    [anon_sym_PLUS] = ACTIONS(520),
    [anon_sym_BANG] = ACTIONS(522),
    [anon_sym_delete] = ACTIONS(520),
    [anon_sym_PLUS_PLUS] = ACTIONS(522),
    [anon_sym_DASH_DASH] = ACTIONS(522),
    [anon_sym_mapping] = ACTIONS(520),
    [anon_sym_bool] = ACTIONS(520),
    [anon_sym_string] = ACTIONS(520),
    [anon_sym_int] = ACTIONS(520),
    [anon_sym_int8] = ACTIONS(520),
    [anon_sym_int16] = ACTIONS(520),
    [anon_sym_int24] = ACTIONS(520),
    [anon_sym_int32] = ACTIONS(520),
    [anon_sym_int40] = ACTIONS(520),
    [anon_sym_int48] = ACTIONS(520),
    [anon_sym_int56] = ACTIONS(520),
    [anon_sym_int64] = ACTIONS(520),
    [anon_sym_int72] = ACTIONS(520),
    [anon_sym_int80] = ACTIONS(520),
    [anon_sym_int88] = ACTIONS(520),
    [anon_sym_int96] = ACTIONS(520),
    [anon_sym_int104] = ACTIONS(520),
    [anon_sym_int112] = ACTIONS(520),
    [anon_sym_int120] = ACTIONS(520),
    [anon_sym_int128] = ACTIONS(520),
    [anon_sym_int136] = ACTIONS(520),
    [anon_sym_int144] = ACTIONS(520),
    [anon_sym_int152] = ACTIONS(520),
    [anon_sym_int160] = ACTIONS(520),
    [anon_sym_int168] = ACTIONS(520),
    [anon_sym_int176] = ACTIONS(520),
    [anon_sym_int184] = ACTIONS(520),
    [anon_sym_int192] = ACTIONS(520),
    [anon_sym_int200] = ACTIONS(520),
    [anon_sym_int208] = ACTIONS(520),
    [anon_sym_int216] = ACTIONS(520),
    [anon_sym_int224] = ACTIONS(520),
    [anon_sym_int232] = ACTIONS(520),
    [anon_sym_int240] = ACTIONS(520),
    [anon_sym_int248] = ACTIONS(520),
    [anon_sym_int256] = ACTIONS(520),
    [anon_sym_uint] = ACTIONS(520),
    [anon_sym_uint8] = ACTIONS(520),
    [anon_sym_uint16] = ACTIONS(520),
    [anon_sym_uint24] = ACTIONS(520),
    [anon_sym_uint32] = ACTIONS(520),
    [anon_sym_uint40] = ACTIONS(520),
    [anon_sym_uint48] = ACTIONS(520),
    [anon_sym_uint56] = ACTIONS(520),
    [anon_sym_uint64] = ACTIONS(520),
    [anon_sym_uint72] = ACTIONS(520),
    [anon_sym_uint80] = ACTIONS(520),
    [anon_sym_uint88] = ACTIONS(520),
    [anon_sym_uint96] = ACTIONS(520),
    [anon_sym_uint104] = ACTIONS(520),
    [anon_sym_uint112] = ACTIONS(520),
    [anon_sym_uint120] = ACTIONS(520),
    [anon_sym_uint128] = ACTIONS(520),
    [anon_sym_uint136] = ACTIONS(520),
    [anon_sym_uint144] = ACTIONS(520),
    [anon_sym_uint152] = ACTIONS(520),
    [anon_sym_uint160] = ACTIONS(520),
    [anon_sym_uint168] = ACTIONS(520),
    [anon_sym_uint176] = ACTIONS(520),
    [anon_sym_uint184] = ACTIONS(520),
    [anon_sym_uint192] = ACTIONS(520),
    [anon_sym_uint200] = ACTIONS(520),
    [anon_sym_uint208] = ACTIONS(520),
    [anon_sym_uint216] = ACTIONS(520),
    [anon_sym_uint224] = ACTIONS(520),
    [anon_sym_uint232] = ACTIONS(520),
    [anon_sym_uint240] = ACTIONS(520),
    [anon_sym_uint248] = ACTIONS(520),
    [anon_sym_uint256] = ACTIONS(520),
    [anon_sym_bytes] = ACTIONS(520),
    [anon_sym_bytes1] = ACTIONS(520),
    [anon_sym_bytes2] = ACTIONS(520),
    [anon_sym_bytes3] = ACTIONS(520),
    [anon_sym_bytes4] = ACTIONS(520),
    [anon_sym_bytes5] = ACTIONS(520),
    [anon_sym_bytes6] = ACTIONS(520),
    [anon_sym_bytes7] = ACTIONS(520),
    [anon_sym_bytes8] = ACTIONS(520),
    [anon_sym_bytes9] = ACTIONS(520),
    [anon_sym_bytes10] = ACTIONS(520),
    [anon_sym_bytes11] = ACTIONS(520),
    [anon_sym_bytes12] = ACTIONS(520),
    [anon_sym_bytes13] = ACTIONS(520),
    [anon_sym_bytes14] = ACTIONS(520),
    [anon_sym_bytes15] = ACTIONS(520),
    [anon_sym_bytes16] = ACTIONS(520),
    [anon_sym_bytes17] = ACTIONS(520),
    [anon_sym_bytes18] = ACTIONS(520),
    [anon_sym_bytes19] = ACTIONS(520),
    [anon_sym_bytes20] = ACTIONS(520),
    [anon_sym_bytes21] = ACTIONS(520),
    [anon_sym_bytes22] = ACTIONS(520),
    [anon_sym_bytes23] = ACTIONS(520),
    [anon_sym_bytes24] = ACTIONS(520),
    [anon_sym_bytes25] = ACTIONS(520),
    [anon_sym_bytes26] = ACTIONS(520),
    [anon_sym_bytes27] = ACTIONS(520),
    [anon_sym_bytes28] = ACTIONS(520),
    [anon_sym_bytes29] = ACTIONS(520),
    [anon_sym_bytes30] = ACTIONS(520),
    [anon_sym_bytes31] = ACTIONS(520),
    [anon_sym_bytes32] = ACTIONS(520),
    [anon_sym_fixed] = ACTIONS(520),
    [aux_sym__fixed_token1] = ACTIONS(520),
    [anon_sym_ufixed] = ACTIONS(520),
    [aux_sym__ufixed_token1] = ACTIONS(520),
    [aux_sym__decimal_number_token1] = ACTIONS(520),
    [aux_sym__decimal_number_token2] = ACTIONS(522),
    [aux_sym__hex_number_token1] = ACTIONS(522),
    [anon_sym_hex] = ACTIONS(520),
    [anon_sym_DQUOTE] = ACTIONS(522),
    [anon_sym_SQUOTE] = ACTIONS(522),
    [anon_sym_unicode] = ACTIONS(520),
    [sym_comment] = ACTIONS(3),
  },
  [101] = {
    [sym_identifier] = ACTIONS(524),
    [anon_sym_DASH] = ACTIONS(524),
    [anon_sym_TILDE] = ACTIONS(526),
    [anon_sym_LBRACE] = ACTIONS(526),
    [anon_sym_RBRACE] = ACTIONS(526),
    [anon_sym_type] = ACTIONS(524),
    [anon_sym_LPAREN] = ACTIONS(526),
    [anon_sym_for] = ACTIONS(524),
    [anon_sym_assembly] = ACTIONS(524),
    [anon_sym_break] = ACTIONS(524),
    [anon_sym_continue] = ACTIONS(524),
    [anon_sym_true] = ACTIONS(524),
    [anon_sym_false] = ACTIONS(524),
    [anon_sym_if] = ACTIONS(524),
    [anon_sym_function] = ACTIONS(524),
    [anon_sym_byte] = ACTIONS(524),
    [anon_sym_address] = ACTIONS(524),
    [anon_sym_return] = ACTIONS(524),
    [anon_sym_revert] = ACTIONS(524),
    [sym__unchecked] = ACTIONS(524),
    [anon_sym_var] = ACTIONS(524),
    [anon_sym_else] = ACTIONS(524),
    [anon_sym_while] = ACTIONS(524),
    [anon_sym_do] = ACTIONS(524),
    [anon_sym_try] = ACTIONS(524),
    [anon_sym_emit] = ACTIONS(524),
    [anon_sym_payable] = ACTIONS(524),
    [anon_sym_new] = ACTIONS(524),
    [anon_sym_LBRACK] = ACTIONS(526),
    [anon_sym_PLUS] = ACTIONS(524),
    [anon_sym_BANG] = ACTIONS(526),
    [anon_sym_delete] = ACTIONS(524),
    [anon_sym_PLUS_PLUS] = ACTIONS(526),
    [anon_sym_DASH_DASH] = ACTIONS(526),
    [anon_sym_mapping] = ACTIONS(524),
    [anon_sym_bool] = ACTIONS(524),
    [anon_sym_string] = ACTIONS(524),
    [anon_sym_int] = ACTIONS(524),
    [anon_sym_int8] = ACTIONS(524),
    [anon_sym_int16] = ACTIONS(524),
    [anon_sym_int24] = ACTIONS(524),
    [anon_sym_int32] = ACTIONS(524),
    [anon_sym_int40] = ACTIONS(524),
    [anon_sym_int48] = ACTIONS(524),
    [anon_sym_int56] = ACTIONS(524),
    [anon_sym_int64] = ACTIONS(524),
    [anon_sym_int72] = ACTIONS(524),
    [anon_sym_int80] = ACTIONS(524),
    [anon_sym_int88] = ACTIONS(524),
    [anon_sym_int96] = ACTIONS(524),
    [anon_sym_int104] = ACTIONS(524),
    [anon_sym_int112] = ACTIONS(524),
    [anon_sym_int120] = ACTIONS(524),
    [anon_sym_int128] = ACTIONS(524),
    [anon_sym_int136] = ACTIONS(524),
    [anon_sym_int144] = ACTIONS(524),
    [anon_sym_int152] = ACTIONS(524),
    [anon_sym_int160] = ACTIONS(524),
    [anon_sym_int168] = ACTIONS(524),
    [anon_sym_int176] = ACTIONS(524),
    [anon_sym_int184] = ACTIONS(524),
    [anon_sym_int192] = ACTIONS(524),
    [anon_sym_int200] = ACTIONS(524),
    [anon_sym_int208] = ACTIONS(524),
    [anon_sym_int216] = ACTIONS(524),
    [anon_sym_int224] = ACTIONS(524),
    [anon_sym_int232] = ACTIONS(524),
    [anon_sym_int240] = ACTIONS(524),
    [anon_sym_int248] = ACTIONS(524),
    [anon_sym_int256] = ACTIONS(524),
    [anon_sym_uint] = ACTIONS(524),
    [anon_sym_uint8] = ACTIONS(524),
    [anon_sym_uint16] = ACTIONS(524),
    [anon_sym_uint24] = ACTIONS(524),
    [anon_sym_uint32] = ACTIONS(524),
    [anon_sym_uint40] = ACTIONS(524),
    [anon_sym_uint48] = ACTIONS(524),
    [anon_sym_uint56] = ACTIONS(524),
    [anon_sym_uint64] = ACTIONS(524),
    [anon_sym_uint72] = ACTIONS(524),
    [anon_sym_uint80] = ACTIONS(524),
    [anon_sym_uint88] = ACTIONS(524),
    [anon_sym_uint96] = ACTIONS(524),
    [anon_sym_uint104] = ACTIONS(524),
    [anon_sym_uint112] = ACTIONS(524),
    [anon_sym_uint120] = ACTIONS(524),
    [anon_sym_uint128] = ACTIONS(524),
    [anon_sym_uint136] = ACTIONS(524),
    [anon_sym_uint144] = ACTIONS(524),
    [anon_sym_uint152] = ACTIONS(524),
    [anon_sym_uint160] = ACTIONS(524),
    [anon_sym_uint168] = ACTIONS(524),
    [anon_sym_uint176] = ACTIONS(524),
    [anon_sym_uint184] = ACTIONS(524),
    [anon_sym_uint192] = ACTIONS(524),
    [anon_sym_uint200] = ACTIONS(524),
    [anon_sym_uint208] = ACTIONS(524),
    [anon_sym_uint216] = ACTIONS(524),
    [anon_sym_uint224] = ACTIONS(524),
    [anon_sym_uint232] = ACTIONS(524),
    [anon_sym_uint240] = ACTIONS(524),
    [anon_sym_uint248] = ACTIONS(524),
    [anon_sym_uint256] = ACTIONS(524),
    [anon_sym_bytes] = ACTIONS(524),
    [anon_sym_bytes1] = ACTIONS(524),
    [anon_sym_bytes2] = ACTIONS(524),
    [anon_sym_bytes3] = ACTIONS(524),
    [anon_sym_bytes4] = ACTIONS(524),
    [anon_sym_bytes5] = ACTIONS(524),
    [anon_sym_bytes6] = ACTIONS(524),
    [anon_sym_bytes7] = ACTIONS(524),
    [anon_sym_bytes8] = ACTIONS(524),
    [anon_sym_bytes9] = ACTIONS(524),
    [anon_sym_bytes10] = ACTIONS(524),
    [anon_sym_bytes11] = ACTIONS(524),
    [anon_sym_bytes12] = ACTIONS(524),
    [anon_sym_bytes13] = ACTIONS(524),
    [anon_sym_bytes14] = ACTIONS(524),
    [anon_sym_bytes15] = ACTIONS(524),
    [anon_sym_bytes16] = ACTIONS(524),
    [anon_sym_bytes17] = ACTIONS(524),
    [anon_sym_bytes18] = ACTIONS(524),
    [anon_sym_bytes19] = ACTIONS(524),
    [anon_sym_bytes20] = ACTIONS(524),
    [anon_sym_bytes21] = ACTIONS(524),
    [anon_sym_bytes22] = ACTIONS(524),
    [anon_sym_bytes23] = ACTIONS(524),
    [anon_sym_bytes24] = ACTIONS(524),
    [anon_sym_bytes25] = ACTIONS(524),
    [anon_sym_bytes26] = ACTIONS(524),
    [anon_sym_bytes27] = ACTIONS(524),
    [anon_sym_bytes28] = ACTIONS(524),
    [anon_sym_bytes29] = ACTIONS(524),
    [anon_sym_bytes30] = ACTIONS(524),
    [anon_sym_bytes31] = ACTIONS(524),
    [anon_sym_bytes32] = ACTIONS(524),
    [anon_sym_fixed] = ACTIONS(524),
    [aux_sym__fixed_token1] = ACTIONS(524),
    [anon_sym_ufixed] = ACTIONS(524),
    [aux_sym__ufixed_token1] = ACTIONS(524),
    [aux_sym__decimal_number_token1] = ACTIONS(524),
    [aux_sym__decimal_number_token2] = ACTIONS(526),
    [aux_sym__hex_number_token1] = ACTIONS(526),
    [anon_sym_hex] = ACTIONS(524),
    [anon_sym_DQUOTE] = ACTIONS(526),
    [anon_sym_SQUOTE] = ACTIONS(526),
    [anon_sym_unicode] = ACTIONS(524),
    [sym_comment] = ACTIONS(3),
  },
  [102] = {
    [sym_identifier] = ACTIONS(528),
    [anon_sym_DASH] = ACTIONS(528),
    [anon_sym_TILDE] = ACTIONS(530),
    [anon_sym_LBRACE] = ACTIONS(530),
    [anon_sym_RBRACE] = ACTIONS(530),
    [anon_sym_type] = ACTIONS(528),
    [anon_sym_LPAREN] = ACTIONS(530),
    [anon_sym_for] = ACTIONS(528),
    [anon_sym_assembly] = ACTIONS(528),
    [anon_sym_break] = ACTIONS(528),
    [anon_sym_continue] = ACTIONS(528),
    [anon_sym_true] = ACTIONS(528),
    [anon_sym_false] = ACTIONS(528),
    [anon_sym_if] = ACTIONS(528),
    [anon_sym_function] = ACTIONS(528),
    [anon_sym_byte] = ACTIONS(528),
    [anon_sym_address] = ACTIONS(528),
    [anon_sym_return] = ACTIONS(528),
    [anon_sym_revert] = ACTIONS(528),
    [sym__unchecked] = ACTIONS(528),
    [anon_sym_var] = ACTIONS(528),
    [anon_sym_else] = ACTIONS(528),
    [anon_sym_while] = ACTIONS(528),
    [anon_sym_do] = ACTIONS(528),
    [anon_sym_try] = ACTIONS(528),
    [anon_sym_emit] = ACTIONS(528),
    [anon_sym_payable] = ACTIONS(528),
    [anon_sym_new] = ACTIONS(528),
    [anon_sym_LBRACK] = ACTIONS(530),
    [anon_sym_PLUS] = ACTIONS(528),
    [anon_sym_BANG] = ACTIONS(530),
    [anon_sym_delete] = ACTIONS(528),
    [anon_sym_PLUS_PLUS] = ACTIONS(530),
    [anon_sym_DASH_DASH] = ACTIONS(530),
    [anon_sym_mapping] = ACTIONS(528),
    [anon_sym_bool] = ACTIONS(528),
    [anon_sym_string] = ACTIONS(528),
    [anon_sym_int] = ACTIONS(528),
    [anon_sym_int8] = ACTIONS(528),
    [anon_sym_int16] = ACTIONS(528),
    [anon_sym_int24] = ACTIONS(528),
    [anon_sym_int32] = ACTIONS(528),
    [anon_sym_int40] = ACTIONS(528),
    [anon_sym_int48] = ACTIONS(528),
    [anon_sym_int56] = ACTIONS(528),
    [anon_sym_int64] = ACTIONS(528),
    [anon_sym_int72] = ACTIONS(528),
    [anon_sym_int80] = ACTIONS(528),
    [anon_sym_int88] = ACTIONS(528),
    [anon_sym_int96] = ACTIONS(528),
    [anon_sym_int104] = ACTIONS(528),
    [anon_sym_int112] = ACTIONS(528),
    [anon_sym_int120] = ACTIONS(528),
    [anon_sym_int128] = ACTIONS(528),
    [anon_sym_int136] = ACTIONS(528),
    [anon_sym_int144] = ACTIONS(528),
    [anon_sym_int152] = ACTIONS(528),
    [anon_sym_int160] = ACTIONS(528),
    [anon_sym_int168] = ACTIONS(528),
    [anon_sym_int176] = ACTIONS(528),
    [anon_sym_int184] = ACTIONS(528),
    [anon_sym_int192] = ACTIONS(528),
    [anon_sym_int200] = ACTIONS(528),
    [anon_sym_int208] = ACTIONS(528),
    [anon_sym_int216] = ACTIONS(528),
    [anon_sym_int224] = ACTIONS(528),
    [anon_sym_int232] = ACTIONS(528),
    [anon_sym_int240] = ACTIONS(528),
    [anon_sym_int248] = ACTIONS(528),
    [anon_sym_int256] = ACTIONS(528),
    [anon_sym_uint] = ACTIONS(528),
    [anon_sym_uint8] = ACTIONS(528),
    [anon_sym_uint16] = ACTIONS(528),
    [anon_sym_uint24] = ACTIONS(528),
    [anon_sym_uint32] = ACTIONS(528),
    [anon_sym_uint40] = ACTIONS(528),
    [anon_sym_uint48] = ACTIONS(528),
    [anon_sym_uint56] = ACTIONS(528),
    [anon_sym_uint64] = ACTIONS(528),
    [anon_sym_uint72] = ACTIONS(528),
    [anon_sym_uint80] = ACTIONS(528),
    [anon_sym_uint88] = ACTIONS(528),
    [anon_sym_uint96] = ACTIONS(528),
    [anon_sym_uint104] = ACTIONS(528),
    [anon_sym_uint112] = ACTIONS(528),
    [anon_sym_uint120] = ACTIONS(528),
    [anon_sym_uint128] = ACTIONS(528),
    [anon_sym_uint136] = ACTIONS(528),
    [anon_sym_uint144] = ACTIONS(528),
    [anon_sym_uint152] = ACTIONS(528),
    [anon_sym_uint160] = ACTIONS(528),
    [anon_sym_uint168] = ACTIONS(528),
    [anon_sym_uint176] = ACTIONS(528),
    [anon_sym_uint184] = ACTIONS(528),
    [anon_sym_uint192] = ACTIONS(528),
    [anon_sym_uint200] = ACTIONS(528),
    [anon_sym_uint208] = ACTIONS(528),
    [anon_sym_uint216] = ACTIONS(528),
    [anon_sym_uint224] = ACTIONS(528),
    [anon_sym_uint232] = ACTIONS(528),
    [anon_sym_uint240] = ACTIONS(528),
    [anon_sym_uint248] = ACTIONS(528),
    [anon_sym_uint256] = ACTIONS(528),
    [anon_sym_bytes] = ACTIONS(528),
    [anon_sym_bytes1] = ACTIONS(528),
    [anon_sym_bytes2] = ACTIONS(528),
    [anon_sym_bytes3] = ACTIONS(528),
    [anon_sym_bytes4] = ACTIONS(528),
    [anon_sym_bytes5] = ACTIONS(528),
    [anon_sym_bytes6] = ACTIONS(528),
    [anon_sym_bytes7] = ACTIONS(528),
    [anon_sym_bytes8] = ACTIONS(528),
    [anon_sym_bytes9] = ACTIONS(528),
    [anon_sym_bytes10] = ACTIONS(528),
    [anon_sym_bytes11] = ACTIONS(528),
    [anon_sym_bytes12] = ACTIONS(528),
    [anon_sym_bytes13] = ACTIONS(528),
    [anon_sym_bytes14] = ACTIONS(528),
    [anon_sym_bytes15] = ACTIONS(528),
    [anon_sym_bytes16] = ACTIONS(528),
    [anon_sym_bytes17] = ACTIONS(528),
    [anon_sym_bytes18] = ACTIONS(528),
    [anon_sym_bytes19] = ACTIONS(528),
    [anon_sym_bytes20] = ACTIONS(528),
    [anon_sym_bytes21] = ACTIONS(528),
    [anon_sym_bytes22] = ACTIONS(528),
    [anon_sym_bytes23] = ACTIONS(528),
    [anon_sym_bytes24] = ACTIONS(528),
    [anon_sym_bytes25] = ACTIONS(528),
    [anon_sym_bytes26] = ACTIONS(528),
    [anon_sym_bytes27] = ACTIONS(528),
    [anon_sym_bytes28] = ACTIONS(528),
    [anon_sym_bytes29] = ACTIONS(528),
    [anon_sym_bytes30] = ACTIONS(528),
    [anon_sym_bytes31] = ACTIONS(528),
    [anon_sym_bytes32] = ACTIONS(528),
    [anon_sym_fixed] = ACTIONS(528),
    [aux_sym__fixed_token1] = ACTIONS(528),
    [anon_sym_ufixed] = ACTIONS(528),
    [aux_sym__ufixed_token1] = ACTIONS(528),
    [aux_sym__decimal_number_token1] = ACTIONS(528),
    [aux_sym__decimal_number_token2] = ACTIONS(530),
    [aux_sym__hex_number_token1] = ACTIONS(530),
    [anon_sym_hex] = ACTIONS(528),
    [anon_sym_DQUOTE] = ACTIONS(530),
    [anon_sym_SQUOTE] = ACTIONS(530),
    [anon_sym_unicode] = ACTIONS(528),
    [sym_comment] = ACTIONS(3),
  },
  [103] = {
    [sym_identifier] = ACTIONS(532),
    [anon_sym_DASH] = ACTIONS(532),
    [anon_sym_TILDE] = ACTIONS(534),
    [anon_sym_LBRACE] = ACTIONS(534),
    [anon_sym_RBRACE] = ACTIONS(534),
    [anon_sym_type] = ACTIONS(532),
    [anon_sym_LPAREN] = ACTIONS(534),
    [anon_sym_for] = ACTIONS(532),
    [anon_sym_assembly] = ACTIONS(532),
    [anon_sym_break] = ACTIONS(532),
    [anon_sym_continue] = ACTIONS(532),
    [anon_sym_true] = ACTIONS(532),
    [anon_sym_false] = ACTIONS(532),
    [anon_sym_if] = ACTIONS(532),
    [anon_sym_function] = ACTIONS(532),
    [anon_sym_byte] = ACTIONS(532),
    [anon_sym_address] = ACTIONS(532),
    [anon_sym_return] = ACTIONS(532),
    [anon_sym_revert] = ACTIONS(532),
    [sym__unchecked] = ACTIONS(532),
    [anon_sym_var] = ACTIONS(532),
    [anon_sym_else] = ACTIONS(532),
    [anon_sym_while] = ACTIONS(532),
    [anon_sym_do] = ACTIONS(532),
    [anon_sym_try] = ACTIONS(532),
    [anon_sym_emit] = ACTIONS(532),
    [anon_sym_payable] = ACTIONS(532),
    [anon_sym_new] = ACTIONS(532),
    [anon_sym_LBRACK] = ACTIONS(534),
    [anon_sym_PLUS] = ACTIONS(532),
    [anon_sym_BANG] = ACTIONS(534),
    [anon_sym_delete] = ACTIONS(532),
    [anon_sym_PLUS_PLUS] = ACTIONS(534),
    [anon_sym_DASH_DASH] = ACTIONS(534),
    [anon_sym_mapping] = ACTIONS(532),
    [anon_sym_bool] = ACTIONS(532),
    [anon_sym_string] = ACTIONS(532),
    [anon_sym_int] = ACTIONS(532),
    [anon_sym_int8] = ACTIONS(532),
    [anon_sym_int16] = ACTIONS(532),
    [anon_sym_int24] = ACTIONS(532),
    [anon_sym_int32] = ACTIONS(532),
    [anon_sym_int40] = ACTIONS(532),
    [anon_sym_int48] = ACTIONS(532),
    [anon_sym_int56] = ACTIONS(532),
    [anon_sym_int64] = ACTIONS(532),
    [anon_sym_int72] = ACTIONS(532),
    [anon_sym_int80] = ACTIONS(532),
    [anon_sym_int88] = ACTIONS(532),
    [anon_sym_int96] = ACTIONS(532),
    [anon_sym_int104] = ACTIONS(532),
    [anon_sym_int112] = ACTIONS(532),
    [anon_sym_int120] = ACTIONS(532),
    [anon_sym_int128] = ACTIONS(532),
    [anon_sym_int136] = ACTIONS(532),
    [anon_sym_int144] = ACTIONS(532),
    [anon_sym_int152] = ACTIONS(532),
    [anon_sym_int160] = ACTIONS(532),
    [anon_sym_int168] = ACTIONS(532),
    [anon_sym_int176] = ACTIONS(532),
    [anon_sym_int184] = ACTIONS(532),
    [anon_sym_int192] = ACTIONS(532),
    [anon_sym_int200] = ACTIONS(532),
    [anon_sym_int208] = ACTIONS(532),
    [anon_sym_int216] = ACTIONS(532),
    [anon_sym_int224] = ACTIONS(532),
    [anon_sym_int232] = ACTIONS(532),
    [anon_sym_int240] = ACTIONS(532),
    [anon_sym_int248] = ACTIONS(532),
    [anon_sym_int256] = ACTIONS(532),
    [anon_sym_uint] = ACTIONS(532),
    [anon_sym_uint8] = ACTIONS(532),
    [anon_sym_uint16] = ACTIONS(532),
    [anon_sym_uint24] = ACTIONS(532),
    [anon_sym_uint32] = ACTIONS(532),
    [anon_sym_uint40] = ACTIONS(532),
    [anon_sym_uint48] = ACTIONS(532),
    [anon_sym_uint56] = ACTIONS(532),
    [anon_sym_uint64] = ACTIONS(532),
    [anon_sym_uint72] = ACTIONS(532),
    [anon_sym_uint80] = ACTIONS(532),
    [anon_sym_uint88] = ACTIONS(532),
    [anon_sym_uint96] = ACTIONS(532),
    [anon_sym_uint104] = ACTIONS(532),
    [anon_sym_uint112] = ACTIONS(532),
    [anon_sym_uint120] = ACTIONS(532),
    [anon_sym_uint128] = ACTIONS(532),
    [anon_sym_uint136] = ACTIONS(532),
    [anon_sym_uint144] = ACTIONS(532),
    [anon_sym_uint152] = ACTIONS(532),
    [anon_sym_uint160] = ACTIONS(532),
    [anon_sym_uint168] = ACTIONS(532),
    [anon_sym_uint176] = ACTIONS(532),
    [anon_sym_uint184] = ACTIONS(532),
    [anon_sym_uint192] = ACTIONS(532),
    [anon_sym_uint200] = ACTIONS(532),
    [anon_sym_uint208] = ACTIONS(532),
    [anon_sym_uint216] = ACTIONS(532),
    [anon_sym_uint224] = ACTIONS(532),
    [anon_sym_uint232] = ACTIONS(532),
    [anon_sym_uint240] = ACTIONS(532),
    [anon_sym_uint248] = ACTIONS(532),
    [anon_sym_uint256] = ACTIONS(532),
    [anon_sym_bytes] = ACTIONS(532),
    [anon_sym_bytes1] = ACTIONS(532),
    [anon_sym_bytes2] = ACTIONS(532),
    [anon_sym_bytes3] = ACTIONS(532),
    [anon_sym_bytes4] = ACTIONS(532),
    [anon_sym_bytes5] = ACTIONS(532),
    [anon_sym_bytes6] = ACTIONS(532),
    [anon_sym_bytes7] = ACTIONS(532),
    [anon_sym_bytes8] = ACTIONS(532),
    [anon_sym_bytes9] = ACTIONS(532),
    [anon_sym_bytes10] = ACTIONS(532),
    [anon_sym_bytes11] = ACTIONS(532),
    [anon_sym_bytes12] = ACTIONS(532),
    [anon_sym_bytes13] = ACTIONS(532),
    [anon_sym_bytes14] = ACTIONS(532),
    [anon_sym_bytes15] = ACTIONS(532),
    [anon_sym_bytes16] = ACTIONS(532),
    [anon_sym_bytes17] = ACTIONS(532),
    [anon_sym_bytes18] = ACTIONS(532),
    [anon_sym_bytes19] = ACTIONS(532),
    [anon_sym_bytes20] = ACTIONS(532),
    [anon_sym_bytes21] = ACTIONS(532),
    [anon_sym_bytes22] = ACTIONS(532),
    [anon_sym_bytes23] = ACTIONS(532),
    [anon_sym_bytes24] = ACTIONS(532),
    [anon_sym_bytes25] = ACTIONS(532),
    [anon_sym_bytes26] = ACTIONS(532),
    [anon_sym_bytes27] = ACTIONS(532),
    [anon_sym_bytes28] = ACTIONS(532),
    [anon_sym_bytes29] = ACTIONS(532),
    [anon_sym_bytes30] = ACTIONS(532),
    [anon_sym_bytes31] = ACTIONS(532),
    [anon_sym_bytes32] = ACTIONS(532),
    [anon_sym_fixed] = ACTIONS(532),
    [aux_sym__fixed_token1] = ACTIONS(532),
    [anon_sym_ufixed] = ACTIONS(532),
    [aux_sym__ufixed_token1] = ACTIONS(532),
    [aux_sym__decimal_number_token1] = ACTIONS(532),
    [aux_sym__decimal_number_token2] = ACTIONS(534),
    [aux_sym__hex_number_token1] = ACTIONS(534),
    [anon_sym_hex] = ACTIONS(532),
    [anon_sym_DQUOTE] = ACTIONS(534),
    [anon_sym_SQUOTE] = ACTIONS(534),
    [anon_sym_unicode] = ACTIONS(532),
    [sym_comment] = ACTIONS(3),
  },
  [104] = {
    [sym_struct_member] = STATE(109),
    [sym_type_name] = STATE(702),
    [sym__array_type] = STATE(321),
    [sym__function_type] = STATE(323),
    [sym_user_defined_type] = STATE(321),
    [sym__identifier_path] = STATE(308),
    [sym__mapping] = STATE(317),
    [sym_primitive_type] = STATE(321),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [aux_sym_struct_declaration_repeat1] = STATE(109),
    [sym_identifier] = ACTIONS(7),
    [anon_sym_RBRACE] = ACTIONS(536),
    [anon_sym_function] = ACTIONS(65),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_mapping] = ACTIONS(35),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [sym_comment] = ACTIONS(3),
  },
  [105] = {
    [sym_variable_declaration] = STATE(685),
    [sym_type_name] = STATE(470),
    [sym__array_type] = STATE(321),
    [sym__function_type] = STATE(323),
    [sym_user_defined_type] = STATE(321),
    [sym__identifier_path] = STATE(308),
    [sym__mapping] = STATE(317),
    [sym_primitive_type] = STATE(321),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym_identifier] = ACTIONS(7),
    [anon_sym_COMMA] = ACTIONS(538),
    [anon_sym_RPAREN] = ACTIONS(540),
    [anon_sym_function] = ACTIONS(65),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_mapping] = ACTIONS(35),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [sym_comment] = ACTIONS(3),
  },
  [106] = {
    [sym_struct_member] = STATE(109),
    [sym_type_name] = STATE(702),
    [sym__array_type] = STATE(321),
    [sym__function_type] = STATE(323),
    [sym_user_defined_type] = STATE(321),
    [sym__identifier_path] = STATE(308),
    [sym__mapping] = STATE(317),
    [sym_primitive_type] = STATE(321),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [aux_sym_struct_declaration_repeat1] = STATE(109),
    [sym_identifier] = ACTIONS(7),
    [anon_sym_RBRACE] = ACTIONS(542),
    [anon_sym_function] = ACTIONS(65),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_mapping] = ACTIONS(35),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [sym_comment] = ACTIONS(3),
  },
  [107] = {
    [sym_variable_declaration] = STATE(685),
    [sym_type_name] = STATE(470),
    [sym__array_type] = STATE(321),
    [sym__function_type] = STATE(323),
    [sym_user_defined_type] = STATE(321),
    [sym__identifier_path] = STATE(308),
    [sym__mapping] = STATE(317),
    [sym_primitive_type] = STATE(321),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym_identifier] = ACTIONS(7),
    [anon_sym_COMMA] = ACTIONS(538),
    [anon_sym_RPAREN] = ACTIONS(544),
    [anon_sym_function] = ACTIONS(65),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_mapping] = ACTIONS(35),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [sym_comment] = ACTIONS(3),
  },
  [108] = {
    [sym_variable_declaration] = STATE(685),
    [sym_type_name] = STATE(470),
    [sym__array_type] = STATE(321),
    [sym__function_type] = STATE(323),
    [sym_user_defined_type] = STATE(321),
    [sym__identifier_path] = STATE(308),
    [sym__mapping] = STATE(317),
    [sym_primitive_type] = STATE(321),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym_identifier] = ACTIONS(7),
    [anon_sym_COMMA] = ACTIONS(538),
    [anon_sym_RPAREN] = ACTIONS(538),
    [anon_sym_function] = ACTIONS(65),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_mapping] = ACTIONS(35),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [sym_comment] = ACTIONS(3),
  },
  [109] = {
    [sym_struct_member] = STATE(109),
    [sym_type_name] = STATE(702),
    [sym__array_type] = STATE(321),
    [sym__function_type] = STATE(323),
    [sym_user_defined_type] = STATE(321),
    [sym__identifier_path] = STATE(308),
    [sym__mapping] = STATE(317),
    [sym_primitive_type] = STATE(321),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [aux_sym_struct_declaration_repeat1] = STATE(109),
    [sym_identifier] = ACTIONS(546),
    [anon_sym_RBRACE] = ACTIONS(549),
    [anon_sym_function] = ACTIONS(551),
    [anon_sym_byte] = ACTIONS(554),
    [anon_sym_address] = ACTIONS(557),
    [anon_sym_var] = ACTIONS(554),
    [anon_sym_mapping] = ACTIONS(560),
    [anon_sym_bool] = ACTIONS(554),
    [anon_sym_string] = ACTIONS(554),
    [anon_sym_int] = ACTIONS(554),
    [anon_sym_int8] = ACTIONS(554),
    [anon_sym_int16] = ACTIONS(554),
    [anon_sym_int24] = ACTIONS(554),
    [anon_sym_int32] = ACTIONS(554),
    [anon_sym_int40] = ACTIONS(554),
    [anon_sym_int48] = ACTIONS(554),
    [anon_sym_int56] = ACTIONS(554),
    [anon_sym_int64] = ACTIONS(554),
    [anon_sym_int72] = ACTIONS(554),
    [anon_sym_int80] = ACTIONS(554),
    [anon_sym_int88] = ACTIONS(554),
    [anon_sym_int96] = ACTIONS(554),
    [anon_sym_int104] = ACTIONS(554),
    [anon_sym_int112] = ACTIONS(554),
    [anon_sym_int120] = ACTIONS(554),
    [anon_sym_int128] = ACTIONS(554),
    [anon_sym_int136] = ACTIONS(554),
    [anon_sym_int144] = ACTIONS(554),
    [anon_sym_int152] = ACTIONS(554),
    [anon_sym_int160] = ACTIONS(554),
    [anon_sym_int168] = ACTIONS(554),
    [anon_sym_int176] = ACTIONS(554),
    [anon_sym_int184] = ACTIONS(554),
    [anon_sym_int192] = ACTIONS(554),
    [anon_sym_int200] = ACTIONS(554),
    [anon_sym_int208] = ACTIONS(554),
    [anon_sym_int216] = ACTIONS(554),
    [anon_sym_int224] = ACTIONS(554),
    [anon_sym_int232] = ACTIONS(554),
    [anon_sym_int240] = ACTIONS(554),
    [anon_sym_int248] = ACTIONS(554),
    [anon_sym_int256] = ACTIONS(554),
    [anon_sym_uint] = ACTIONS(554),
    [anon_sym_uint8] = ACTIONS(554),
    [anon_sym_uint16] = ACTIONS(554),
    [anon_sym_uint24] = ACTIONS(554),
    [anon_sym_uint32] = ACTIONS(554),
    [anon_sym_uint40] = ACTIONS(554),
    [anon_sym_uint48] = ACTIONS(554),
    [anon_sym_uint56] = ACTIONS(554),
    [anon_sym_uint64] = ACTIONS(554),
    [anon_sym_uint72] = ACTIONS(554),
    [anon_sym_uint80] = ACTIONS(554),
    [anon_sym_uint88] = ACTIONS(554),
    [anon_sym_uint96] = ACTIONS(554),
    [anon_sym_uint104] = ACTIONS(554),
    [anon_sym_uint112] = ACTIONS(554),
    [anon_sym_uint120] = ACTIONS(554),
    [anon_sym_uint128] = ACTIONS(554),
    [anon_sym_uint136] = ACTIONS(554),
    [anon_sym_uint144] = ACTIONS(554),
    [anon_sym_uint152] = ACTIONS(554),
    [anon_sym_uint160] = ACTIONS(554),
    [anon_sym_uint168] = ACTIONS(554),
    [anon_sym_uint176] = ACTIONS(554),
    [anon_sym_uint184] = ACTIONS(554),
    [anon_sym_uint192] = ACTIONS(554),
    [anon_sym_uint200] = ACTIONS(554),
    [anon_sym_uint208] = ACTIONS(554),
    [anon_sym_uint216] = ACTIONS(554),
    [anon_sym_uint224] = ACTIONS(554),
    [anon_sym_uint232] = ACTIONS(554),
    [anon_sym_uint240] = ACTIONS(554),
    [anon_sym_uint248] = ACTIONS(554),
    [anon_sym_uint256] = ACTIONS(554),
    [anon_sym_bytes] = ACTIONS(554),
    [anon_sym_bytes1] = ACTIONS(554),
    [anon_sym_bytes2] = ACTIONS(554),
    [anon_sym_bytes3] = ACTIONS(554),
    [anon_sym_bytes4] = ACTIONS(554),
    [anon_sym_bytes5] = ACTIONS(554),
    [anon_sym_bytes6] = ACTIONS(554),
    [anon_sym_bytes7] = ACTIONS(554),
    [anon_sym_bytes8] = ACTIONS(554),
    [anon_sym_bytes9] = ACTIONS(554),
    [anon_sym_bytes10] = ACTIONS(554),
    [anon_sym_bytes11] = ACTIONS(554),
    [anon_sym_bytes12] = ACTIONS(554),
    [anon_sym_bytes13] = ACTIONS(554),
    [anon_sym_bytes14] = ACTIONS(554),
    [anon_sym_bytes15] = ACTIONS(554),
    [anon_sym_bytes16] = ACTIONS(554),
    [anon_sym_bytes17] = ACTIONS(554),
    [anon_sym_bytes18] = ACTIONS(554),
    [anon_sym_bytes19] = ACTIONS(554),
    [anon_sym_bytes20] = ACTIONS(554),
    [anon_sym_bytes21] = ACTIONS(554),
    [anon_sym_bytes22] = ACTIONS(554),
    [anon_sym_bytes23] = ACTIONS(554),
    [anon_sym_bytes24] = ACTIONS(554),
    [anon_sym_bytes25] = ACTIONS(554),
    [anon_sym_bytes26] = ACTIONS(554),
    [anon_sym_bytes27] = ACTIONS(554),
    [anon_sym_bytes28] = ACTIONS(554),
    [anon_sym_bytes29] = ACTIONS(554),
    [anon_sym_bytes30] = ACTIONS(554),
    [anon_sym_bytes31] = ACTIONS(554),
    [anon_sym_bytes32] = ACTIONS(554),
    [anon_sym_fixed] = ACTIONS(554),
    [aux_sym__fixed_token1] = ACTIONS(554),
    [anon_sym_ufixed] = ACTIONS(554),
    [aux_sym__ufixed_token1] = ACTIONS(554),
    [sym_comment] = ACTIONS(3),
  },
  [110] = {
    [sym_event_paramater] = STATE(522),
    [sym_type_name] = STATE(474),
    [sym__array_type] = STATE(321),
    [sym__function_type] = STATE(323),
    [sym_user_defined_type] = STATE(321),
    [sym__identifier_path] = STATE(308),
    [sym__mapping] = STATE(317),
    [sym_primitive_type] = STATE(321),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym_identifier] = ACTIONS(7),
    [anon_sym_RPAREN] = ACTIONS(563),
    [anon_sym_function] = ACTIONS(65),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_mapping] = ACTIONS(35),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [sym_comment] = ACTIONS(3),
  },
  [111] = {
    [sym_any_source_type] = STATE(778),
    [sym_type_name] = STATE(660),
    [sym__array_type] = STATE(321),
    [sym__function_type] = STATE(323),
    [sym_user_defined_type] = STATE(321),
    [sym__identifier_path] = STATE(308),
    [sym__mapping] = STATE(317),
    [sym_primitive_type] = STATE(321),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym_identifier] = ACTIONS(7),
    [anon_sym_STAR] = ACTIONS(565),
    [anon_sym_function] = ACTIONS(65),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_mapping] = ACTIONS(35),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [sym_comment] = ACTIONS(3),
  },
  [112] = {
    [sym_type_name] = STATE(460),
    [sym__array_type] = STATE(321),
    [sym__function_type] = STATE(323),
    [sym_parameter] = STATE(619),
    [sym_user_defined_type] = STATE(321),
    [sym__identifier_path] = STATE(308),
    [sym__mapping] = STATE(317),
    [sym_primitive_type] = STATE(321),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym_identifier] = ACTIONS(7),
    [anon_sym_RPAREN] = ACTIONS(567),
    [anon_sym_function] = ACTIONS(65),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_mapping] = ACTIONS(35),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [sym_comment] = ACTIONS(3),
  },
  [113] = {
    [sym_type_name] = STATE(460),
    [sym__array_type] = STATE(321),
    [sym__function_type] = STATE(323),
    [sym_parameter] = STATE(644),
    [sym_user_defined_type] = STATE(321),
    [sym__identifier_path] = STATE(308),
    [sym__mapping] = STATE(317),
    [sym_primitive_type] = STATE(321),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym_identifier] = ACTIONS(7),
    [anon_sym_RPAREN] = ACTIONS(569),
    [anon_sym_function] = ACTIONS(65),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_mapping] = ACTIONS(35),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [sym_comment] = ACTIONS(3),
  },
  [114] = {
    [sym_type_name] = STATE(464),
    [sym__array_type] = STATE(321),
    [sym__function_type] = STATE(323),
    [sym__nameless_parameter] = STATE(665),
    [sym_user_defined_type] = STATE(321),
    [sym__identifier_path] = STATE(308),
    [sym__mapping] = STATE(317),
    [sym_primitive_type] = STATE(321),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym_identifier] = ACTIONS(7),
    [anon_sym_RPAREN] = ACTIONS(571),
    [anon_sym_function] = ACTIONS(65),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_mapping] = ACTIONS(35),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [sym_comment] = ACTIONS(3),
  },
  [115] = {
    [sym_type_name] = STATE(460),
    [sym__array_type] = STATE(321),
    [sym__function_type] = STATE(323),
    [sym_parameter] = STATE(644),
    [sym_user_defined_type] = STATE(321),
    [sym__identifier_path] = STATE(308),
    [sym__mapping] = STATE(317),
    [sym_primitive_type] = STATE(321),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym_identifier] = ACTIONS(7),
    [anon_sym_RPAREN] = ACTIONS(573),
    [anon_sym_function] = ACTIONS(65),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_mapping] = ACTIONS(35),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [sym_comment] = ACTIONS(3),
  },
  [116] = {
    [sym_error_parameter] = STATE(572),
    [sym_type_name] = STATE(508),
    [sym__array_type] = STATE(321),
    [sym__function_type] = STATE(323),
    [sym_user_defined_type] = STATE(321),
    [sym__identifier_path] = STATE(308),
    [sym__mapping] = STATE(317),
    [sym_primitive_type] = STATE(321),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym_identifier] = ACTIONS(7),
    [anon_sym_RPAREN] = ACTIONS(575),
    [anon_sym_function] = ACTIONS(65),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_mapping] = ACTIONS(35),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [sym_comment] = ACTIONS(3),
  },
  [117] = {
    [sym_error_parameter] = STATE(688),
    [sym_type_name] = STATE(508),
    [sym__array_type] = STATE(321),
    [sym__function_type] = STATE(323),
    [sym_user_defined_type] = STATE(321),
    [sym__identifier_path] = STATE(308),
    [sym__mapping] = STATE(317),
    [sym_primitive_type] = STATE(321),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym_identifier] = ACTIONS(7),
    [anon_sym_RPAREN] = ACTIONS(577),
    [anon_sym_function] = ACTIONS(65),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_mapping] = ACTIONS(35),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [sym_comment] = ACTIONS(3),
  },
  [118] = {
    [sym_event_paramater] = STATE(664),
    [sym_type_name] = STATE(474),
    [sym__array_type] = STATE(321),
    [sym__function_type] = STATE(323),
    [sym_user_defined_type] = STATE(321),
    [sym__identifier_path] = STATE(308),
    [sym__mapping] = STATE(317),
    [sym_primitive_type] = STATE(321),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym_identifier] = ACTIONS(7),
    [anon_sym_RPAREN] = ACTIONS(579),
    [anon_sym_function] = ACTIONS(65),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_mapping] = ACTIONS(35),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [sym_comment] = ACTIONS(3),
  },
  [119] = {
    [sym_type_name] = STATE(464),
    [sym__array_type] = STATE(321),
    [sym__function_type] = STATE(323),
    [sym__nameless_parameter] = STATE(665),
    [sym_user_defined_type] = STATE(321),
    [sym__identifier_path] = STATE(308),
    [sym__mapping] = STATE(317),
    [sym_primitive_type] = STATE(321),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym_identifier] = ACTIONS(7),
    [anon_sym_RPAREN] = ACTIONS(581),
    [anon_sym_function] = ACTIONS(65),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_mapping] = ACTIONS(35),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [sym_comment] = ACTIONS(3),
  },
  [120] = {
    [sym_error_parameter] = STATE(688),
    [sym_type_name] = STATE(508),
    [sym__array_type] = STATE(321),
    [sym__function_type] = STATE(323),
    [sym_user_defined_type] = STATE(321),
    [sym__identifier_path] = STATE(308),
    [sym__mapping] = STATE(317),
    [sym_primitive_type] = STATE(321),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym_identifier] = ACTIONS(7),
    [anon_sym_RPAREN] = ACTIONS(583),
    [anon_sym_function] = ACTIONS(65),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_mapping] = ACTIONS(35),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [sym_comment] = ACTIONS(3),
  },
  [121] = {
    [sym_error_parameter] = STATE(529),
    [sym_type_name] = STATE(508),
    [sym__array_type] = STATE(321),
    [sym__function_type] = STATE(323),
    [sym_user_defined_type] = STATE(321),
    [sym__identifier_path] = STATE(308),
    [sym__mapping] = STATE(317),
    [sym_primitive_type] = STATE(321),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym_identifier] = ACTIONS(7),
    [anon_sym_RPAREN] = ACTIONS(585),
    [anon_sym_function] = ACTIONS(65),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_mapping] = ACTIONS(35),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [sym_comment] = ACTIONS(3),
  },
  [122] = {
    [sym_struct_member] = STATE(104),
    [sym_type_name] = STATE(702),
    [sym__array_type] = STATE(321),
    [sym__function_type] = STATE(323),
    [sym_user_defined_type] = STATE(321),
    [sym__identifier_path] = STATE(308),
    [sym__mapping] = STATE(317),
    [sym_primitive_type] = STATE(321),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [aux_sym_struct_declaration_repeat1] = STATE(104),
    [sym_identifier] = ACTIONS(7),
    [anon_sym_function] = ACTIONS(65),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_mapping] = ACTIONS(35),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [sym_comment] = ACTIONS(3),
  },
  [123] = {
    [sym_struct_member] = STATE(106),
    [sym_type_name] = STATE(702),
    [sym__array_type] = STATE(321),
    [sym__function_type] = STATE(323),
    [sym_user_defined_type] = STATE(321),
    [sym__identifier_path] = STATE(308),
    [sym__mapping] = STATE(317),
    [sym_primitive_type] = STATE(321),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [aux_sym_struct_declaration_repeat1] = STATE(106),
    [sym_identifier] = ACTIONS(7),
    [anon_sym_function] = ACTIONS(65),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_mapping] = ACTIONS(35),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [sym_comment] = ACTIONS(3),
  },
  [124] = {
    [sym_error_parameter] = STATE(688),
    [sym_type_name] = STATE(508),
    [sym__array_type] = STATE(321),
    [sym__function_type] = STATE(323),
    [sym_user_defined_type] = STATE(321),
    [sym__identifier_path] = STATE(308),
    [sym__mapping] = STATE(317),
    [sym_primitive_type] = STATE(321),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym_identifier] = ACTIONS(7),
    [anon_sym_RPAREN] = ACTIONS(587),
    [anon_sym_function] = ACTIONS(65),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_mapping] = ACTIONS(35),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [sym_comment] = ACTIONS(3),
  },
  [125] = {
    [sym_error_parameter] = STATE(688),
    [sym_type_name] = STATE(508),
    [sym__array_type] = STATE(321),
    [sym__function_type] = STATE(323),
    [sym_user_defined_type] = STATE(321),
    [sym__identifier_path] = STATE(308),
    [sym__mapping] = STATE(317),
    [sym_primitive_type] = STATE(321),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym_identifier] = ACTIONS(7),
    [anon_sym_RPAREN] = ACTIONS(589),
    [anon_sym_function] = ACTIONS(65),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_mapping] = ACTIONS(35),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [sym_comment] = ACTIONS(3),
  },
  [126] = {
    [sym_event_paramater] = STATE(664),
    [sym_type_name] = STATE(474),
    [sym__array_type] = STATE(321),
    [sym__function_type] = STATE(323),
    [sym_user_defined_type] = STATE(321),
    [sym__identifier_path] = STATE(308),
    [sym__mapping] = STATE(317),
    [sym_primitive_type] = STATE(321),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym_identifier] = ACTIONS(7),
    [anon_sym_RPAREN] = ACTIONS(591),
    [anon_sym_function] = ACTIONS(65),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_mapping] = ACTIONS(35),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [sym_comment] = ACTIONS(3),
  },
  [127] = {
    [sym_error_parameter] = STATE(688),
    [sym_type_name] = STATE(508),
    [sym__array_type] = STATE(321),
    [sym__function_type] = STATE(323),
    [sym_user_defined_type] = STATE(321),
    [sym__identifier_path] = STATE(308),
    [sym__mapping] = STATE(317),
    [sym_primitive_type] = STATE(321),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym_identifier] = ACTIONS(7),
    [anon_sym_function] = ACTIONS(65),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_mapping] = ACTIONS(35),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [sym_comment] = ACTIONS(3),
  },
  [128] = {
    [sym_type_name] = STATE(460),
    [sym__array_type] = STATE(321),
    [sym__function_type] = STATE(323),
    [sym_parameter] = STATE(644),
    [sym_user_defined_type] = STATE(321),
    [sym__identifier_path] = STATE(308),
    [sym__mapping] = STATE(317),
    [sym_primitive_type] = STATE(321),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym_identifier] = ACTIONS(7),
    [anon_sym_function] = ACTIONS(65),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_mapping] = ACTIONS(35),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [sym_comment] = ACTIONS(3),
  },
  [129] = {
    [sym_event_paramater] = STATE(664),
    [sym_type_name] = STATE(474),
    [sym__array_type] = STATE(321),
    [sym__function_type] = STATE(323),
    [sym_user_defined_type] = STATE(321),
    [sym__identifier_path] = STATE(308),
    [sym__mapping] = STATE(317),
    [sym_primitive_type] = STATE(321),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym_identifier] = ACTIONS(7),
    [anon_sym_function] = ACTIONS(65),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_mapping] = ACTIONS(35),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [sym_comment] = ACTIONS(3),
  },
  [130] = {
    [sym_type_name] = STATE(464),
    [sym__array_type] = STATE(321),
    [sym__function_type] = STATE(323),
    [sym__nameless_parameter] = STATE(665),
    [sym_user_defined_type] = STATE(321),
    [sym__identifier_path] = STATE(308),
    [sym__mapping] = STATE(317),
    [sym_primitive_type] = STATE(321),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym_identifier] = ACTIONS(7),
    [anon_sym_function] = ACTIONS(65),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_mapping] = ACTIONS(35),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [sym_comment] = ACTIONS(3),
  },
  [131] = {
    [sym_type_name] = STATE(464),
    [sym__array_type] = STATE(321),
    [sym__function_type] = STATE(323),
    [sym__nameless_parameter] = STATE(533),
    [sym_user_defined_type] = STATE(321),
    [sym__identifier_path] = STATE(308),
    [sym__mapping] = STATE(317),
    [sym_primitive_type] = STATE(321),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym_identifier] = ACTIONS(7),
    [anon_sym_function] = ACTIONS(65),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_mapping] = ACTIONS(35),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [sym_comment] = ACTIONS(3),
  },
  [132] = {
    [sym_type_name] = STATE(352),
    [sym__array_type] = STATE(321),
    [sym__function_type] = STATE(323),
    [sym_user_defined_type] = STATE(321),
    [sym__identifier_path] = STATE(308),
    [sym__mapping] = STATE(317),
    [sym_primitive_type] = STATE(321),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym_identifier] = ACTIONS(593),
    [anon_sym_function] = ACTIONS(65),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_mapping] = ACTIONS(35),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [sym_comment] = ACTIONS(3),
  },
  [133] = {
    [sym_type_name] = STATE(659),
    [sym__array_type] = STATE(321),
    [sym__function_type] = STATE(323),
    [sym_user_defined_type] = STATE(321),
    [sym__identifier_path] = STATE(308),
    [sym__mapping] = STATE(317),
    [sym_primitive_type] = STATE(321),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym_identifier] = ACTIONS(7),
    [anon_sym_function] = ACTIONS(65),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_mapping] = ACTIONS(35),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [sym_comment] = ACTIONS(3),
  },
  [134] = {
    [sym_type_name] = STATE(652),
    [sym__array_type] = STATE(321),
    [sym__function_type] = STATE(323),
    [sym_user_defined_type] = STATE(321),
    [sym__identifier_path] = STATE(308),
    [sym__mapping] = STATE(317),
    [sym_primitive_type] = STATE(321),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym_identifier] = ACTIONS(7),
    [anon_sym_function] = ACTIONS(65),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_mapping] = ACTIONS(35),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [sym_comment] = ACTIONS(3),
  },
  [135] = {
    [sym_identifier] = ACTIONS(595),
    [anon_sym_RBRACE] = ACTIONS(597),
    [anon_sym_type] = ACTIONS(595),
    [anon_sym_error] = ACTIONS(595),
    [anon_sym_struct] = ACTIONS(595),
    [anon_sym_enum] = ACTIONS(595),
    [anon_sym_event] = ACTIONS(595),
    [anon_sym_using] = ACTIONS(595),
    [anon_sym_function] = ACTIONS(595),
    [anon_sym_byte] = ACTIONS(595),
    [anon_sym_address] = ACTIONS(595),
    [anon_sym_var] = ACTIONS(595),
    [anon_sym_modifier] = ACTIONS(595),
    [anon_sym_constructor] = ACTIONS(595),
    [anon_sym_fallback] = ACTIONS(595),
    [anon_sym_receive] = ACTIONS(595),
    [anon_sym_mapping] = ACTIONS(595),
    [anon_sym_bool] = ACTIONS(595),
    [anon_sym_string] = ACTIONS(595),
    [anon_sym_int] = ACTIONS(595),
    [anon_sym_int8] = ACTIONS(595),
    [anon_sym_int16] = ACTIONS(595),
    [anon_sym_int24] = ACTIONS(595),
    [anon_sym_int32] = ACTIONS(595),
    [anon_sym_int40] = ACTIONS(595),
    [anon_sym_int48] = ACTIONS(595),
    [anon_sym_int56] = ACTIONS(595),
    [anon_sym_int64] = ACTIONS(595),
    [anon_sym_int72] = ACTIONS(595),
    [anon_sym_int80] = ACTIONS(595),
    [anon_sym_int88] = ACTIONS(595),
    [anon_sym_int96] = ACTIONS(595),
    [anon_sym_int104] = ACTIONS(595),
    [anon_sym_int112] = ACTIONS(595),
    [anon_sym_int120] = ACTIONS(595),
    [anon_sym_int128] = ACTIONS(595),
    [anon_sym_int136] = ACTIONS(595),
    [anon_sym_int144] = ACTIONS(595),
    [anon_sym_int152] = ACTIONS(595),
    [anon_sym_int160] = ACTIONS(595),
    [anon_sym_int168] = ACTIONS(595),
    [anon_sym_int176] = ACTIONS(595),
    [anon_sym_int184] = ACTIONS(595),
    [anon_sym_int192] = ACTIONS(595),
    [anon_sym_int200] = ACTIONS(595),
    [anon_sym_int208] = ACTIONS(595),
    [anon_sym_int216] = ACTIONS(595),
    [anon_sym_int224] = ACTIONS(595),
    [anon_sym_int232] = ACTIONS(595),
    [anon_sym_int240] = ACTIONS(595),
    [anon_sym_int248] = ACTIONS(595),
    [anon_sym_int256] = ACTIONS(595),
    [anon_sym_uint] = ACTIONS(595),
    [anon_sym_uint8] = ACTIONS(595),
    [anon_sym_uint16] = ACTIONS(595),
    [anon_sym_uint24] = ACTIONS(595),
    [anon_sym_uint32] = ACTIONS(595),
    [anon_sym_uint40] = ACTIONS(595),
    [anon_sym_uint48] = ACTIONS(595),
    [anon_sym_uint56] = ACTIONS(595),
    [anon_sym_uint64] = ACTIONS(595),
    [anon_sym_uint72] = ACTIONS(595),
    [anon_sym_uint80] = ACTIONS(595),
    [anon_sym_uint88] = ACTIONS(595),
    [anon_sym_uint96] = ACTIONS(595),
    [anon_sym_uint104] = ACTIONS(595),
    [anon_sym_uint112] = ACTIONS(595),
    [anon_sym_uint120] = ACTIONS(595),
    [anon_sym_uint128] = ACTIONS(595),
    [anon_sym_uint136] = ACTIONS(595),
    [anon_sym_uint144] = ACTIONS(595),
    [anon_sym_uint152] = ACTIONS(595),
    [anon_sym_uint160] = ACTIONS(595),
    [anon_sym_uint168] = ACTIONS(595),
    [anon_sym_uint176] = ACTIONS(595),
    [anon_sym_uint184] = ACTIONS(595),
    [anon_sym_uint192] = ACTIONS(595),
    [anon_sym_uint200] = ACTIONS(595),
    [anon_sym_uint208] = ACTIONS(595),
    [anon_sym_uint216] = ACTIONS(595),
    [anon_sym_uint224] = ACTIONS(595),
    [anon_sym_uint232] = ACTIONS(595),
    [anon_sym_uint240] = ACTIONS(595),
    [anon_sym_uint248] = ACTIONS(595),
    [anon_sym_uint256] = ACTIONS(595),
    [anon_sym_bytes] = ACTIONS(595),
    [anon_sym_bytes1] = ACTIONS(595),
    [anon_sym_bytes2] = ACTIONS(595),
    [anon_sym_bytes3] = ACTIONS(595),
    [anon_sym_bytes4] = ACTIONS(595),
    [anon_sym_bytes5] = ACTIONS(595),
    [anon_sym_bytes6] = ACTIONS(595),
    [anon_sym_bytes7] = ACTIONS(595),
    [anon_sym_bytes8] = ACTIONS(595),
    [anon_sym_bytes9] = ACTIONS(595),
    [anon_sym_bytes10] = ACTIONS(595),
    [anon_sym_bytes11] = ACTIONS(595),
    [anon_sym_bytes12] = ACTIONS(595),
    [anon_sym_bytes13] = ACTIONS(595),
    [anon_sym_bytes14] = ACTIONS(595),
    [anon_sym_bytes15] = ACTIONS(595),
    [anon_sym_bytes16] = ACTIONS(595),
    [anon_sym_bytes17] = ACTIONS(595),
    [anon_sym_bytes18] = ACTIONS(595),
    [anon_sym_bytes19] = ACTIONS(595),
    [anon_sym_bytes20] = ACTIONS(595),
    [anon_sym_bytes21] = ACTIONS(595),
    [anon_sym_bytes22] = ACTIONS(595),
    [anon_sym_bytes23] = ACTIONS(595),
    [anon_sym_bytes24] = ACTIONS(595),
    [anon_sym_bytes25] = ACTIONS(595),
    [anon_sym_bytes26] = ACTIONS(595),
    [anon_sym_bytes27] = ACTIONS(595),
    [anon_sym_bytes28] = ACTIONS(595),
    [anon_sym_bytes29] = ACTIONS(595),
    [anon_sym_bytes30] = ACTIONS(595),
    [anon_sym_bytes31] = ACTIONS(595),
    [anon_sym_bytes32] = ACTIONS(595),
    [anon_sym_fixed] = ACTIONS(595),
    [aux_sym__fixed_token1] = ACTIONS(595),
    [anon_sym_ufixed] = ACTIONS(595),
    [aux_sym__ufixed_token1] = ACTIONS(595),
    [sym_comment] = ACTIONS(3),
  },
  [136] = {
    [ts_builtin_sym_end] = ACTIONS(599),
    [sym_identifier] = ACTIONS(601),
    [anon_sym_pragma] = ACTIONS(601),
    [anon_sym_import] = ACTIONS(601),
    [anon_sym_type] = ACTIONS(601),
    [anon_sym_abstract] = ACTIONS(601),
    [anon_sym_contract] = ACTIONS(601),
    [anon_sym_error] = ACTIONS(601),
    [anon_sym_interface] = ACTIONS(601),
    [anon_sym_library] = ACTIONS(601),
    [anon_sym_struct] = ACTIONS(601),
    [anon_sym_enum] = ACTIONS(601),
    [anon_sym_function] = ACTIONS(601),
    [anon_sym_byte] = ACTIONS(601),
    [anon_sym_address] = ACTIONS(601),
    [anon_sym_var] = ACTIONS(601),
    [anon_sym_mapping] = ACTIONS(601),
    [anon_sym_bool] = ACTIONS(601),
    [anon_sym_string] = ACTIONS(601),
    [anon_sym_int] = ACTIONS(601),
    [anon_sym_int8] = ACTIONS(601),
    [anon_sym_int16] = ACTIONS(601),
    [anon_sym_int24] = ACTIONS(601),
    [anon_sym_int32] = ACTIONS(601),
    [anon_sym_int40] = ACTIONS(601),
    [anon_sym_int48] = ACTIONS(601),
    [anon_sym_int56] = ACTIONS(601),
    [anon_sym_int64] = ACTIONS(601),
    [anon_sym_int72] = ACTIONS(601),
    [anon_sym_int80] = ACTIONS(601),
    [anon_sym_int88] = ACTIONS(601),
    [anon_sym_int96] = ACTIONS(601),
    [anon_sym_int104] = ACTIONS(601),
    [anon_sym_int112] = ACTIONS(601),
    [anon_sym_int120] = ACTIONS(601),
    [anon_sym_int128] = ACTIONS(601),
    [anon_sym_int136] = ACTIONS(601),
    [anon_sym_int144] = ACTIONS(601),
    [anon_sym_int152] = ACTIONS(601),
    [anon_sym_int160] = ACTIONS(601),
    [anon_sym_int168] = ACTIONS(601),
    [anon_sym_int176] = ACTIONS(601),
    [anon_sym_int184] = ACTIONS(601),
    [anon_sym_int192] = ACTIONS(601),
    [anon_sym_int200] = ACTIONS(601),
    [anon_sym_int208] = ACTIONS(601),
    [anon_sym_int216] = ACTIONS(601),
    [anon_sym_int224] = ACTIONS(601),
    [anon_sym_int232] = ACTIONS(601),
    [anon_sym_int240] = ACTIONS(601),
    [anon_sym_int248] = ACTIONS(601),
    [anon_sym_int256] = ACTIONS(601),
    [anon_sym_uint] = ACTIONS(601),
    [anon_sym_uint8] = ACTIONS(601),
    [anon_sym_uint16] = ACTIONS(601),
    [anon_sym_uint24] = ACTIONS(601),
    [anon_sym_uint32] = ACTIONS(601),
    [anon_sym_uint40] = ACTIONS(601),
    [anon_sym_uint48] = ACTIONS(601),
    [anon_sym_uint56] = ACTIONS(601),
    [anon_sym_uint64] = ACTIONS(601),
    [anon_sym_uint72] = ACTIONS(601),
    [anon_sym_uint80] = ACTIONS(601),
    [anon_sym_uint88] = ACTIONS(601),
    [anon_sym_uint96] = ACTIONS(601),
    [anon_sym_uint104] = ACTIONS(601),
    [anon_sym_uint112] = ACTIONS(601),
    [anon_sym_uint120] = ACTIONS(601),
    [anon_sym_uint128] = ACTIONS(601),
    [anon_sym_uint136] = ACTIONS(601),
    [anon_sym_uint144] = ACTIONS(601),
    [anon_sym_uint152] = ACTIONS(601),
    [anon_sym_uint160] = ACTIONS(601),
    [anon_sym_uint168] = ACTIONS(601),
    [anon_sym_uint176] = ACTIONS(601),
    [anon_sym_uint184] = ACTIONS(601),
    [anon_sym_uint192] = ACTIONS(601),
    [anon_sym_uint200] = ACTIONS(601),
    [anon_sym_uint208] = ACTIONS(601),
    [anon_sym_uint216] = ACTIONS(601),
    [anon_sym_uint224] = ACTIONS(601),
    [anon_sym_uint232] = ACTIONS(601),
    [anon_sym_uint240] = ACTIONS(601),
    [anon_sym_uint248] = ACTIONS(601),
    [anon_sym_uint256] = ACTIONS(601),
    [anon_sym_bytes] = ACTIONS(601),
    [anon_sym_bytes1] = ACTIONS(601),
    [anon_sym_bytes2] = ACTIONS(601),
    [anon_sym_bytes3] = ACTIONS(601),
    [anon_sym_bytes4] = ACTIONS(601),
    [anon_sym_bytes5] = ACTIONS(601),
    [anon_sym_bytes6] = ACTIONS(601),
    [anon_sym_bytes7] = ACTIONS(601),
    [anon_sym_bytes8] = ACTIONS(601),
    [anon_sym_bytes9] = ACTIONS(601),
    [anon_sym_bytes10] = ACTIONS(601),
    [anon_sym_bytes11] = ACTIONS(601),
    [anon_sym_bytes12] = ACTIONS(601),
    [anon_sym_bytes13] = ACTIONS(601),
    [anon_sym_bytes14] = ACTIONS(601),
    [anon_sym_bytes15] = ACTIONS(601),
    [anon_sym_bytes16] = ACTIONS(601),
    [anon_sym_bytes17] = ACTIONS(601),
    [anon_sym_bytes18] = ACTIONS(601),
    [anon_sym_bytes19] = ACTIONS(601),
    [anon_sym_bytes20] = ACTIONS(601),
    [anon_sym_bytes21] = ACTIONS(601),
    [anon_sym_bytes22] = ACTIONS(601),
    [anon_sym_bytes23] = ACTIONS(601),
    [anon_sym_bytes24] = ACTIONS(601),
    [anon_sym_bytes25] = ACTIONS(601),
    [anon_sym_bytes26] = ACTIONS(601),
    [anon_sym_bytes27] = ACTIONS(601),
    [anon_sym_bytes28] = ACTIONS(601),
    [anon_sym_bytes29] = ACTIONS(601),
    [anon_sym_bytes30] = ACTIONS(601),
    [anon_sym_bytes31] = ACTIONS(601),
    [anon_sym_bytes32] = ACTIONS(601),
    [anon_sym_fixed] = ACTIONS(601),
    [aux_sym__fixed_token1] = ACTIONS(601),
    [anon_sym_ufixed] = ACTIONS(601),
    [aux_sym__ufixed_token1] = ACTIONS(601),
    [sym_comment] = ACTIONS(3),
  },
  [137] = {
    [sym_identifier] = ACTIONS(603),
    [anon_sym_RBRACE] = ACTIONS(605),
    [anon_sym_type] = ACTIONS(603),
    [anon_sym_error] = ACTIONS(603),
    [anon_sym_struct] = ACTIONS(603),
    [anon_sym_enum] = ACTIONS(603),
    [anon_sym_event] = ACTIONS(603),
    [anon_sym_using] = ACTIONS(603),
    [anon_sym_function] = ACTIONS(603),
    [anon_sym_byte] = ACTIONS(603),
    [anon_sym_address] = ACTIONS(603),
    [anon_sym_var] = ACTIONS(603),
    [anon_sym_modifier] = ACTIONS(603),
    [anon_sym_constructor] = ACTIONS(603),
    [anon_sym_fallback] = ACTIONS(603),
    [anon_sym_receive] = ACTIONS(603),
    [anon_sym_mapping] = ACTIONS(603),
    [anon_sym_bool] = ACTIONS(603),
    [anon_sym_string] = ACTIONS(603),
    [anon_sym_int] = ACTIONS(603),
    [anon_sym_int8] = ACTIONS(603),
    [anon_sym_int16] = ACTIONS(603),
    [anon_sym_int24] = ACTIONS(603),
    [anon_sym_int32] = ACTIONS(603),
    [anon_sym_int40] = ACTIONS(603),
    [anon_sym_int48] = ACTIONS(603),
    [anon_sym_int56] = ACTIONS(603),
    [anon_sym_int64] = ACTIONS(603),
    [anon_sym_int72] = ACTIONS(603),
    [anon_sym_int80] = ACTIONS(603),
    [anon_sym_int88] = ACTIONS(603),
    [anon_sym_int96] = ACTIONS(603),
    [anon_sym_int104] = ACTIONS(603),
    [anon_sym_int112] = ACTIONS(603),
    [anon_sym_int120] = ACTIONS(603),
    [anon_sym_int128] = ACTIONS(603),
    [anon_sym_int136] = ACTIONS(603),
    [anon_sym_int144] = ACTIONS(603),
    [anon_sym_int152] = ACTIONS(603),
    [anon_sym_int160] = ACTIONS(603),
    [anon_sym_int168] = ACTIONS(603),
    [anon_sym_int176] = ACTIONS(603),
    [anon_sym_int184] = ACTIONS(603),
    [anon_sym_int192] = ACTIONS(603),
    [anon_sym_int200] = ACTIONS(603),
    [anon_sym_int208] = ACTIONS(603),
    [anon_sym_int216] = ACTIONS(603),
    [anon_sym_int224] = ACTIONS(603),
    [anon_sym_int232] = ACTIONS(603),
    [anon_sym_int240] = ACTIONS(603),
    [anon_sym_int248] = ACTIONS(603),
    [anon_sym_int256] = ACTIONS(603),
    [anon_sym_uint] = ACTIONS(603),
    [anon_sym_uint8] = ACTIONS(603),
    [anon_sym_uint16] = ACTIONS(603),
    [anon_sym_uint24] = ACTIONS(603),
    [anon_sym_uint32] = ACTIONS(603),
    [anon_sym_uint40] = ACTIONS(603),
    [anon_sym_uint48] = ACTIONS(603),
    [anon_sym_uint56] = ACTIONS(603),
    [anon_sym_uint64] = ACTIONS(603),
    [anon_sym_uint72] = ACTIONS(603),
    [anon_sym_uint80] = ACTIONS(603),
    [anon_sym_uint88] = ACTIONS(603),
    [anon_sym_uint96] = ACTIONS(603),
    [anon_sym_uint104] = ACTIONS(603),
    [anon_sym_uint112] = ACTIONS(603),
    [anon_sym_uint120] = ACTIONS(603),
    [anon_sym_uint128] = ACTIONS(603),
    [anon_sym_uint136] = ACTIONS(603),
    [anon_sym_uint144] = ACTIONS(603),
    [anon_sym_uint152] = ACTIONS(603),
    [anon_sym_uint160] = ACTIONS(603),
    [anon_sym_uint168] = ACTIONS(603),
    [anon_sym_uint176] = ACTIONS(603),
    [anon_sym_uint184] = ACTIONS(603),
    [anon_sym_uint192] = ACTIONS(603),
    [anon_sym_uint200] = ACTIONS(603),
    [anon_sym_uint208] = ACTIONS(603),
    [anon_sym_uint216] = ACTIONS(603),
    [anon_sym_uint224] = ACTIONS(603),
    [anon_sym_uint232] = ACTIONS(603),
    [anon_sym_uint240] = ACTIONS(603),
    [anon_sym_uint248] = ACTIONS(603),
    [anon_sym_uint256] = ACTIONS(603),
    [anon_sym_bytes] = ACTIONS(603),
    [anon_sym_bytes1] = ACTIONS(603),
    [anon_sym_bytes2] = ACTIONS(603),
    [anon_sym_bytes3] = ACTIONS(603),
    [anon_sym_bytes4] = ACTIONS(603),
    [anon_sym_bytes5] = ACTIONS(603),
    [anon_sym_bytes6] = ACTIONS(603),
    [anon_sym_bytes7] = ACTIONS(603),
    [anon_sym_bytes8] = ACTIONS(603),
    [anon_sym_bytes9] = ACTIONS(603),
    [anon_sym_bytes10] = ACTIONS(603),
    [anon_sym_bytes11] = ACTIONS(603),
    [anon_sym_bytes12] = ACTIONS(603),
    [anon_sym_bytes13] = ACTIONS(603),
    [anon_sym_bytes14] = ACTIONS(603),
    [anon_sym_bytes15] = ACTIONS(603),
    [anon_sym_bytes16] = ACTIONS(603),
    [anon_sym_bytes17] = ACTIONS(603),
    [anon_sym_bytes18] = ACTIONS(603),
    [anon_sym_bytes19] = ACTIONS(603),
    [anon_sym_bytes20] = ACTIONS(603),
    [anon_sym_bytes21] = ACTIONS(603),
    [anon_sym_bytes22] = ACTIONS(603),
    [anon_sym_bytes23] = ACTIONS(603),
    [anon_sym_bytes24] = ACTIONS(603),
    [anon_sym_bytes25] = ACTIONS(603),
    [anon_sym_bytes26] = ACTIONS(603),
    [anon_sym_bytes27] = ACTIONS(603),
    [anon_sym_bytes28] = ACTIONS(603),
    [anon_sym_bytes29] = ACTIONS(603),
    [anon_sym_bytes30] = ACTIONS(603),
    [anon_sym_bytes31] = ACTIONS(603),
    [anon_sym_bytes32] = ACTIONS(603),
    [anon_sym_fixed] = ACTIONS(603),
    [aux_sym__fixed_token1] = ACTIONS(603),
    [anon_sym_ufixed] = ACTIONS(603),
    [aux_sym__ufixed_token1] = ACTIONS(603),
    [sym_comment] = ACTIONS(3),
  },
  [138] = {
    [sym_identifier] = ACTIONS(607),
    [anon_sym_RBRACE] = ACTIONS(609),
    [anon_sym_type] = ACTIONS(607),
    [anon_sym_error] = ACTIONS(607),
    [anon_sym_struct] = ACTIONS(607),
    [anon_sym_enum] = ACTIONS(607),
    [anon_sym_event] = ACTIONS(607),
    [anon_sym_using] = ACTIONS(607),
    [anon_sym_function] = ACTIONS(607),
    [anon_sym_byte] = ACTIONS(607),
    [anon_sym_address] = ACTIONS(607),
    [anon_sym_var] = ACTIONS(607),
    [anon_sym_modifier] = ACTIONS(607),
    [anon_sym_constructor] = ACTIONS(607),
    [anon_sym_fallback] = ACTIONS(607),
    [anon_sym_receive] = ACTIONS(607),
    [anon_sym_mapping] = ACTIONS(607),
    [anon_sym_bool] = ACTIONS(607),
    [anon_sym_string] = ACTIONS(607),
    [anon_sym_int] = ACTIONS(607),
    [anon_sym_int8] = ACTIONS(607),
    [anon_sym_int16] = ACTIONS(607),
    [anon_sym_int24] = ACTIONS(607),
    [anon_sym_int32] = ACTIONS(607),
    [anon_sym_int40] = ACTIONS(607),
    [anon_sym_int48] = ACTIONS(607),
    [anon_sym_int56] = ACTIONS(607),
    [anon_sym_int64] = ACTIONS(607),
    [anon_sym_int72] = ACTIONS(607),
    [anon_sym_int80] = ACTIONS(607),
    [anon_sym_int88] = ACTIONS(607),
    [anon_sym_int96] = ACTIONS(607),
    [anon_sym_int104] = ACTIONS(607),
    [anon_sym_int112] = ACTIONS(607),
    [anon_sym_int120] = ACTIONS(607),
    [anon_sym_int128] = ACTIONS(607),
    [anon_sym_int136] = ACTIONS(607),
    [anon_sym_int144] = ACTIONS(607),
    [anon_sym_int152] = ACTIONS(607),
    [anon_sym_int160] = ACTIONS(607),
    [anon_sym_int168] = ACTIONS(607),
    [anon_sym_int176] = ACTIONS(607),
    [anon_sym_int184] = ACTIONS(607),
    [anon_sym_int192] = ACTIONS(607),
    [anon_sym_int200] = ACTIONS(607),
    [anon_sym_int208] = ACTIONS(607),
    [anon_sym_int216] = ACTIONS(607),
    [anon_sym_int224] = ACTIONS(607),
    [anon_sym_int232] = ACTIONS(607),
    [anon_sym_int240] = ACTIONS(607),
    [anon_sym_int248] = ACTIONS(607),
    [anon_sym_int256] = ACTIONS(607),
    [anon_sym_uint] = ACTIONS(607),
    [anon_sym_uint8] = ACTIONS(607),
    [anon_sym_uint16] = ACTIONS(607),
    [anon_sym_uint24] = ACTIONS(607),
    [anon_sym_uint32] = ACTIONS(607),
    [anon_sym_uint40] = ACTIONS(607),
    [anon_sym_uint48] = ACTIONS(607),
    [anon_sym_uint56] = ACTIONS(607),
    [anon_sym_uint64] = ACTIONS(607),
    [anon_sym_uint72] = ACTIONS(607),
    [anon_sym_uint80] = ACTIONS(607),
    [anon_sym_uint88] = ACTIONS(607),
    [anon_sym_uint96] = ACTIONS(607),
    [anon_sym_uint104] = ACTIONS(607),
    [anon_sym_uint112] = ACTIONS(607),
    [anon_sym_uint120] = ACTIONS(607),
    [anon_sym_uint128] = ACTIONS(607),
    [anon_sym_uint136] = ACTIONS(607),
    [anon_sym_uint144] = ACTIONS(607),
    [anon_sym_uint152] = ACTIONS(607),
    [anon_sym_uint160] = ACTIONS(607),
    [anon_sym_uint168] = ACTIONS(607),
    [anon_sym_uint176] = ACTIONS(607),
    [anon_sym_uint184] = ACTIONS(607),
    [anon_sym_uint192] = ACTIONS(607),
    [anon_sym_uint200] = ACTIONS(607),
    [anon_sym_uint208] = ACTIONS(607),
    [anon_sym_uint216] = ACTIONS(607),
    [anon_sym_uint224] = ACTIONS(607),
    [anon_sym_uint232] = ACTIONS(607),
    [anon_sym_uint240] = ACTIONS(607),
    [anon_sym_uint248] = ACTIONS(607),
    [anon_sym_uint256] = ACTIONS(607),
    [anon_sym_bytes] = ACTIONS(607),
    [anon_sym_bytes1] = ACTIONS(607),
    [anon_sym_bytes2] = ACTIONS(607),
    [anon_sym_bytes3] = ACTIONS(607),
    [anon_sym_bytes4] = ACTIONS(607),
    [anon_sym_bytes5] = ACTIONS(607),
    [anon_sym_bytes6] = ACTIONS(607),
    [anon_sym_bytes7] = ACTIONS(607),
    [anon_sym_bytes8] = ACTIONS(607),
    [anon_sym_bytes9] = ACTIONS(607),
    [anon_sym_bytes10] = ACTIONS(607),
    [anon_sym_bytes11] = ACTIONS(607),
    [anon_sym_bytes12] = ACTIONS(607),
    [anon_sym_bytes13] = ACTIONS(607),
    [anon_sym_bytes14] = ACTIONS(607),
    [anon_sym_bytes15] = ACTIONS(607),
    [anon_sym_bytes16] = ACTIONS(607),
    [anon_sym_bytes17] = ACTIONS(607),
    [anon_sym_bytes18] = ACTIONS(607),
    [anon_sym_bytes19] = ACTIONS(607),
    [anon_sym_bytes20] = ACTIONS(607),
    [anon_sym_bytes21] = ACTIONS(607),
    [anon_sym_bytes22] = ACTIONS(607),
    [anon_sym_bytes23] = ACTIONS(607),
    [anon_sym_bytes24] = ACTIONS(607),
    [anon_sym_bytes25] = ACTIONS(607),
    [anon_sym_bytes26] = ACTIONS(607),
    [anon_sym_bytes27] = ACTIONS(607),
    [anon_sym_bytes28] = ACTIONS(607),
    [anon_sym_bytes29] = ACTIONS(607),
    [anon_sym_bytes30] = ACTIONS(607),
    [anon_sym_bytes31] = ACTIONS(607),
    [anon_sym_bytes32] = ACTIONS(607),
    [anon_sym_fixed] = ACTIONS(607),
    [aux_sym__fixed_token1] = ACTIONS(607),
    [anon_sym_ufixed] = ACTIONS(607),
    [aux_sym__ufixed_token1] = ACTIONS(607),
    [sym_comment] = ACTIONS(3),
  },
  [139] = {
    [ts_builtin_sym_end] = ACTIONS(611),
    [sym_identifier] = ACTIONS(613),
    [anon_sym_pragma] = ACTIONS(613),
    [anon_sym_import] = ACTIONS(613),
    [anon_sym_type] = ACTIONS(613),
    [anon_sym_abstract] = ACTIONS(613),
    [anon_sym_contract] = ACTIONS(613),
    [anon_sym_error] = ACTIONS(613),
    [anon_sym_interface] = ACTIONS(613),
    [anon_sym_library] = ACTIONS(613),
    [anon_sym_struct] = ACTIONS(613),
    [anon_sym_enum] = ACTIONS(613),
    [anon_sym_function] = ACTIONS(613),
    [anon_sym_byte] = ACTIONS(613),
    [anon_sym_address] = ACTIONS(613),
    [anon_sym_var] = ACTIONS(613),
    [anon_sym_mapping] = ACTIONS(613),
    [anon_sym_bool] = ACTIONS(613),
    [anon_sym_string] = ACTIONS(613),
    [anon_sym_int] = ACTIONS(613),
    [anon_sym_int8] = ACTIONS(613),
    [anon_sym_int16] = ACTIONS(613),
    [anon_sym_int24] = ACTIONS(613),
    [anon_sym_int32] = ACTIONS(613),
    [anon_sym_int40] = ACTIONS(613),
    [anon_sym_int48] = ACTIONS(613),
    [anon_sym_int56] = ACTIONS(613),
    [anon_sym_int64] = ACTIONS(613),
    [anon_sym_int72] = ACTIONS(613),
    [anon_sym_int80] = ACTIONS(613),
    [anon_sym_int88] = ACTIONS(613),
    [anon_sym_int96] = ACTIONS(613),
    [anon_sym_int104] = ACTIONS(613),
    [anon_sym_int112] = ACTIONS(613),
    [anon_sym_int120] = ACTIONS(613),
    [anon_sym_int128] = ACTIONS(613),
    [anon_sym_int136] = ACTIONS(613),
    [anon_sym_int144] = ACTIONS(613),
    [anon_sym_int152] = ACTIONS(613),
    [anon_sym_int160] = ACTIONS(613),
    [anon_sym_int168] = ACTIONS(613),
    [anon_sym_int176] = ACTIONS(613),
    [anon_sym_int184] = ACTIONS(613),
    [anon_sym_int192] = ACTIONS(613),
    [anon_sym_int200] = ACTIONS(613),
    [anon_sym_int208] = ACTIONS(613),
    [anon_sym_int216] = ACTIONS(613),
    [anon_sym_int224] = ACTIONS(613),
    [anon_sym_int232] = ACTIONS(613),
    [anon_sym_int240] = ACTIONS(613),
    [anon_sym_int248] = ACTIONS(613),
    [anon_sym_int256] = ACTIONS(613),
    [anon_sym_uint] = ACTIONS(613),
    [anon_sym_uint8] = ACTIONS(613),
    [anon_sym_uint16] = ACTIONS(613),
    [anon_sym_uint24] = ACTIONS(613),
    [anon_sym_uint32] = ACTIONS(613),
    [anon_sym_uint40] = ACTIONS(613),
    [anon_sym_uint48] = ACTIONS(613),
    [anon_sym_uint56] = ACTIONS(613),
    [anon_sym_uint64] = ACTIONS(613),
    [anon_sym_uint72] = ACTIONS(613),
    [anon_sym_uint80] = ACTIONS(613),
    [anon_sym_uint88] = ACTIONS(613),
    [anon_sym_uint96] = ACTIONS(613),
    [anon_sym_uint104] = ACTIONS(613),
    [anon_sym_uint112] = ACTIONS(613),
    [anon_sym_uint120] = ACTIONS(613),
    [anon_sym_uint128] = ACTIONS(613),
    [anon_sym_uint136] = ACTIONS(613),
    [anon_sym_uint144] = ACTIONS(613),
    [anon_sym_uint152] = ACTIONS(613),
    [anon_sym_uint160] = ACTIONS(613),
    [anon_sym_uint168] = ACTIONS(613),
    [anon_sym_uint176] = ACTIONS(613),
    [anon_sym_uint184] = ACTIONS(613),
    [anon_sym_uint192] = ACTIONS(613),
    [anon_sym_uint200] = ACTIONS(613),
    [anon_sym_uint208] = ACTIONS(613),
    [anon_sym_uint216] = ACTIONS(613),
    [anon_sym_uint224] = ACTIONS(613),
    [anon_sym_uint232] = ACTIONS(613),
    [anon_sym_uint240] = ACTIONS(613),
    [anon_sym_uint248] = ACTIONS(613),
    [anon_sym_uint256] = ACTIONS(613),
    [anon_sym_bytes] = ACTIONS(613),
    [anon_sym_bytes1] = ACTIONS(613),
    [anon_sym_bytes2] = ACTIONS(613),
    [anon_sym_bytes3] = ACTIONS(613),
    [anon_sym_bytes4] = ACTIONS(613),
    [anon_sym_bytes5] = ACTIONS(613),
    [anon_sym_bytes6] = ACTIONS(613),
    [anon_sym_bytes7] = ACTIONS(613),
    [anon_sym_bytes8] = ACTIONS(613),
    [anon_sym_bytes9] = ACTIONS(613),
    [anon_sym_bytes10] = ACTIONS(613),
    [anon_sym_bytes11] = ACTIONS(613),
    [anon_sym_bytes12] = ACTIONS(613),
    [anon_sym_bytes13] = ACTIONS(613),
    [anon_sym_bytes14] = ACTIONS(613),
    [anon_sym_bytes15] = ACTIONS(613),
    [anon_sym_bytes16] = ACTIONS(613),
    [anon_sym_bytes17] = ACTIONS(613),
    [anon_sym_bytes18] = ACTIONS(613),
    [anon_sym_bytes19] = ACTIONS(613),
    [anon_sym_bytes20] = ACTIONS(613),
    [anon_sym_bytes21] = ACTIONS(613),
    [anon_sym_bytes22] = ACTIONS(613),
    [anon_sym_bytes23] = ACTIONS(613),
    [anon_sym_bytes24] = ACTIONS(613),
    [anon_sym_bytes25] = ACTIONS(613),
    [anon_sym_bytes26] = ACTIONS(613),
    [anon_sym_bytes27] = ACTIONS(613),
    [anon_sym_bytes28] = ACTIONS(613),
    [anon_sym_bytes29] = ACTIONS(613),
    [anon_sym_bytes30] = ACTIONS(613),
    [anon_sym_bytes31] = ACTIONS(613),
    [anon_sym_bytes32] = ACTIONS(613),
    [anon_sym_fixed] = ACTIONS(613),
    [aux_sym__fixed_token1] = ACTIONS(613),
    [anon_sym_ufixed] = ACTIONS(613),
    [aux_sym__ufixed_token1] = ACTIONS(613),
    [sym_comment] = ACTIONS(3),
  },
  [140] = {
    [sym_identifier] = ACTIONS(615),
    [anon_sym_RBRACE] = ACTIONS(617),
    [anon_sym_type] = ACTIONS(615),
    [anon_sym_error] = ACTIONS(615),
    [anon_sym_struct] = ACTIONS(615),
    [anon_sym_enum] = ACTIONS(615),
    [anon_sym_event] = ACTIONS(615),
    [anon_sym_using] = ACTIONS(615),
    [anon_sym_function] = ACTIONS(615),
    [anon_sym_byte] = ACTIONS(615),
    [anon_sym_address] = ACTIONS(615),
    [anon_sym_var] = ACTIONS(615),
    [anon_sym_modifier] = ACTIONS(615),
    [anon_sym_constructor] = ACTIONS(615),
    [anon_sym_fallback] = ACTIONS(615),
    [anon_sym_receive] = ACTIONS(615),
    [anon_sym_mapping] = ACTIONS(615),
    [anon_sym_bool] = ACTIONS(615),
    [anon_sym_string] = ACTIONS(615),
    [anon_sym_int] = ACTIONS(615),
    [anon_sym_int8] = ACTIONS(615),
    [anon_sym_int16] = ACTIONS(615),
    [anon_sym_int24] = ACTIONS(615),
    [anon_sym_int32] = ACTIONS(615),
    [anon_sym_int40] = ACTIONS(615),
    [anon_sym_int48] = ACTIONS(615),
    [anon_sym_int56] = ACTIONS(615),
    [anon_sym_int64] = ACTIONS(615),
    [anon_sym_int72] = ACTIONS(615),
    [anon_sym_int80] = ACTIONS(615),
    [anon_sym_int88] = ACTIONS(615),
    [anon_sym_int96] = ACTIONS(615),
    [anon_sym_int104] = ACTIONS(615),
    [anon_sym_int112] = ACTIONS(615),
    [anon_sym_int120] = ACTIONS(615),
    [anon_sym_int128] = ACTIONS(615),
    [anon_sym_int136] = ACTIONS(615),
    [anon_sym_int144] = ACTIONS(615),
    [anon_sym_int152] = ACTIONS(615),
    [anon_sym_int160] = ACTIONS(615),
    [anon_sym_int168] = ACTIONS(615),
    [anon_sym_int176] = ACTIONS(615),
    [anon_sym_int184] = ACTIONS(615),
    [anon_sym_int192] = ACTIONS(615),
    [anon_sym_int200] = ACTIONS(615),
    [anon_sym_int208] = ACTIONS(615),
    [anon_sym_int216] = ACTIONS(615),
    [anon_sym_int224] = ACTIONS(615),
    [anon_sym_int232] = ACTIONS(615),
    [anon_sym_int240] = ACTIONS(615),
    [anon_sym_int248] = ACTIONS(615),
    [anon_sym_int256] = ACTIONS(615),
    [anon_sym_uint] = ACTIONS(615),
    [anon_sym_uint8] = ACTIONS(615),
    [anon_sym_uint16] = ACTIONS(615),
    [anon_sym_uint24] = ACTIONS(615),
    [anon_sym_uint32] = ACTIONS(615),
    [anon_sym_uint40] = ACTIONS(615),
    [anon_sym_uint48] = ACTIONS(615),
    [anon_sym_uint56] = ACTIONS(615),
    [anon_sym_uint64] = ACTIONS(615),
    [anon_sym_uint72] = ACTIONS(615),
    [anon_sym_uint80] = ACTIONS(615),
    [anon_sym_uint88] = ACTIONS(615),
    [anon_sym_uint96] = ACTIONS(615),
    [anon_sym_uint104] = ACTIONS(615),
    [anon_sym_uint112] = ACTIONS(615),
    [anon_sym_uint120] = ACTIONS(615),
    [anon_sym_uint128] = ACTIONS(615),
    [anon_sym_uint136] = ACTIONS(615),
    [anon_sym_uint144] = ACTIONS(615),
    [anon_sym_uint152] = ACTIONS(615),
    [anon_sym_uint160] = ACTIONS(615),
    [anon_sym_uint168] = ACTIONS(615),
    [anon_sym_uint176] = ACTIONS(615),
    [anon_sym_uint184] = ACTIONS(615),
    [anon_sym_uint192] = ACTIONS(615),
    [anon_sym_uint200] = ACTIONS(615),
    [anon_sym_uint208] = ACTIONS(615),
    [anon_sym_uint216] = ACTIONS(615),
    [anon_sym_uint224] = ACTIONS(615),
    [anon_sym_uint232] = ACTIONS(615),
    [anon_sym_uint240] = ACTIONS(615),
    [anon_sym_uint248] = ACTIONS(615),
    [anon_sym_uint256] = ACTIONS(615),
    [anon_sym_bytes] = ACTIONS(615),
    [anon_sym_bytes1] = ACTIONS(615),
    [anon_sym_bytes2] = ACTIONS(615),
    [anon_sym_bytes3] = ACTIONS(615),
    [anon_sym_bytes4] = ACTIONS(615),
    [anon_sym_bytes5] = ACTIONS(615),
    [anon_sym_bytes6] = ACTIONS(615),
    [anon_sym_bytes7] = ACTIONS(615),
    [anon_sym_bytes8] = ACTIONS(615),
    [anon_sym_bytes9] = ACTIONS(615),
    [anon_sym_bytes10] = ACTIONS(615),
    [anon_sym_bytes11] = ACTIONS(615),
    [anon_sym_bytes12] = ACTIONS(615),
    [anon_sym_bytes13] = ACTIONS(615),
    [anon_sym_bytes14] = ACTIONS(615),
    [anon_sym_bytes15] = ACTIONS(615),
    [anon_sym_bytes16] = ACTIONS(615),
    [anon_sym_bytes17] = ACTIONS(615),
    [anon_sym_bytes18] = ACTIONS(615),
    [anon_sym_bytes19] = ACTIONS(615),
    [anon_sym_bytes20] = ACTIONS(615),
    [anon_sym_bytes21] = ACTIONS(615),
    [anon_sym_bytes22] = ACTIONS(615),
    [anon_sym_bytes23] = ACTIONS(615),
    [anon_sym_bytes24] = ACTIONS(615),
    [anon_sym_bytes25] = ACTIONS(615),
    [anon_sym_bytes26] = ACTIONS(615),
    [anon_sym_bytes27] = ACTIONS(615),
    [anon_sym_bytes28] = ACTIONS(615),
    [anon_sym_bytes29] = ACTIONS(615),
    [anon_sym_bytes30] = ACTIONS(615),
    [anon_sym_bytes31] = ACTIONS(615),
    [anon_sym_bytes32] = ACTIONS(615),
    [anon_sym_fixed] = ACTIONS(615),
    [aux_sym__fixed_token1] = ACTIONS(615),
    [anon_sym_ufixed] = ACTIONS(615),
    [aux_sym__ufixed_token1] = ACTIONS(615),
    [sym_comment] = ACTIONS(3),
  },
  [141] = {
    [sym_identifier] = ACTIONS(619),
    [anon_sym_RBRACE] = ACTIONS(621),
    [anon_sym_type] = ACTIONS(619),
    [anon_sym_error] = ACTIONS(619),
    [anon_sym_struct] = ACTIONS(619),
    [anon_sym_enum] = ACTIONS(619),
    [anon_sym_event] = ACTIONS(619),
    [anon_sym_using] = ACTIONS(619),
    [anon_sym_function] = ACTIONS(619),
    [anon_sym_byte] = ACTIONS(619),
    [anon_sym_address] = ACTIONS(619),
    [anon_sym_var] = ACTIONS(619),
    [anon_sym_modifier] = ACTIONS(619),
    [anon_sym_constructor] = ACTIONS(619),
    [anon_sym_fallback] = ACTIONS(619),
    [anon_sym_receive] = ACTIONS(619),
    [anon_sym_mapping] = ACTIONS(619),
    [anon_sym_bool] = ACTIONS(619),
    [anon_sym_string] = ACTIONS(619),
    [anon_sym_int] = ACTIONS(619),
    [anon_sym_int8] = ACTIONS(619),
    [anon_sym_int16] = ACTIONS(619),
    [anon_sym_int24] = ACTIONS(619),
    [anon_sym_int32] = ACTIONS(619),
    [anon_sym_int40] = ACTIONS(619),
    [anon_sym_int48] = ACTIONS(619),
    [anon_sym_int56] = ACTIONS(619),
    [anon_sym_int64] = ACTIONS(619),
    [anon_sym_int72] = ACTIONS(619),
    [anon_sym_int80] = ACTIONS(619),
    [anon_sym_int88] = ACTIONS(619),
    [anon_sym_int96] = ACTIONS(619),
    [anon_sym_int104] = ACTIONS(619),
    [anon_sym_int112] = ACTIONS(619),
    [anon_sym_int120] = ACTIONS(619),
    [anon_sym_int128] = ACTIONS(619),
    [anon_sym_int136] = ACTIONS(619),
    [anon_sym_int144] = ACTIONS(619),
    [anon_sym_int152] = ACTIONS(619),
    [anon_sym_int160] = ACTIONS(619),
    [anon_sym_int168] = ACTIONS(619),
    [anon_sym_int176] = ACTIONS(619),
    [anon_sym_int184] = ACTIONS(619),
    [anon_sym_int192] = ACTIONS(619),
    [anon_sym_int200] = ACTIONS(619),
    [anon_sym_int208] = ACTIONS(619),
    [anon_sym_int216] = ACTIONS(619),
    [anon_sym_int224] = ACTIONS(619),
    [anon_sym_int232] = ACTIONS(619),
    [anon_sym_int240] = ACTIONS(619),
    [anon_sym_int248] = ACTIONS(619),
    [anon_sym_int256] = ACTIONS(619),
    [anon_sym_uint] = ACTIONS(619),
    [anon_sym_uint8] = ACTIONS(619),
    [anon_sym_uint16] = ACTIONS(619),
    [anon_sym_uint24] = ACTIONS(619),
    [anon_sym_uint32] = ACTIONS(619),
    [anon_sym_uint40] = ACTIONS(619),
    [anon_sym_uint48] = ACTIONS(619),
    [anon_sym_uint56] = ACTIONS(619),
    [anon_sym_uint64] = ACTIONS(619),
    [anon_sym_uint72] = ACTIONS(619),
    [anon_sym_uint80] = ACTIONS(619),
    [anon_sym_uint88] = ACTIONS(619),
    [anon_sym_uint96] = ACTIONS(619),
    [anon_sym_uint104] = ACTIONS(619),
    [anon_sym_uint112] = ACTIONS(619),
    [anon_sym_uint120] = ACTIONS(619),
    [anon_sym_uint128] = ACTIONS(619),
    [anon_sym_uint136] = ACTIONS(619),
    [anon_sym_uint144] = ACTIONS(619),
    [anon_sym_uint152] = ACTIONS(619),
    [anon_sym_uint160] = ACTIONS(619),
    [anon_sym_uint168] = ACTIONS(619),
    [anon_sym_uint176] = ACTIONS(619),
    [anon_sym_uint184] = ACTIONS(619),
    [anon_sym_uint192] = ACTIONS(619),
    [anon_sym_uint200] = ACTIONS(619),
    [anon_sym_uint208] = ACTIONS(619),
    [anon_sym_uint216] = ACTIONS(619),
    [anon_sym_uint224] = ACTIONS(619),
    [anon_sym_uint232] = ACTIONS(619),
    [anon_sym_uint240] = ACTIONS(619),
    [anon_sym_uint248] = ACTIONS(619),
    [anon_sym_uint256] = ACTIONS(619),
    [anon_sym_bytes] = ACTIONS(619),
    [anon_sym_bytes1] = ACTIONS(619),
    [anon_sym_bytes2] = ACTIONS(619),
    [anon_sym_bytes3] = ACTIONS(619),
    [anon_sym_bytes4] = ACTIONS(619),
    [anon_sym_bytes5] = ACTIONS(619),
    [anon_sym_bytes6] = ACTIONS(619),
    [anon_sym_bytes7] = ACTIONS(619),
    [anon_sym_bytes8] = ACTIONS(619),
    [anon_sym_bytes9] = ACTIONS(619),
    [anon_sym_bytes10] = ACTIONS(619),
    [anon_sym_bytes11] = ACTIONS(619),
    [anon_sym_bytes12] = ACTIONS(619),
    [anon_sym_bytes13] = ACTIONS(619),
    [anon_sym_bytes14] = ACTIONS(619),
    [anon_sym_bytes15] = ACTIONS(619),
    [anon_sym_bytes16] = ACTIONS(619),
    [anon_sym_bytes17] = ACTIONS(619),
    [anon_sym_bytes18] = ACTIONS(619),
    [anon_sym_bytes19] = ACTIONS(619),
    [anon_sym_bytes20] = ACTIONS(619),
    [anon_sym_bytes21] = ACTIONS(619),
    [anon_sym_bytes22] = ACTIONS(619),
    [anon_sym_bytes23] = ACTIONS(619),
    [anon_sym_bytes24] = ACTIONS(619),
    [anon_sym_bytes25] = ACTIONS(619),
    [anon_sym_bytes26] = ACTIONS(619),
    [anon_sym_bytes27] = ACTIONS(619),
    [anon_sym_bytes28] = ACTIONS(619),
    [anon_sym_bytes29] = ACTIONS(619),
    [anon_sym_bytes30] = ACTIONS(619),
    [anon_sym_bytes31] = ACTIONS(619),
    [anon_sym_bytes32] = ACTIONS(619),
    [anon_sym_fixed] = ACTIONS(619),
    [aux_sym__fixed_token1] = ACTIONS(619),
    [anon_sym_ufixed] = ACTIONS(619),
    [aux_sym__ufixed_token1] = ACTIONS(619),
    [sym_comment] = ACTIONS(3),
  },
  [142] = {
    [ts_builtin_sym_end] = ACTIONS(623),
    [sym_identifier] = ACTIONS(625),
    [anon_sym_pragma] = ACTIONS(625),
    [anon_sym_import] = ACTIONS(625),
    [anon_sym_type] = ACTIONS(625),
    [anon_sym_abstract] = ACTIONS(625),
    [anon_sym_contract] = ACTIONS(625),
    [anon_sym_error] = ACTIONS(625),
    [anon_sym_interface] = ACTIONS(625),
    [anon_sym_library] = ACTIONS(625),
    [anon_sym_struct] = ACTIONS(625),
    [anon_sym_enum] = ACTIONS(625),
    [anon_sym_function] = ACTIONS(625),
    [anon_sym_byte] = ACTIONS(625),
    [anon_sym_address] = ACTIONS(625),
    [anon_sym_var] = ACTIONS(625),
    [anon_sym_mapping] = ACTIONS(625),
    [anon_sym_bool] = ACTIONS(625),
    [anon_sym_string] = ACTIONS(625),
    [anon_sym_int] = ACTIONS(625),
    [anon_sym_int8] = ACTIONS(625),
    [anon_sym_int16] = ACTIONS(625),
    [anon_sym_int24] = ACTIONS(625),
    [anon_sym_int32] = ACTIONS(625),
    [anon_sym_int40] = ACTIONS(625),
    [anon_sym_int48] = ACTIONS(625),
    [anon_sym_int56] = ACTIONS(625),
    [anon_sym_int64] = ACTIONS(625),
    [anon_sym_int72] = ACTIONS(625),
    [anon_sym_int80] = ACTIONS(625),
    [anon_sym_int88] = ACTIONS(625),
    [anon_sym_int96] = ACTIONS(625),
    [anon_sym_int104] = ACTIONS(625),
    [anon_sym_int112] = ACTIONS(625),
    [anon_sym_int120] = ACTIONS(625),
    [anon_sym_int128] = ACTIONS(625),
    [anon_sym_int136] = ACTIONS(625),
    [anon_sym_int144] = ACTIONS(625),
    [anon_sym_int152] = ACTIONS(625),
    [anon_sym_int160] = ACTIONS(625),
    [anon_sym_int168] = ACTIONS(625),
    [anon_sym_int176] = ACTIONS(625),
    [anon_sym_int184] = ACTIONS(625),
    [anon_sym_int192] = ACTIONS(625),
    [anon_sym_int200] = ACTIONS(625),
    [anon_sym_int208] = ACTIONS(625),
    [anon_sym_int216] = ACTIONS(625),
    [anon_sym_int224] = ACTIONS(625),
    [anon_sym_int232] = ACTIONS(625),
    [anon_sym_int240] = ACTIONS(625),
    [anon_sym_int248] = ACTIONS(625),
    [anon_sym_int256] = ACTIONS(625),
    [anon_sym_uint] = ACTIONS(625),
    [anon_sym_uint8] = ACTIONS(625),
    [anon_sym_uint16] = ACTIONS(625),
    [anon_sym_uint24] = ACTIONS(625),
    [anon_sym_uint32] = ACTIONS(625),
    [anon_sym_uint40] = ACTIONS(625),
    [anon_sym_uint48] = ACTIONS(625),
    [anon_sym_uint56] = ACTIONS(625),
    [anon_sym_uint64] = ACTIONS(625),
    [anon_sym_uint72] = ACTIONS(625),
    [anon_sym_uint80] = ACTIONS(625),
    [anon_sym_uint88] = ACTIONS(625),
    [anon_sym_uint96] = ACTIONS(625),
    [anon_sym_uint104] = ACTIONS(625),
    [anon_sym_uint112] = ACTIONS(625),
    [anon_sym_uint120] = ACTIONS(625),
    [anon_sym_uint128] = ACTIONS(625),
    [anon_sym_uint136] = ACTIONS(625),
    [anon_sym_uint144] = ACTIONS(625),
    [anon_sym_uint152] = ACTIONS(625),
    [anon_sym_uint160] = ACTIONS(625),
    [anon_sym_uint168] = ACTIONS(625),
    [anon_sym_uint176] = ACTIONS(625),
    [anon_sym_uint184] = ACTIONS(625),
    [anon_sym_uint192] = ACTIONS(625),
    [anon_sym_uint200] = ACTIONS(625),
    [anon_sym_uint208] = ACTIONS(625),
    [anon_sym_uint216] = ACTIONS(625),
    [anon_sym_uint224] = ACTIONS(625),
    [anon_sym_uint232] = ACTIONS(625),
    [anon_sym_uint240] = ACTIONS(625),
    [anon_sym_uint248] = ACTIONS(625),
    [anon_sym_uint256] = ACTIONS(625),
    [anon_sym_bytes] = ACTIONS(625),
    [anon_sym_bytes1] = ACTIONS(625),
    [anon_sym_bytes2] = ACTIONS(625),
    [anon_sym_bytes3] = ACTIONS(625),
    [anon_sym_bytes4] = ACTIONS(625),
    [anon_sym_bytes5] = ACTIONS(625),
    [anon_sym_bytes6] = ACTIONS(625),
    [anon_sym_bytes7] = ACTIONS(625),
    [anon_sym_bytes8] = ACTIONS(625),
    [anon_sym_bytes9] = ACTIONS(625),
    [anon_sym_bytes10] = ACTIONS(625),
    [anon_sym_bytes11] = ACTIONS(625),
    [anon_sym_bytes12] = ACTIONS(625),
    [anon_sym_bytes13] = ACTIONS(625),
    [anon_sym_bytes14] = ACTIONS(625),
    [anon_sym_bytes15] = ACTIONS(625),
    [anon_sym_bytes16] = ACTIONS(625),
    [anon_sym_bytes17] = ACTIONS(625),
    [anon_sym_bytes18] = ACTIONS(625),
    [anon_sym_bytes19] = ACTIONS(625),
    [anon_sym_bytes20] = ACTIONS(625),
    [anon_sym_bytes21] = ACTIONS(625),
    [anon_sym_bytes22] = ACTIONS(625),
    [anon_sym_bytes23] = ACTIONS(625),
    [anon_sym_bytes24] = ACTIONS(625),
    [anon_sym_bytes25] = ACTIONS(625),
    [anon_sym_bytes26] = ACTIONS(625),
    [anon_sym_bytes27] = ACTIONS(625),
    [anon_sym_bytes28] = ACTIONS(625),
    [anon_sym_bytes29] = ACTIONS(625),
    [anon_sym_bytes30] = ACTIONS(625),
    [anon_sym_bytes31] = ACTIONS(625),
    [anon_sym_bytes32] = ACTIONS(625),
    [anon_sym_fixed] = ACTIONS(625),
    [aux_sym__fixed_token1] = ACTIONS(625),
    [anon_sym_ufixed] = ACTIONS(625),
    [aux_sym__ufixed_token1] = ACTIONS(625),
    [sym_comment] = ACTIONS(3),
  },
  [143] = {
    [ts_builtin_sym_end] = ACTIONS(627),
    [sym_identifier] = ACTIONS(629),
    [anon_sym_pragma] = ACTIONS(629),
    [anon_sym_import] = ACTIONS(629),
    [anon_sym_type] = ACTIONS(629),
    [anon_sym_abstract] = ACTIONS(629),
    [anon_sym_contract] = ACTIONS(629),
    [anon_sym_error] = ACTIONS(629),
    [anon_sym_interface] = ACTIONS(629),
    [anon_sym_library] = ACTIONS(629),
    [anon_sym_struct] = ACTIONS(629),
    [anon_sym_enum] = ACTIONS(629),
    [anon_sym_function] = ACTIONS(629),
    [anon_sym_byte] = ACTIONS(629),
    [anon_sym_address] = ACTIONS(629),
    [anon_sym_var] = ACTIONS(629),
    [anon_sym_mapping] = ACTIONS(629),
    [anon_sym_bool] = ACTIONS(629),
    [anon_sym_string] = ACTIONS(629),
    [anon_sym_int] = ACTIONS(629),
    [anon_sym_int8] = ACTIONS(629),
    [anon_sym_int16] = ACTIONS(629),
    [anon_sym_int24] = ACTIONS(629),
    [anon_sym_int32] = ACTIONS(629),
    [anon_sym_int40] = ACTIONS(629),
    [anon_sym_int48] = ACTIONS(629),
    [anon_sym_int56] = ACTIONS(629),
    [anon_sym_int64] = ACTIONS(629),
    [anon_sym_int72] = ACTIONS(629),
    [anon_sym_int80] = ACTIONS(629),
    [anon_sym_int88] = ACTIONS(629),
    [anon_sym_int96] = ACTIONS(629),
    [anon_sym_int104] = ACTIONS(629),
    [anon_sym_int112] = ACTIONS(629),
    [anon_sym_int120] = ACTIONS(629),
    [anon_sym_int128] = ACTIONS(629),
    [anon_sym_int136] = ACTIONS(629),
    [anon_sym_int144] = ACTIONS(629),
    [anon_sym_int152] = ACTIONS(629),
    [anon_sym_int160] = ACTIONS(629),
    [anon_sym_int168] = ACTIONS(629),
    [anon_sym_int176] = ACTIONS(629),
    [anon_sym_int184] = ACTIONS(629),
    [anon_sym_int192] = ACTIONS(629),
    [anon_sym_int200] = ACTIONS(629),
    [anon_sym_int208] = ACTIONS(629),
    [anon_sym_int216] = ACTIONS(629),
    [anon_sym_int224] = ACTIONS(629),
    [anon_sym_int232] = ACTIONS(629),
    [anon_sym_int240] = ACTIONS(629),
    [anon_sym_int248] = ACTIONS(629),
    [anon_sym_int256] = ACTIONS(629),
    [anon_sym_uint] = ACTIONS(629),
    [anon_sym_uint8] = ACTIONS(629),
    [anon_sym_uint16] = ACTIONS(629),
    [anon_sym_uint24] = ACTIONS(629),
    [anon_sym_uint32] = ACTIONS(629),
    [anon_sym_uint40] = ACTIONS(629),
    [anon_sym_uint48] = ACTIONS(629),
    [anon_sym_uint56] = ACTIONS(629),
    [anon_sym_uint64] = ACTIONS(629),
    [anon_sym_uint72] = ACTIONS(629),
    [anon_sym_uint80] = ACTIONS(629),
    [anon_sym_uint88] = ACTIONS(629),
    [anon_sym_uint96] = ACTIONS(629),
    [anon_sym_uint104] = ACTIONS(629),
    [anon_sym_uint112] = ACTIONS(629),
    [anon_sym_uint120] = ACTIONS(629),
    [anon_sym_uint128] = ACTIONS(629),
    [anon_sym_uint136] = ACTIONS(629),
    [anon_sym_uint144] = ACTIONS(629),
    [anon_sym_uint152] = ACTIONS(629),
    [anon_sym_uint160] = ACTIONS(629),
    [anon_sym_uint168] = ACTIONS(629),
    [anon_sym_uint176] = ACTIONS(629),
    [anon_sym_uint184] = ACTIONS(629),
    [anon_sym_uint192] = ACTIONS(629),
    [anon_sym_uint200] = ACTIONS(629),
    [anon_sym_uint208] = ACTIONS(629),
    [anon_sym_uint216] = ACTIONS(629),
    [anon_sym_uint224] = ACTIONS(629),
    [anon_sym_uint232] = ACTIONS(629),
    [anon_sym_uint240] = ACTIONS(629),
    [anon_sym_uint248] = ACTIONS(629),
    [anon_sym_uint256] = ACTIONS(629),
    [anon_sym_bytes] = ACTIONS(629),
    [anon_sym_bytes1] = ACTIONS(629),
    [anon_sym_bytes2] = ACTIONS(629),
    [anon_sym_bytes3] = ACTIONS(629),
    [anon_sym_bytes4] = ACTIONS(629),
    [anon_sym_bytes5] = ACTIONS(629),
    [anon_sym_bytes6] = ACTIONS(629),
    [anon_sym_bytes7] = ACTIONS(629),
    [anon_sym_bytes8] = ACTIONS(629),
    [anon_sym_bytes9] = ACTIONS(629),
    [anon_sym_bytes10] = ACTIONS(629),
    [anon_sym_bytes11] = ACTIONS(629),
    [anon_sym_bytes12] = ACTIONS(629),
    [anon_sym_bytes13] = ACTIONS(629),
    [anon_sym_bytes14] = ACTIONS(629),
    [anon_sym_bytes15] = ACTIONS(629),
    [anon_sym_bytes16] = ACTIONS(629),
    [anon_sym_bytes17] = ACTIONS(629),
    [anon_sym_bytes18] = ACTIONS(629),
    [anon_sym_bytes19] = ACTIONS(629),
    [anon_sym_bytes20] = ACTIONS(629),
    [anon_sym_bytes21] = ACTIONS(629),
    [anon_sym_bytes22] = ACTIONS(629),
    [anon_sym_bytes23] = ACTIONS(629),
    [anon_sym_bytes24] = ACTIONS(629),
    [anon_sym_bytes25] = ACTIONS(629),
    [anon_sym_bytes26] = ACTIONS(629),
    [anon_sym_bytes27] = ACTIONS(629),
    [anon_sym_bytes28] = ACTIONS(629),
    [anon_sym_bytes29] = ACTIONS(629),
    [anon_sym_bytes30] = ACTIONS(629),
    [anon_sym_bytes31] = ACTIONS(629),
    [anon_sym_bytes32] = ACTIONS(629),
    [anon_sym_fixed] = ACTIONS(629),
    [aux_sym__fixed_token1] = ACTIONS(629),
    [anon_sym_ufixed] = ACTIONS(629),
    [aux_sym__ufixed_token1] = ACTIONS(629),
    [sym_comment] = ACTIONS(3),
  },
  [144] = {
    [sym_identifier] = ACTIONS(631),
    [anon_sym_RBRACE] = ACTIONS(633),
    [anon_sym_type] = ACTIONS(631),
    [anon_sym_error] = ACTIONS(631),
    [anon_sym_struct] = ACTIONS(631),
    [anon_sym_enum] = ACTIONS(631),
    [anon_sym_event] = ACTIONS(631),
    [anon_sym_using] = ACTIONS(631),
    [anon_sym_function] = ACTIONS(631),
    [anon_sym_byte] = ACTIONS(631),
    [anon_sym_address] = ACTIONS(631),
    [anon_sym_var] = ACTIONS(631),
    [anon_sym_modifier] = ACTIONS(631),
    [anon_sym_constructor] = ACTIONS(631),
    [anon_sym_fallback] = ACTIONS(631),
    [anon_sym_receive] = ACTIONS(631),
    [anon_sym_mapping] = ACTIONS(631),
    [anon_sym_bool] = ACTIONS(631),
    [anon_sym_string] = ACTIONS(631),
    [anon_sym_int] = ACTIONS(631),
    [anon_sym_int8] = ACTIONS(631),
    [anon_sym_int16] = ACTIONS(631),
    [anon_sym_int24] = ACTIONS(631),
    [anon_sym_int32] = ACTIONS(631),
    [anon_sym_int40] = ACTIONS(631),
    [anon_sym_int48] = ACTIONS(631),
    [anon_sym_int56] = ACTIONS(631),
    [anon_sym_int64] = ACTIONS(631),
    [anon_sym_int72] = ACTIONS(631),
    [anon_sym_int80] = ACTIONS(631),
    [anon_sym_int88] = ACTIONS(631),
    [anon_sym_int96] = ACTIONS(631),
    [anon_sym_int104] = ACTIONS(631),
    [anon_sym_int112] = ACTIONS(631),
    [anon_sym_int120] = ACTIONS(631),
    [anon_sym_int128] = ACTIONS(631),
    [anon_sym_int136] = ACTIONS(631),
    [anon_sym_int144] = ACTIONS(631),
    [anon_sym_int152] = ACTIONS(631),
    [anon_sym_int160] = ACTIONS(631),
    [anon_sym_int168] = ACTIONS(631),
    [anon_sym_int176] = ACTIONS(631),
    [anon_sym_int184] = ACTIONS(631),
    [anon_sym_int192] = ACTIONS(631),
    [anon_sym_int200] = ACTIONS(631),
    [anon_sym_int208] = ACTIONS(631),
    [anon_sym_int216] = ACTIONS(631),
    [anon_sym_int224] = ACTIONS(631),
    [anon_sym_int232] = ACTIONS(631),
    [anon_sym_int240] = ACTIONS(631),
    [anon_sym_int248] = ACTIONS(631),
    [anon_sym_int256] = ACTIONS(631),
    [anon_sym_uint] = ACTIONS(631),
    [anon_sym_uint8] = ACTIONS(631),
    [anon_sym_uint16] = ACTIONS(631),
    [anon_sym_uint24] = ACTIONS(631),
    [anon_sym_uint32] = ACTIONS(631),
    [anon_sym_uint40] = ACTIONS(631),
    [anon_sym_uint48] = ACTIONS(631),
    [anon_sym_uint56] = ACTIONS(631),
    [anon_sym_uint64] = ACTIONS(631),
    [anon_sym_uint72] = ACTIONS(631),
    [anon_sym_uint80] = ACTIONS(631),
    [anon_sym_uint88] = ACTIONS(631),
    [anon_sym_uint96] = ACTIONS(631),
    [anon_sym_uint104] = ACTIONS(631),
    [anon_sym_uint112] = ACTIONS(631),
    [anon_sym_uint120] = ACTIONS(631),
    [anon_sym_uint128] = ACTIONS(631),
    [anon_sym_uint136] = ACTIONS(631),
    [anon_sym_uint144] = ACTIONS(631),
    [anon_sym_uint152] = ACTIONS(631),
    [anon_sym_uint160] = ACTIONS(631),
    [anon_sym_uint168] = ACTIONS(631),
    [anon_sym_uint176] = ACTIONS(631),
    [anon_sym_uint184] = ACTIONS(631),
    [anon_sym_uint192] = ACTIONS(631),
    [anon_sym_uint200] = ACTIONS(631),
    [anon_sym_uint208] = ACTIONS(631),
    [anon_sym_uint216] = ACTIONS(631),
    [anon_sym_uint224] = ACTIONS(631),
    [anon_sym_uint232] = ACTIONS(631),
    [anon_sym_uint240] = ACTIONS(631),
    [anon_sym_uint248] = ACTIONS(631),
    [anon_sym_uint256] = ACTIONS(631),
    [anon_sym_bytes] = ACTIONS(631),
    [anon_sym_bytes1] = ACTIONS(631),
    [anon_sym_bytes2] = ACTIONS(631),
    [anon_sym_bytes3] = ACTIONS(631),
    [anon_sym_bytes4] = ACTIONS(631),
    [anon_sym_bytes5] = ACTIONS(631),
    [anon_sym_bytes6] = ACTIONS(631),
    [anon_sym_bytes7] = ACTIONS(631),
    [anon_sym_bytes8] = ACTIONS(631),
    [anon_sym_bytes9] = ACTIONS(631),
    [anon_sym_bytes10] = ACTIONS(631),
    [anon_sym_bytes11] = ACTIONS(631),
    [anon_sym_bytes12] = ACTIONS(631),
    [anon_sym_bytes13] = ACTIONS(631),
    [anon_sym_bytes14] = ACTIONS(631),
    [anon_sym_bytes15] = ACTIONS(631),
    [anon_sym_bytes16] = ACTIONS(631),
    [anon_sym_bytes17] = ACTIONS(631),
    [anon_sym_bytes18] = ACTIONS(631),
    [anon_sym_bytes19] = ACTIONS(631),
    [anon_sym_bytes20] = ACTIONS(631),
    [anon_sym_bytes21] = ACTIONS(631),
    [anon_sym_bytes22] = ACTIONS(631),
    [anon_sym_bytes23] = ACTIONS(631),
    [anon_sym_bytes24] = ACTIONS(631),
    [anon_sym_bytes25] = ACTIONS(631),
    [anon_sym_bytes26] = ACTIONS(631),
    [anon_sym_bytes27] = ACTIONS(631),
    [anon_sym_bytes28] = ACTIONS(631),
    [anon_sym_bytes29] = ACTIONS(631),
    [anon_sym_bytes30] = ACTIONS(631),
    [anon_sym_bytes31] = ACTIONS(631),
    [anon_sym_bytes32] = ACTIONS(631),
    [anon_sym_fixed] = ACTIONS(631),
    [aux_sym__fixed_token1] = ACTIONS(631),
    [anon_sym_ufixed] = ACTIONS(631),
    [aux_sym__ufixed_token1] = ACTIONS(631),
    [sym_comment] = ACTIONS(3),
  },
  [145] = {
    [ts_builtin_sym_end] = ACTIONS(635),
    [sym_identifier] = ACTIONS(637),
    [anon_sym_pragma] = ACTIONS(637),
    [anon_sym_import] = ACTIONS(637),
    [anon_sym_type] = ACTIONS(637),
    [anon_sym_abstract] = ACTIONS(637),
    [anon_sym_contract] = ACTIONS(637),
    [anon_sym_error] = ACTIONS(637),
    [anon_sym_interface] = ACTIONS(637),
    [anon_sym_library] = ACTIONS(637),
    [anon_sym_struct] = ACTIONS(637),
    [anon_sym_enum] = ACTIONS(637),
    [anon_sym_function] = ACTIONS(637),
    [anon_sym_byte] = ACTIONS(637),
    [anon_sym_address] = ACTIONS(637),
    [anon_sym_var] = ACTIONS(637),
    [anon_sym_mapping] = ACTIONS(637),
    [anon_sym_bool] = ACTIONS(637),
    [anon_sym_string] = ACTIONS(637),
    [anon_sym_int] = ACTIONS(637),
    [anon_sym_int8] = ACTIONS(637),
    [anon_sym_int16] = ACTIONS(637),
    [anon_sym_int24] = ACTIONS(637),
    [anon_sym_int32] = ACTIONS(637),
    [anon_sym_int40] = ACTIONS(637),
    [anon_sym_int48] = ACTIONS(637),
    [anon_sym_int56] = ACTIONS(637),
    [anon_sym_int64] = ACTIONS(637),
    [anon_sym_int72] = ACTIONS(637),
    [anon_sym_int80] = ACTIONS(637),
    [anon_sym_int88] = ACTIONS(637),
    [anon_sym_int96] = ACTIONS(637),
    [anon_sym_int104] = ACTIONS(637),
    [anon_sym_int112] = ACTIONS(637),
    [anon_sym_int120] = ACTIONS(637),
    [anon_sym_int128] = ACTIONS(637),
    [anon_sym_int136] = ACTIONS(637),
    [anon_sym_int144] = ACTIONS(637),
    [anon_sym_int152] = ACTIONS(637),
    [anon_sym_int160] = ACTIONS(637),
    [anon_sym_int168] = ACTIONS(637),
    [anon_sym_int176] = ACTIONS(637),
    [anon_sym_int184] = ACTIONS(637),
    [anon_sym_int192] = ACTIONS(637),
    [anon_sym_int200] = ACTIONS(637),
    [anon_sym_int208] = ACTIONS(637),
    [anon_sym_int216] = ACTIONS(637),
    [anon_sym_int224] = ACTIONS(637),
    [anon_sym_int232] = ACTIONS(637),
    [anon_sym_int240] = ACTIONS(637),
    [anon_sym_int248] = ACTIONS(637),
    [anon_sym_int256] = ACTIONS(637),
    [anon_sym_uint] = ACTIONS(637),
    [anon_sym_uint8] = ACTIONS(637),
    [anon_sym_uint16] = ACTIONS(637),
    [anon_sym_uint24] = ACTIONS(637),
    [anon_sym_uint32] = ACTIONS(637),
    [anon_sym_uint40] = ACTIONS(637),
    [anon_sym_uint48] = ACTIONS(637),
    [anon_sym_uint56] = ACTIONS(637),
    [anon_sym_uint64] = ACTIONS(637),
    [anon_sym_uint72] = ACTIONS(637),
    [anon_sym_uint80] = ACTIONS(637),
    [anon_sym_uint88] = ACTIONS(637),
    [anon_sym_uint96] = ACTIONS(637),
    [anon_sym_uint104] = ACTIONS(637),
    [anon_sym_uint112] = ACTIONS(637),
    [anon_sym_uint120] = ACTIONS(637),
    [anon_sym_uint128] = ACTIONS(637),
    [anon_sym_uint136] = ACTIONS(637),
    [anon_sym_uint144] = ACTIONS(637),
    [anon_sym_uint152] = ACTIONS(637),
    [anon_sym_uint160] = ACTIONS(637),
    [anon_sym_uint168] = ACTIONS(637),
    [anon_sym_uint176] = ACTIONS(637),
    [anon_sym_uint184] = ACTIONS(637),
    [anon_sym_uint192] = ACTIONS(637),
    [anon_sym_uint200] = ACTIONS(637),
    [anon_sym_uint208] = ACTIONS(637),
    [anon_sym_uint216] = ACTIONS(637),
    [anon_sym_uint224] = ACTIONS(637),
    [anon_sym_uint232] = ACTIONS(637),
    [anon_sym_uint240] = ACTIONS(637),
    [anon_sym_uint248] = ACTIONS(637),
    [anon_sym_uint256] = ACTIONS(637),
    [anon_sym_bytes] = ACTIONS(637),
    [anon_sym_bytes1] = ACTIONS(637),
    [anon_sym_bytes2] = ACTIONS(637),
    [anon_sym_bytes3] = ACTIONS(637),
    [anon_sym_bytes4] = ACTIONS(637),
    [anon_sym_bytes5] = ACTIONS(637),
    [anon_sym_bytes6] = ACTIONS(637),
    [anon_sym_bytes7] = ACTIONS(637),
    [anon_sym_bytes8] = ACTIONS(637),
    [anon_sym_bytes9] = ACTIONS(637),
    [anon_sym_bytes10] = ACTIONS(637),
    [anon_sym_bytes11] = ACTIONS(637),
    [anon_sym_bytes12] = ACTIONS(637),
    [anon_sym_bytes13] = ACTIONS(637),
    [anon_sym_bytes14] = ACTIONS(637),
    [anon_sym_bytes15] = ACTIONS(637),
    [anon_sym_bytes16] = ACTIONS(637),
    [anon_sym_bytes17] = ACTIONS(637),
    [anon_sym_bytes18] = ACTIONS(637),
    [anon_sym_bytes19] = ACTIONS(637),
    [anon_sym_bytes20] = ACTIONS(637),
    [anon_sym_bytes21] = ACTIONS(637),
    [anon_sym_bytes22] = ACTIONS(637),
    [anon_sym_bytes23] = ACTIONS(637),
    [anon_sym_bytes24] = ACTIONS(637),
    [anon_sym_bytes25] = ACTIONS(637),
    [anon_sym_bytes26] = ACTIONS(637),
    [anon_sym_bytes27] = ACTIONS(637),
    [anon_sym_bytes28] = ACTIONS(637),
    [anon_sym_bytes29] = ACTIONS(637),
    [anon_sym_bytes30] = ACTIONS(637),
    [anon_sym_bytes31] = ACTIONS(637),
    [anon_sym_bytes32] = ACTIONS(637),
    [anon_sym_fixed] = ACTIONS(637),
    [aux_sym__fixed_token1] = ACTIONS(637),
    [anon_sym_ufixed] = ACTIONS(637),
    [aux_sym__ufixed_token1] = ACTIONS(637),
    [sym_comment] = ACTIONS(3),
  },
  [146] = {
    [sym_identifier] = ACTIONS(639),
    [anon_sym_RBRACE] = ACTIONS(641),
    [anon_sym_type] = ACTIONS(639),
    [anon_sym_error] = ACTIONS(639),
    [anon_sym_struct] = ACTIONS(639),
    [anon_sym_enum] = ACTIONS(639),
    [anon_sym_event] = ACTIONS(639),
    [anon_sym_using] = ACTIONS(639),
    [anon_sym_function] = ACTIONS(639),
    [anon_sym_byte] = ACTIONS(639),
    [anon_sym_address] = ACTIONS(639),
    [anon_sym_var] = ACTIONS(639),
    [anon_sym_modifier] = ACTIONS(639),
    [anon_sym_constructor] = ACTIONS(639),
    [anon_sym_fallback] = ACTIONS(639),
    [anon_sym_receive] = ACTIONS(639),
    [anon_sym_mapping] = ACTIONS(639),
    [anon_sym_bool] = ACTIONS(639),
    [anon_sym_string] = ACTIONS(639),
    [anon_sym_int] = ACTIONS(639),
    [anon_sym_int8] = ACTIONS(639),
    [anon_sym_int16] = ACTIONS(639),
    [anon_sym_int24] = ACTIONS(639),
    [anon_sym_int32] = ACTIONS(639),
    [anon_sym_int40] = ACTIONS(639),
    [anon_sym_int48] = ACTIONS(639),
    [anon_sym_int56] = ACTIONS(639),
    [anon_sym_int64] = ACTIONS(639),
    [anon_sym_int72] = ACTIONS(639),
    [anon_sym_int80] = ACTIONS(639),
    [anon_sym_int88] = ACTIONS(639),
    [anon_sym_int96] = ACTIONS(639),
    [anon_sym_int104] = ACTIONS(639),
    [anon_sym_int112] = ACTIONS(639),
    [anon_sym_int120] = ACTIONS(639),
    [anon_sym_int128] = ACTIONS(639),
    [anon_sym_int136] = ACTIONS(639),
    [anon_sym_int144] = ACTIONS(639),
    [anon_sym_int152] = ACTIONS(639),
    [anon_sym_int160] = ACTIONS(639),
    [anon_sym_int168] = ACTIONS(639),
    [anon_sym_int176] = ACTIONS(639),
    [anon_sym_int184] = ACTIONS(639),
    [anon_sym_int192] = ACTIONS(639),
    [anon_sym_int200] = ACTIONS(639),
    [anon_sym_int208] = ACTIONS(639),
    [anon_sym_int216] = ACTIONS(639),
    [anon_sym_int224] = ACTIONS(639),
    [anon_sym_int232] = ACTIONS(639),
    [anon_sym_int240] = ACTIONS(639),
    [anon_sym_int248] = ACTIONS(639),
    [anon_sym_int256] = ACTIONS(639),
    [anon_sym_uint] = ACTIONS(639),
    [anon_sym_uint8] = ACTIONS(639),
    [anon_sym_uint16] = ACTIONS(639),
    [anon_sym_uint24] = ACTIONS(639),
    [anon_sym_uint32] = ACTIONS(639),
    [anon_sym_uint40] = ACTIONS(639),
    [anon_sym_uint48] = ACTIONS(639),
    [anon_sym_uint56] = ACTIONS(639),
    [anon_sym_uint64] = ACTIONS(639),
    [anon_sym_uint72] = ACTIONS(639),
    [anon_sym_uint80] = ACTIONS(639),
    [anon_sym_uint88] = ACTIONS(639),
    [anon_sym_uint96] = ACTIONS(639),
    [anon_sym_uint104] = ACTIONS(639),
    [anon_sym_uint112] = ACTIONS(639),
    [anon_sym_uint120] = ACTIONS(639),
    [anon_sym_uint128] = ACTIONS(639),
    [anon_sym_uint136] = ACTIONS(639),
    [anon_sym_uint144] = ACTIONS(639),
    [anon_sym_uint152] = ACTIONS(639),
    [anon_sym_uint160] = ACTIONS(639),
    [anon_sym_uint168] = ACTIONS(639),
    [anon_sym_uint176] = ACTIONS(639),
    [anon_sym_uint184] = ACTIONS(639),
    [anon_sym_uint192] = ACTIONS(639),
    [anon_sym_uint200] = ACTIONS(639),
    [anon_sym_uint208] = ACTIONS(639),
    [anon_sym_uint216] = ACTIONS(639),
    [anon_sym_uint224] = ACTIONS(639),
    [anon_sym_uint232] = ACTIONS(639),
    [anon_sym_uint240] = ACTIONS(639),
    [anon_sym_uint248] = ACTIONS(639),
    [anon_sym_uint256] = ACTIONS(639),
    [anon_sym_bytes] = ACTIONS(639),
    [anon_sym_bytes1] = ACTIONS(639),
    [anon_sym_bytes2] = ACTIONS(639),
    [anon_sym_bytes3] = ACTIONS(639),
    [anon_sym_bytes4] = ACTIONS(639),
    [anon_sym_bytes5] = ACTIONS(639),
    [anon_sym_bytes6] = ACTIONS(639),
    [anon_sym_bytes7] = ACTIONS(639),
    [anon_sym_bytes8] = ACTIONS(639),
    [anon_sym_bytes9] = ACTIONS(639),
    [anon_sym_bytes10] = ACTIONS(639),
    [anon_sym_bytes11] = ACTIONS(639),
    [anon_sym_bytes12] = ACTIONS(639),
    [anon_sym_bytes13] = ACTIONS(639),
    [anon_sym_bytes14] = ACTIONS(639),
    [anon_sym_bytes15] = ACTIONS(639),
    [anon_sym_bytes16] = ACTIONS(639),
    [anon_sym_bytes17] = ACTIONS(639),
    [anon_sym_bytes18] = ACTIONS(639),
    [anon_sym_bytes19] = ACTIONS(639),
    [anon_sym_bytes20] = ACTIONS(639),
    [anon_sym_bytes21] = ACTIONS(639),
    [anon_sym_bytes22] = ACTIONS(639),
    [anon_sym_bytes23] = ACTIONS(639),
    [anon_sym_bytes24] = ACTIONS(639),
    [anon_sym_bytes25] = ACTIONS(639),
    [anon_sym_bytes26] = ACTIONS(639),
    [anon_sym_bytes27] = ACTIONS(639),
    [anon_sym_bytes28] = ACTIONS(639),
    [anon_sym_bytes29] = ACTIONS(639),
    [anon_sym_bytes30] = ACTIONS(639),
    [anon_sym_bytes31] = ACTIONS(639),
    [anon_sym_bytes32] = ACTIONS(639),
    [anon_sym_fixed] = ACTIONS(639),
    [aux_sym__fixed_token1] = ACTIONS(639),
    [anon_sym_ufixed] = ACTIONS(639),
    [aux_sym__ufixed_token1] = ACTIONS(639),
    [sym_comment] = ACTIONS(3),
  },
  [147] = {
    [ts_builtin_sym_end] = ACTIONS(643),
    [sym_identifier] = ACTIONS(645),
    [anon_sym_pragma] = ACTIONS(645),
    [anon_sym_import] = ACTIONS(645),
    [anon_sym_type] = ACTIONS(645),
    [anon_sym_abstract] = ACTIONS(645),
    [anon_sym_contract] = ACTIONS(645),
    [anon_sym_error] = ACTIONS(645),
    [anon_sym_interface] = ACTIONS(645),
    [anon_sym_library] = ACTIONS(645),
    [anon_sym_struct] = ACTIONS(645),
    [anon_sym_enum] = ACTIONS(645),
    [anon_sym_function] = ACTIONS(645),
    [anon_sym_byte] = ACTIONS(645),
    [anon_sym_address] = ACTIONS(645),
    [anon_sym_var] = ACTIONS(645),
    [anon_sym_mapping] = ACTIONS(645),
    [anon_sym_bool] = ACTIONS(645),
    [anon_sym_string] = ACTIONS(645),
    [anon_sym_int] = ACTIONS(645),
    [anon_sym_int8] = ACTIONS(645),
    [anon_sym_int16] = ACTIONS(645),
    [anon_sym_int24] = ACTIONS(645),
    [anon_sym_int32] = ACTIONS(645),
    [anon_sym_int40] = ACTIONS(645),
    [anon_sym_int48] = ACTIONS(645),
    [anon_sym_int56] = ACTIONS(645),
    [anon_sym_int64] = ACTIONS(645),
    [anon_sym_int72] = ACTIONS(645),
    [anon_sym_int80] = ACTIONS(645),
    [anon_sym_int88] = ACTIONS(645),
    [anon_sym_int96] = ACTIONS(645),
    [anon_sym_int104] = ACTIONS(645),
    [anon_sym_int112] = ACTIONS(645),
    [anon_sym_int120] = ACTIONS(645),
    [anon_sym_int128] = ACTIONS(645),
    [anon_sym_int136] = ACTIONS(645),
    [anon_sym_int144] = ACTIONS(645),
    [anon_sym_int152] = ACTIONS(645),
    [anon_sym_int160] = ACTIONS(645),
    [anon_sym_int168] = ACTIONS(645),
    [anon_sym_int176] = ACTIONS(645),
    [anon_sym_int184] = ACTIONS(645),
    [anon_sym_int192] = ACTIONS(645),
    [anon_sym_int200] = ACTIONS(645),
    [anon_sym_int208] = ACTIONS(645),
    [anon_sym_int216] = ACTIONS(645),
    [anon_sym_int224] = ACTIONS(645),
    [anon_sym_int232] = ACTIONS(645),
    [anon_sym_int240] = ACTIONS(645),
    [anon_sym_int248] = ACTIONS(645),
    [anon_sym_int256] = ACTIONS(645),
    [anon_sym_uint] = ACTIONS(645),
    [anon_sym_uint8] = ACTIONS(645),
    [anon_sym_uint16] = ACTIONS(645),
    [anon_sym_uint24] = ACTIONS(645),
    [anon_sym_uint32] = ACTIONS(645),
    [anon_sym_uint40] = ACTIONS(645),
    [anon_sym_uint48] = ACTIONS(645),
    [anon_sym_uint56] = ACTIONS(645),
    [anon_sym_uint64] = ACTIONS(645),
    [anon_sym_uint72] = ACTIONS(645),
    [anon_sym_uint80] = ACTIONS(645),
    [anon_sym_uint88] = ACTIONS(645),
    [anon_sym_uint96] = ACTIONS(645),
    [anon_sym_uint104] = ACTIONS(645),
    [anon_sym_uint112] = ACTIONS(645),
    [anon_sym_uint120] = ACTIONS(645),
    [anon_sym_uint128] = ACTIONS(645),
    [anon_sym_uint136] = ACTIONS(645),
    [anon_sym_uint144] = ACTIONS(645),
    [anon_sym_uint152] = ACTIONS(645),
    [anon_sym_uint160] = ACTIONS(645),
    [anon_sym_uint168] = ACTIONS(645),
    [anon_sym_uint176] = ACTIONS(645),
    [anon_sym_uint184] = ACTIONS(645),
    [anon_sym_uint192] = ACTIONS(645),
    [anon_sym_uint200] = ACTIONS(645),
    [anon_sym_uint208] = ACTIONS(645),
    [anon_sym_uint216] = ACTIONS(645),
    [anon_sym_uint224] = ACTIONS(645),
    [anon_sym_uint232] = ACTIONS(645),
    [anon_sym_uint240] = ACTIONS(645),
    [anon_sym_uint248] = ACTIONS(645),
    [anon_sym_uint256] = ACTIONS(645),
    [anon_sym_bytes] = ACTIONS(645),
    [anon_sym_bytes1] = ACTIONS(645),
    [anon_sym_bytes2] = ACTIONS(645),
    [anon_sym_bytes3] = ACTIONS(645),
    [anon_sym_bytes4] = ACTIONS(645),
    [anon_sym_bytes5] = ACTIONS(645),
    [anon_sym_bytes6] = ACTIONS(645),
    [anon_sym_bytes7] = ACTIONS(645),
    [anon_sym_bytes8] = ACTIONS(645),
    [anon_sym_bytes9] = ACTIONS(645),
    [anon_sym_bytes10] = ACTIONS(645),
    [anon_sym_bytes11] = ACTIONS(645),
    [anon_sym_bytes12] = ACTIONS(645),
    [anon_sym_bytes13] = ACTIONS(645),
    [anon_sym_bytes14] = ACTIONS(645),
    [anon_sym_bytes15] = ACTIONS(645),
    [anon_sym_bytes16] = ACTIONS(645),
    [anon_sym_bytes17] = ACTIONS(645),
    [anon_sym_bytes18] = ACTIONS(645),
    [anon_sym_bytes19] = ACTIONS(645),
    [anon_sym_bytes20] = ACTIONS(645),
    [anon_sym_bytes21] = ACTIONS(645),
    [anon_sym_bytes22] = ACTIONS(645),
    [anon_sym_bytes23] = ACTIONS(645),
    [anon_sym_bytes24] = ACTIONS(645),
    [anon_sym_bytes25] = ACTIONS(645),
    [anon_sym_bytes26] = ACTIONS(645),
    [anon_sym_bytes27] = ACTIONS(645),
    [anon_sym_bytes28] = ACTIONS(645),
    [anon_sym_bytes29] = ACTIONS(645),
    [anon_sym_bytes30] = ACTIONS(645),
    [anon_sym_bytes31] = ACTIONS(645),
    [anon_sym_bytes32] = ACTIONS(645),
    [anon_sym_fixed] = ACTIONS(645),
    [aux_sym__fixed_token1] = ACTIONS(645),
    [anon_sym_ufixed] = ACTIONS(645),
    [aux_sym__ufixed_token1] = ACTIONS(645),
    [sym_comment] = ACTIONS(3),
  },
  [148] = {
    [sym_identifier] = ACTIONS(647),
    [anon_sym_RBRACE] = ACTIONS(649),
    [anon_sym_type] = ACTIONS(647),
    [anon_sym_error] = ACTIONS(647),
    [anon_sym_struct] = ACTIONS(647),
    [anon_sym_enum] = ACTIONS(647),
    [anon_sym_event] = ACTIONS(647),
    [anon_sym_using] = ACTIONS(647),
    [anon_sym_function] = ACTIONS(647),
    [anon_sym_byte] = ACTIONS(647),
    [anon_sym_address] = ACTIONS(647),
    [anon_sym_var] = ACTIONS(647),
    [anon_sym_modifier] = ACTIONS(647),
    [anon_sym_constructor] = ACTIONS(647),
    [anon_sym_fallback] = ACTIONS(647),
    [anon_sym_receive] = ACTIONS(647),
    [anon_sym_mapping] = ACTIONS(647),
    [anon_sym_bool] = ACTIONS(647),
    [anon_sym_string] = ACTIONS(647),
    [anon_sym_int] = ACTIONS(647),
    [anon_sym_int8] = ACTIONS(647),
    [anon_sym_int16] = ACTIONS(647),
    [anon_sym_int24] = ACTIONS(647),
    [anon_sym_int32] = ACTIONS(647),
    [anon_sym_int40] = ACTIONS(647),
    [anon_sym_int48] = ACTIONS(647),
    [anon_sym_int56] = ACTIONS(647),
    [anon_sym_int64] = ACTIONS(647),
    [anon_sym_int72] = ACTIONS(647),
    [anon_sym_int80] = ACTIONS(647),
    [anon_sym_int88] = ACTIONS(647),
    [anon_sym_int96] = ACTIONS(647),
    [anon_sym_int104] = ACTIONS(647),
    [anon_sym_int112] = ACTIONS(647),
    [anon_sym_int120] = ACTIONS(647),
    [anon_sym_int128] = ACTIONS(647),
    [anon_sym_int136] = ACTIONS(647),
    [anon_sym_int144] = ACTIONS(647),
    [anon_sym_int152] = ACTIONS(647),
    [anon_sym_int160] = ACTIONS(647),
    [anon_sym_int168] = ACTIONS(647),
    [anon_sym_int176] = ACTIONS(647),
    [anon_sym_int184] = ACTIONS(647),
    [anon_sym_int192] = ACTIONS(647),
    [anon_sym_int200] = ACTIONS(647),
    [anon_sym_int208] = ACTIONS(647),
    [anon_sym_int216] = ACTIONS(647),
    [anon_sym_int224] = ACTIONS(647),
    [anon_sym_int232] = ACTIONS(647),
    [anon_sym_int240] = ACTIONS(647),
    [anon_sym_int248] = ACTIONS(647),
    [anon_sym_int256] = ACTIONS(647),
    [anon_sym_uint] = ACTIONS(647),
    [anon_sym_uint8] = ACTIONS(647),
    [anon_sym_uint16] = ACTIONS(647),
    [anon_sym_uint24] = ACTIONS(647),
    [anon_sym_uint32] = ACTIONS(647),
    [anon_sym_uint40] = ACTIONS(647),
    [anon_sym_uint48] = ACTIONS(647),
    [anon_sym_uint56] = ACTIONS(647),
    [anon_sym_uint64] = ACTIONS(647),
    [anon_sym_uint72] = ACTIONS(647),
    [anon_sym_uint80] = ACTIONS(647),
    [anon_sym_uint88] = ACTIONS(647),
    [anon_sym_uint96] = ACTIONS(647),
    [anon_sym_uint104] = ACTIONS(647),
    [anon_sym_uint112] = ACTIONS(647),
    [anon_sym_uint120] = ACTIONS(647),
    [anon_sym_uint128] = ACTIONS(647),
    [anon_sym_uint136] = ACTIONS(647),
    [anon_sym_uint144] = ACTIONS(647),
    [anon_sym_uint152] = ACTIONS(647),
    [anon_sym_uint160] = ACTIONS(647),
    [anon_sym_uint168] = ACTIONS(647),
    [anon_sym_uint176] = ACTIONS(647),
    [anon_sym_uint184] = ACTIONS(647),
    [anon_sym_uint192] = ACTIONS(647),
    [anon_sym_uint200] = ACTIONS(647),
    [anon_sym_uint208] = ACTIONS(647),
    [anon_sym_uint216] = ACTIONS(647),
    [anon_sym_uint224] = ACTIONS(647),
    [anon_sym_uint232] = ACTIONS(647),
    [anon_sym_uint240] = ACTIONS(647),
    [anon_sym_uint248] = ACTIONS(647),
    [anon_sym_uint256] = ACTIONS(647),
    [anon_sym_bytes] = ACTIONS(647),
    [anon_sym_bytes1] = ACTIONS(647),
    [anon_sym_bytes2] = ACTIONS(647),
    [anon_sym_bytes3] = ACTIONS(647),
    [anon_sym_bytes4] = ACTIONS(647),
    [anon_sym_bytes5] = ACTIONS(647),
    [anon_sym_bytes6] = ACTIONS(647),
    [anon_sym_bytes7] = ACTIONS(647),
    [anon_sym_bytes8] = ACTIONS(647),
    [anon_sym_bytes9] = ACTIONS(647),
    [anon_sym_bytes10] = ACTIONS(647),
    [anon_sym_bytes11] = ACTIONS(647),
    [anon_sym_bytes12] = ACTIONS(647),
    [anon_sym_bytes13] = ACTIONS(647),
    [anon_sym_bytes14] = ACTIONS(647),
    [anon_sym_bytes15] = ACTIONS(647),
    [anon_sym_bytes16] = ACTIONS(647),
    [anon_sym_bytes17] = ACTIONS(647),
    [anon_sym_bytes18] = ACTIONS(647),
    [anon_sym_bytes19] = ACTIONS(647),
    [anon_sym_bytes20] = ACTIONS(647),
    [anon_sym_bytes21] = ACTIONS(647),
    [anon_sym_bytes22] = ACTIONS(647),
    [anon_sym_bytes23] = ACTIONS(647),
    [anon_sym_bytes24] = ACTIONS(647),
    [anon_sym_bytes25] = ACTIONS(647),
    [anon_sym_bytes26] = ACTIONS(647),
    [anon_sym_bytes27] = ACTIONS(647),
    [anon_sym_bytes28] = ACTIONS(647),
    [anon_sym_bytes29] = ACTIONS(647),
    [anon_sym_bytes30] = ACTIONS(647),
    [anon_sym_bytes31] = ACTIONS(647),
    [anon_sym_bytes32] = ACTIONS(647),
    [anon_sym_fixed] = ACTIONS(647),
    [aux_sym__fixed_token1] = ACTIONS(647),
    [anon_sym_ufixed] = ACTIONS(647),
    [aux_sym__ufixed_token1] = ACTIONS(647),
    [sym_comment] = ACTIONS(3),
  },
  [149] = {
    [sym_identifier] = ACTIONS(651),
    [anon_sym_RBRACE] = ACTIONS(653),
    [anon_sym_type] = ACTIONS(651),
    [anon_sym_error] = ACTIONS(651),
    [anon_sym_struct] = ACTIONS(651),
    [anon_sym_enum] = ACTIONS(651),
    [anon_sym_event] = ACTIONS(651),
    [anon_sym_using] = ACTIONS(651),
    [anon_sym_function] = ACTIONS(651),
    [anon_sym_byte] = ACTIONS(651),
    [anon_sym_address] = ACTIONS(651),
    [anon_sym_var] = ACTIONS(651),
    [anon_sym_modifier] = ACTIONS(651),
    [anon_sym_constructor] = ACTIONS(651),
    [anon_sym_fallback] = ACTIONS(651),
    [anon_sym_receive] = ACTIONS(651),
    [anon_sym_mapping] = ACTIONS(651),
    [anon_sym_bool] = ACTIONS(651),
    [anon_sym_string] = ACTIONS(651),
    [anon_sym_int] = ACTIONS(651),
    [anon_sym_int8] = ACTIONS(651),
    [anon_sym_int16] = ACTIONS(651),
    [anon_sym_int24] = ACTIONS(651),
    [anon_sym_int32] = ACTIONS(651),
    [anon_sym_int40] = ACTIONS(651),
    [anon_sym_int48] = ACTIONS(651),
    [anon_sym_int56] = ACTIONS(651),
    [anon_sym_int64] = ACTIONS(651),
    [anon_sym_int72] = ACTIONS(651),
    [anon_sym_int80] = ACTIONS(651),
    [anon_sym_int88] = ACTIONS(651),
    [anon_sym_int96] = ACTIONS(651),
    [anon_sym_int104] = ACTIONS(651),
    [anon_sym_int112] = ACTIONS(651),
    [anon_sym_int120] = ACTIONS(651),
    [anon_sym_int128] = ACTIONS(651),
    [anon_sym_int136] = ACTIONS(651),
    [anon_sym_int144] = ACTIONS(651),
    [anon_sym_int152] = ACTIONS(651),
    [anon_sym_int160] = ACTIONS(651),
    [anon_sym_int168] = ACTIONS(651),
    [anon_sym_int176] = ACTIONS(651),
    [anon_sym_int184] = ACTIONS(651),
    [anon_sym_int192] = ACTIONS(651),
    [anon_sym_int200] = ACTIONS(651),
    [anon_sym_int208] = ACTIONS(651),
    [anon_sym_int216] = ACTIONS(651),
    [anon_sym_int224] = ACTIONS(651),
    [anon_sym_int232] = ACTIONS(651),
    [anon_sym_int240] = ACTIONS(651),
    [anon_sym_int248] = ACTIONS(651),
    [anon_sym_int256] = ACTIONS(651),
    [anon_sym_uint] = ACTIONS(651),
    [anon_sym_uint8] = ACTIONS(651),
    [anon_sym_uint16] = ACTIONS(651),
    [anon_sym_uint24] = ACTIONS(651),
    [anon_sym_uint32] = ACTIONS(651),
    [anon_sym_uint40] = ACTIONS(651),
    [anon_sym_uint48] = ACTIONS(651),
    [anon_sym_uint56] = ACTIONS(651),
    [anon_sym_uint64] = ACTIONS(651),
    [anon_sym_uint72] = ACTIONS(651),
    [anon_sym_uint80] = ACTIONS(651),
    [anon_sym_uint88] = ACTIONS(651),
    [anon_sym_uint96] = ACTIONS(651),
    [anon_sym_uint104] = ACTIONS(651),
    [anon_sym_uint112] = ACTIONS(651),
    [anon_sym_uint120] = ACTIONS(651),
    [anon_sym_uint128] = ACTIONS(651),
    [anon_sym_uint136] = ACTIONS(651),
    [anon_sym_uint144] = ACTIONS(651),
    [anon_sym_uint152] = ACTIONS(651),
    [anon_sym_uint160] = ACTIONS(651),
    [anon_sym_uint168] = ACTIONS(651),
    [anon_sym_uint176] = ACTIONS(651),
    [anon_sym_uint184] = ACTIONS(651),
    [anon_sym_uint192] = ACTIONS(651),
    [anon_sym_uint200] = ACTIONS(651),
    [anon_sym_uint208] = ACTIONS(651),
    [anon_sym_uint216] = ACTIONS(651),
    [anon_sym_uint224] = ACTIONS(651),
    [anon_sym_uint232] = ACTIONS(651),
    [anon_sym_uint240] = ACTIONS(651),
    [anon_sym_uint248] = ACTIONS(651),
    [anon_sym_uint256] = ACTIONS(651),
    [anon_sym_bytes] = ACTIONS(651),
    [anon_sym_bytes1] = ACTIONS(651),
    [anon_sym_bytes2] = ACTIONS(651),
    [anon_sym_bytes3] = ACTIONS(651),
    [anon_sym_bytes4] = ACTIONS(651),
    [anon_sym_bytes5] = ACTIONS(651),
    [anon_sym_bytes6] = ACTIONS(651),
    [anon_sym_bytes7] = ACTIONS(651),
    [anon_sym_bytes8] = ACTIONS(651),
    [anon_sym_bytes9] = ACTIONS(651),
    [anon_sym_bytes10] = ACTIONS(651),
    [anon_sym_bytes11] = ACTIONS(651),
    [anon_sym_bytes12] = ACTIONS(651),
    [anon_sym_bytes13] = ACTIONS(651),
    [anon_sym_bytes14] = ACTIONS(651),
    [anon_sym_bytes15] = ACTIONS(651),
    [anon_sym_bytes16] = ACTIONS(651),
    [anon_sym_bytes17] = ACTIONS(651),
    [anon_sym_bytes18] = ACTIONS(651),
    [anon_sym_bytes19] = ACTIONS(651),
    [anon_sym_bytes20] = ACTIONS(651),
    [anon_sym_bytes21] = ACTIONS(651),
    [anon_sym_bytes22] = ACTIONS(651),
    [anon_sym_bytes23] = ACTIONS(651),
    [anon_sym_bytes24] = ACTIONS(651),
    [anon_sym_bytes25] = ACTIONS(651),
    [anon_sym_bytes26] = ACTIONS(651),
    [anon_sym_bytes27] = ACTIONS(651),
    [anon_sym_bytes28] = ACTIONS(651),
    [anon_sym_bytes29] = ACTIONS(651),
    [anon_sym_bytes30] = ACTIONS(651),
    [anon_sym_bytes31] = ACTIONS(651),
    [anon_sym_bytes32] = ACTIONS(651),
    [anon_sym_fixed] = ACTIONS(651),
    [aux_sym__fixed_token1] = ACTIONS(651),
    [anon_sym_ufixed] = ACTIONS(651),
    [aux_sym__ufixed_token1] = ACTIONS(651),
    [sym_comment] = ACTIONS(3),
  },
  [150] = {
    [sym_identifier] = ACTIONS(655),
    [anon_sym_RBRACE] = ACTIONS(657),
    [anon_sym_type] = ACTIONS(655),
    [anon_sym_error] = ACTIONS(655),
    [anon_sym_struct] = ACTIONS(655),
    [anon_sym_enum] = ACTIONS(655),
    [anon_sym_event] = ACTIONS(655),
    [anon_sym_using] = ACTIONS(655),
    [anon_sym_function] = ACTIONS(655),
    [anon_sym_byte] = ACTIONS(655),
    [anon_sym_address] = ACTIONS(655),
    [anon_sym_var] = ACTIONS(655),
    [anon_sym_modifier] = ACTIONS(655),
    [anon_sym_constructor] = ACTIONS(655),
    [anon_sym_fallback] = ACTIONS(655),
    [anon_sym_receive] = ACTIONS(655),
    [anon_sym_mapping] = ACTIONS(655),
    [anon_sym_bool] = ACTIONS(655),
    [anon_sym_string] = ACTIONS(655),
    [anon_sym_int] = ACTIONS(655),
    [anon_sym_int8] = ACTIONS(655),
    [anon_sym_int16] = ACTIONS(655),
    [anon_sym_int24] = ACTIONS(655),
    [anon_sym_int32] = ACTIONS(655),
    [anon_sym_int40] = ACTIONS(655),
    [anon_sym_int48] = ACTIONS(655),
    [anon_sym_int56] = ACTIONS(655),
    [anon_sym_int64] = ACTIONS(655),
    [anon_sym_int72] = ACTIONS(655),
    [anon_sym_int80] = ACTIONS(655),
    [anon_sym_int88] = ACTIONS(655),
    [anon_sym_int96] = ACTIONS(655),
    [anon_sym_int104] = ACTIONS(655),
    [anon_sym_int112] = ACTIONS(655),
    [anon_sym_int120] = ACTIONS(655),
    [anon_sym_int128] = ACTIONS(655),
    [anon_sym_int136] = ACTIONS(655),
    [anon_sym_int144] = ACTIONS(655),
    [anon_sym_int152] = ACTIONS(655),
    [anon_sym_int160] = ACTIONS(655),
    [anon_sym_int168] = ACTIONS(655),
    [anon_sym_int176] = ACTIONS(655),
    [anon_sym_int184] = ACTIONS(655),
    [anon_sym_int192] = ACTIONS(655),
    [anon_sym_int200] = ACTIONS(655),
    [anon_sym_int208] = ACTIONS(655),
    [anon_sym_int216] = ACTIONS(655),
    [anon_sym_int224] = ACTIONS(655),
    [anon_sym_int232] = ACTIONS(655),
    [anon_sym_int240] = ACTIONS(655),
    [anon_sym_int248] = ACTIONS(655),
    [anon_sym_int256] = ACTIONS(655),
    [anon_sym_uint] = ACTIONS(655),
    [anon_sym_uint8] = ACTIONS(655),
    [anon_sym_uint16] = ACTIONS(655),
    [anon_sym_uint24] = ACTIONS(655),
    [anon_sym_uint32] = ACTIONS(655),
    [anon_sym_uint40] = ACTIONS(655),
    [anon_sym_uint48] = ACTIONS(655),
    [anon_sym_uint56] = ACTIONS(655),
    [anon_sym_uint64] = ACTIONS(655),
    [anon_sym_uint72] = ACTIONS(655),
    [anon_sym_uint80] = ACTIONS(655),
    [anon_sym_uint88] = ACTIONS(655),
    [anon_sym_uint96] = ACTIONS(655),
    [anon_sym_uint104] = ACTIONS(655),
    [anon_sym_uint112] = ACTIONS(655),
    [anon_sym_uint120] = ACTIONS(655),
    [anon_sym_uint128] = ACTIONS(655),
    [anon_sym_uint136] = ACTIONS(655),
    [anon_sym_uint144] = ACTIONS(655),
    [anon_sym_uint152] = ACTIONS(655),
    [anon_sym_uint160] = ACTIONS(655),
    [anon_sym_uint168] = ACTIONS(655),
    [anon_sym_uint176] = ACTIONS(655),
    [anon_sym_uint184] = ACTIONS(655),
    [anon_sym_uint192] = ACTIONS(655),
    [anon_sym_uint200] = ACTIONS(655),
    [anon_sym_uint208] = ACTIONS(655),
    [anon_sym_uint216] = ACTIONS(655),
    [anon_sym_uint224] = ACTIONS(655),
    [anon_sym_uint232] = ACTIONS(655),
    [anon_sym_uint240] = ACTIONS(655),
    [anon_sym_uint248] = ACTIONS(655),
    [anon_sym_uint256] = ACTIONS(655),
    [anon_sym_bytes] = ACTIONS(655),
    [anon_sym_bytes1] = ACTIONS(655),
    [anon_sym_bytes2] = ACTIONS(655),
    [anon_sym_bytes3] = ACTIONS(655),
    [anon_sym_bytes4] = ACTIONS(655),
    [anon_sym_bytes5] = ACTIONS(655),
    [anon_sym_bytes6] = ACTIONS(655),
    [anon_sym_bytes7] = ACTIONS(655),
    [anon_sym_bytes8] = ACTIONS(655),
    [anon_sym_bytes9] = ACTIONS(655),
    [anon_sym_bytes10] = ACTIONS(655),
    [anon_sym_bytes11] = ACTIONS(655),
    [anon_sym_bytes12] = ACTIONS(655),
    [anon_sym_bytes13] = ACTIONS(655),
    [anon_sym_bytes14] = ACTIONS(655),
    [anon_sym_bytes15] = ACTIONS(655),
    [anon_sym_bytes16] = ACTIONS(655),
    [anon_sym_bytes17] = ACTIONS(655),
    [anon_sym_bytes18] = ACTIONS(655),
    [anon_sym_bytes19] = ACTIONS(655),
    [anon_sym_bytes20] = ACTIONS(655),
    [anon_sym_bytes21] = ACTIONS(655),
    [anon_sym_bytes22] = ACTIONS(655),
    [anon_sym_bytes23] = ACTIONS(655),
    [anon_sym_bytes24] = ACTIONS(655),
    [anon_sym_bytes25] = ACTIONS(655),
    [anon_sym_bytes26] = ACTIONS(655),
    [anon_sym_bytes27] = ACTIONS(655),
    [anon_sym_bytes28] = ACTIONS(655),
    [anon_sym_bytes29] = ACTIONS(655),
    [anon_sym_bytes30] = ACTIONS(655),
    [anon_sym_bytes31] = ACTIONS(655),
    [anon_sym_bytes32] = ACTIONS(655),
    [anon_sym_fixed] = ACTIONS(655),
    [aux_sym__fixed_token1] = ACTIONS(655),
    [anon_sym_ufixed] = ACTIONS(655),
    [aux_sym__ufixed_token1] = ACTIONS(655),
    [sym_comment] = ACTIONS(3),
  },
  [151] = {
    [ts_builtin_sym_end] = ACTIONS(659),
    [sym_identifier] = ACTIONS(661),
    [anon_sym_pragma] = ACTIONS(661),
    [anon_sym_import] = ACTIONS(661),
    [anon_sym_type] = ACTIONS(661),
    [anon_sym_abstract] = ACTIONS(661),
    [anon_sym_contract] = ACTIONS(661),
    [anon_sym_error] = ACTIONS(661),
    [anon_sym_interface] = ACTIONS(661),
    [anon_sym_library] = ACTIONS(661),
    [anon_sym_struct] = ACTIONS(661),
    [anon_sym_enum] = ACTIONS(661),
    [anon_sym_function] = ACTIONS(661),
    [anon_sym_byte] = ACTIONS(661),
    [anon_sym_address] = ACTIONS(661),
    [anon_sym_var] = ACTIONS(661),
    [anon_sym_mapping] = ACTIONS(661),
    [anon_sym_bool] = ACTIONS(661),
    [anon_sym_string] = ACTIONS(661),
    [anon_sym_int] = ACTIONS(661),
    [anon_sym_int8] = ACTIONS(661),
    [anon_sym_int16] = ACTIONS(661),
    [anon_sym_int24] = ACTIONS(661),
    [anon_sym_int32] = ACTIONS(661),
    [anon_sym_int40] = ACTIONS(661),
    [anon_sym_int48] = ACTIONS(661),
    [anon_sym_int56] = ACTIONS(661),
    [anon_sym_int64] = ACTIONS(661),
    [anon_sym_int72] = ACTIONS(661),
    [anon_sym_int80] = ACTIONS(661),
    [anon_sym_int88] = ACTIONS(661),
    [anon_sym_int96] = ACTIONS(661),
    [anon_sym_int104] = ACTIONS(661),
    [anon_sym_int112] = ACTIONS(661),
    [anon_sym_int120] = ACTIONS(661),
    [anon_sym_int128] = ACTIONS(661),
    [anon_sym_int136] = ACTIONS(661),
    [anon_sym_int144] = ACTIONS(661),
    [anon_sym_int152] = ACTIONS(661),
    [anon_sym_int160] = ACTIONS(661),
    [anon_sym_int168] = ACTIONS(661),
    [anon_sym_int176] = ACTIONS(661),
    [anon_sym_int184] = ACTIONS(661),
    [anon_sym_int192] = ACTIONS(661),
    [anon_sym_int200] = ACTIONS(661),
    [anon_sym_int208] = ACTIONS(661),
    [anon_sym_int216] = ACTIONS(661),
    [anon_sym_int224] = ACTIONS(661),
    [anon_sym_int232] = ACTIONS(661),
    [anon_sym_int240] = ACTIONS(661),
    [anon_sym_int248] = ACTIONS(661),
    [anon_sym_int256] = ACTIONS(661),
    [anon_sym_uint] = ACTIONS(661),
    [anon_sym_uint8] = ACTIONS(661),
    [anon_sym_uint16] = ACTIONS(661),
    [anon_sym_uint24] = ACTIONS(661),
    [anon_sym_uint32] = ACTIONS(661),
    [anon_sym_uint40] = ACTIONS(661),
    [anon_sym_uint48] = ACTIONS(661),
    [anon_sym_uint56] = ACTIONS(661),
    [anon_sym_uint64] = ACTIONS(661),
    [anon_sym_uint72] = ACTIONS(661),
    [anon_sym_uint80] = ACTIONS(661),
    [anon_sym_uint88] = ACTIONS(661),
    [anon_sym_uint96] = ACTIONS(661),
    [anon_sym_uint104] = ACTIONS(661),
    [anon_sym_uint112] = ACTIONS(661),
    [anon_sym_uint120] = ACTIONS(661),
    [anon_sym_uint128] = ACTIONS(661),
    [anon_sym_uint136] = ACTIONS(661),
    [anon_sym_uint144] = ACTIONS(661),
    [anon_sym_uint152] = ACTIONS(661),
    [anon_sym_uint160] = ACTIONS(661),
    [anon_sym_uint168] = ACTIONS(661),
    [anon_sym_uint176] = ACTIONS(661),
    [anon_sym_uint184] = ACTIONS(661),
    [anon_sym_uint192] = ACTIONS(661),
    [anon_sym_uint200] = ACTIONS(661),
    [anon_sym_uint208] = ACTIONS(661),
    [anon_sym_uint216] = ACTIONS(661),
    [anon_sym_uint224] = ACTIONS(661),
    [anon_sym_uint232] = ACTIONS(661),
    [anon_sym_uint240] = ACTIONS(661),
    [anon_sym_uint248] = ACTIONS(661),
    [anon_sym_uint256] = ACTIONS(661),
    [anon_sym_bytes] = ACTIONS(661),
    [anon_sym_bytes1] = ACTIONS(661),
    [anon_sym_bytes2] = ACTIONS(661),
    [anon_sym_bytes3] = ACTIONS(661),
    [anon_sym_bytes4] = ACTIONS(661),
    [anon_sym_bytes5] = ACTIONS(661),
    [anon_sym_bytes6] = ACTIONS(661),
    [anon_sym_bytes7] = ACTIONS(661),
    [anon_sym_bytes8] = ACTIONS(661),
    [anon_sym_bytes9] = ACTIONS(661),
    [anon_sym_bytes10] = ACTIONS(661),
    [anon_sym_bytes11] = ACTIONS(661),
    [anon_sym_bytes12] = ACTIONS(661),
    [anon_sym_bytes13] = ACTIONS(661),
    [anon_sym_bytes14] = ACTIONS(661),
    [anon_sym_bytes15] = ACTIONS(661),
    [anon_sym_bytes16] = ACTIONS(661),
    [anon_sym_bytes17] = ACTIONS(661),
    [anon_sym_bytes18] = ACTIONS(661),
    [anon_sym_bytes19] = ACTIONS(661),
    [anon_sym_bytes20] = ACTIONS(661),
    [anon_sym_bytes21] = ACTIONS(661),
    [anon_sym_bytes22] = ACTIONS(661),
    [anon_sym_bytes23] = ACTIONS(661),
    [anon_sym_bytes24] = ACTIONS(661),
    [anon_sym_bytes25] = ACTIONS(661),
    [anon_sym_bytes26] = ACTIONS(661),
    [anon_sym_bytes27] = ACTIONS(661),
    [anon_sym_bytes28] = ACTIONS(661),
    [anon_sym_bytes29] = ACTIONS(661),
    [anon_sym_bytes30] = ACTIONS(661),
    [anon_sym_bytes31] = ACTIONS(661),
    [anon_sym_bytes32] = ACTIONS(661),
    [anon_sym_fixed] = ACTIONS(661),
    [aux_sym__fixed_token1] = ACTIONS(661),
    [anon_sym_ufixed] = ACTIONS(661),
    [aux_sym__ufixed_token1] = ACTIONS(661),
    [sym_comment] = ACTIONS(3),
  },
  [152] = {
    [sym_identifier] = ACTIONS(645),
    [anon_sym_RBRACE] = ACTIONS(643),
    [anon_sym_type] = ACTIONS(645),
    [anon_sym_error] = ACTIONS(645),
    [anon_sym_struct] = ACTIONS(645),
    [anon_sym_enum] = ACTIONS(645),
    [anon_sym_event] = ACTIONS(645),
    [anon_sym_using] = ACTIONS(645),
    [anon_sym_function] = ACTIONS(645),
    [anon_sym_byte] = ACTIONS(645),
    [anon_sym_address] = ACTIONS(645),
    [anon_sym_var] = ACTIONS(645),
    [anon_sym_modifier] = ACTIONS(645),
    [anon_sym_constructor] = ACTIONS(645),
    [anon_sym_fallback] = ACTIONS(645),
    [anon_sym_receive] = ACTIONS(645),
    [anon_sym_mapping] = ACTIONS(645),
    [anon_sym_bool] = ACTIONS(645),
    [anon_sym_string] = ACTIONS(645),
    [anon_sym_int] = ACTIONS(645),
    [anon_sym_int8] = ACTIONS(645),
    [anon_sym_int16] = ACTIONS(645),
    [anon_sym_int24] = ACTIONS(645),
    [anon_sym_int32] = ACTIONS(645),
    [anon_sym_int40] = ACTIONS(645),
    [anon_sym_int48] = ACTIONS(645),
    [anon_sym_int56] = ACTIONS(645),
    [anon_sym_int64] = ACTIONS(645),
    [anon_sym_int72] = ACTIONS(645),
    [anon_sym_int80] = ACTIONS(645),
    [anon_sym_int88] = ACTIONS(645),
    [anon_sym_int96] = ACTIONS(645),
    [anon_sym_int104] = ACTIONS(645),
    [anon_sym_int112] = ACTIONS(645),
    [anon_sym_int120] = ACTIONS(645),
    [anon_sym_int128] = ACTIONS(645),
    [anon_sym_int136] = ACTIONS(645),
    [anon_sym_int144] = ACTIONS(645),
    [anon_sym_int152] = ACTIONS(645),
    [anon_sym_int160] = ACTIONS(645),
    [anon_sym_int168] = ACTIONS(645),
    [anon_sym_int176] = ACTIONS(645),
    [anon_sym_int184] = ACTIONS(645),
    [anon_sym_int192] = ACTIONS(645),
    [anon_sym_int200] = ACTIONS(645),
    [anon_sym_int208] = ACTIONS(645),
    [anon_sym_int216] = ACTIONS(645),
    [anon_sym_int224] = ACTIONS(645),
    [anon_sym_int232] = ACTIONS(645),
    [anon_sym_int240] = ACTIONS(645),
    [anon_sym_int248] = ACTIONS(645),
    [anon_sym_int256] = ACTIONS(645),
    [anon_sym_uint] = ACTIONS(645),
    [anon_sym_uint8] = ACTIONS(645),
    [anon_sym_uint16] = ACTIONS(645),
    [anon_sym_uint24] = ACTIONS(645),
    [anon_sym_uint32] = ACTIONS(645),
    [anon_sym_uint40] = ACTIONS(645),
    [anon_sym_uint48] = ACTIONS(645),
    [anon_sym_uint56] = ACTIONS(645),
    [anon_sym_uint64] = ACTIONS(645),
    [anon_sym_uint72] = ACTIONS(645),
    [anon_sym_uint80] = ACTIONS(645),
    [anon_sym_uint88] = ACTIONS(645),
    [anon_sym_uint96] = ACTIONS(645),
    [anon_sym_uint104] = ACTIONS(645),
    [anon_sym_uint112] = ACTIONS(645),
    [anon_sym_uint120] = ACTIONS(645),
    [anon_sym_uint128] = ACTIONS(645),
    [anon_sym_uint136] = ACTIONS(645),
    [anon_sym_uint144] = ACTIONS(645),
    [anon_sym_uint152] = ACTIONS(645),
    [anon_sym_uint160] = ACTIONS(645),
    [anon_sym_uint168] = ACTIONS(645),
    [anon_sym_uint176] = ACTIONS(645),
    [anon_sym_uint184] = ACTIONS(645),
    [anon_sym_uint192] = ACTIONS(645),
    [anon_sym_uint200] = ACTIONS(645),
    [anon_sym_uint208] = ACTIONS(645),
    [anon_sym_uint216] = ACTIONS(645),
    [anon_sym_uint224] = ACTIONS(645),
    [anon_sym_uint232] = ACTIONS(645),
    [anon_sym_uint240] = ACTIONS(645),
    [anon_sym_uint248] = ACTIONS(645),
    [anon_sym_uint256] = ACTIONS(645),
    [anon_sym_bytes] = ACTIONS(645),
    [anon_sym_bytes1] = ACTIONS(645),
    [anon_sym_bytes2] = ACTIONS(645),
    [anon_sym_bytes3] = ACTIONS(645),
    [anon_sym_bytes4] = ACTIONS(645),
    [anon_sym_bytes5] = ACTIONS(645),
    [anon_sym_bytes6] = ACTIONS(645),
    [anon_sym_bytes7] = ACTIONS(645),
    [anon_sym_bytes8] = ACTIONS(645),
    [anon_sym_bytes9] = ACTIONS(645),
    [anon_sym_bytes10] = ACTIONS(645),
    [anon_sym_bytes11] = ACTIONS(645),
    [anon_sym_bytes12] = ACTIONS(645),
    [anon_sym_bytes13] = ACTIONS(645),
    [anon_sym_bytes14] = ACTIONS(645),
    [anon_sym_bytes15] = ACTIONS(645),
    [anon_sym_bytes16] = ACTIONS(645),
    [anon_sym_bytes17] = ACTIONS(645),
    [anon_sym_bytes18] = ACTIONS(645),
    [anon_sym_bytes19] = ACTIONS(645),
    [anon_sym_bytes20] = ACTIONS(645),
    [anon_sym_bytes21] = ACTIONS(645),
    [anon_sym_bytes22] = ACTIONS(645),
    [anon_sym_bytes23] = ACTIONS(645),
    [anon_sym_bytes24] = ACTIONS(645),
    [anon_sym_bytes25] = ACTIONS(645),
    [anon_sym_bytes26] = ACTIONS(645),
    [anon_sym_bytes27] = ACTIONS(645),
    [anon_sym_bytes28] = ACTIONS(645),
    [anon_sym_bytes29] = ACTIONS(645),
    [anon_sym_bytes30] = ACTIONS(645),
    [anon_sym_bytes31] = ACTIONS(645),
    [anon_sym_bytes32] = ACTIONS(645),
    [anon_sym_fixed] = ACTIONS(645),
    [aux_sym__fixed_token1] = ACTIONS(645),
    [anon_sym_ufixed] = ACTIONS(645),
    [aux_sym__ufixed_token1] = ACTIONS(645),
    [sym_comment] = ACTIONS(3),
  },
  [153] = {
    [ts_builtin_sym_end] = ACTIONS(663),
    [sym_identifier] = ACTIONS(665),
    [anon_sym_pragma] = ACTIONS(665),
    [anon_sym_import] = ACTIONS(665),
    [anon_sym_type] = ACTIONS(665),
    [anon_sym_abstract] = ACTIONS(665),
    [anon_sym_contract] = ACTIONS(665),
    [anon_sym_error] = ACTIONS(665),
    [anon_sym_interface] = ACTIONS(665),
    [anon_sym_library] = ACTIONS(665),
    [anon_sym_struct] = ACTIONS(665),
    [anon_sym_enum] = ACTIONS(665),
    [anon_sym_function] = ACTIONS(665),
    [anon_sym_byte] = ACTIONS(665),
    [anon_sym_address] = ACTIONS(665),
    [anon_sym_var] = ACTIONS(665),
    [anon_sym_mapping] = ACTIONS(665),
    [anon_sym_bool] = ACTIONS(665),
    [anon_sym_string] = ACTIONS(665),
    [anon_sym_int] = ACTIONS(665),
    [anon_sym_int8] = ACTIONS(665),
    [anon_sym_int16] = ACTIONS(665),
    [anon_sym_int24] = ACTIONS(665),
    [anon_sym_int32] = ACTIONS(665),
    [anon_sym_int40] = ACTIONS(665),
    [anon_sym_int48] = ACTIONS(665),
    [anon_sym_int56] = ACTIONS(665),
    [anon_sym_int64] = ACTIONS(665),
    [anon_sym_int72] = ACTIONS(665),
    [anon_sym_int80] = ACTIONS(665),
    [anon_sym_int88] = ACTIONS(665),
    [anon_sym_int96] = ACTIONS(665),
    [anon_sym_int104] = ACTIONS(665),
    [anon_sym_int112] = ACTIONS(665),
    [anon_sym_int120] = ACTIONS(665),
    [anon_sym_int128] = ACTIONS(665),
    [anon_sym_int136] = ACTIONS(665),
    [anon_sym_int144] = ACTIONS(665),
    [anon_sym_int152] = ACTIONS(665),
    [anon_sym_int160] = ACTIONS(665),
    [anon_sym_int168] = ACTIONS(665),
    [anon_sym_int176] = ACTIONS(665),
    [anon_sym_int184] = ACTIONS(665),
    [anon_sym_int192] = ACTIONS(665),
    [anon_sym_int200] = ACTIONS(665),
    [anon_sym_int208] = ACTIONS(665),
    [anon_sym_int216] = ACTIONS(665),
    [anon_sym_int224] = ACTIONS(665),
    [anon_sym_int232] = ACTIONS(665),
    [anon_sym_int240] = ACTIONS(665),
    [anon_sym_int248] = ACTIONS(665),
    [anon_sym_int256] = ACTIONS(665),
    [anon_sym_uint] = ACTIONS(665),
    [anon_sym_uint8] = ACTIONS(665),
    [anon_sym_uint16] = ACTIONS(665),
    [anon_sym_uint24] = ACTIONS(665),
    [anon_sym_uint32] = ACTIONS(665),
    [anon_sym_uint40] = ACTIONS(665),
    [anon_sym_uint48] = ACTIONS(665),
    [anon_sym_uint56] = ACTIONS(665),
    [anon_sym_uint64] = ACTIONS(665),
    [anon_sym_uint72] = ACTIONS(665),
    [anon_sym_uint80] = ACTIONS(665),
    [anon_sym_uint88] = ACTIONS(665),
    [anon_sym_uint96] = ACTIONS(665),
    [anon_sym_uint104] = ACTIONS(665),
    [anon_sym_uint112] = ACTIONS(665),
    [anon_sym_uint120] = ACTIONS(665),
    [anon_sym_uint128] = ACTIONS(665),
    [anon_sym_uint136] = ACTIONS(665),
    [anon_sym_uint144] = ACTIONS(665),
    [anon_sym_uint152] = ACTIONS(665),
    [anon_sym_uint160] = ACTIONS(665),
    [anon_sym_uint168] = ACTIONS(665),
    [anon_sym_uint176] = ACTIONS(665),
    [anon_sym_uint184] = ACTIONS(665),
    [anon_sym_uint192] = ACTIONS(665),
    [anon_sym_uint200] = ACTIONS(665),
    [anon_sym_uint208] = ACTIONS(665),
    [anon_sym_uint216] = ACTIONS(665),
    [anon_sym_uint224] = ACTIONS(665),
    [anon_sym_uint232] = ACTIONS(665),
    [anon_sym_uint240] = ACTIONS(665),
    [anon_sym_uint248] = ACTIONS(665),
    [anon_sym_uint256] = ACTIONS(665),
    [anon_sym_bytes] = ACTIONS(665),
    [anon_sym_bytes1] = ACTIONS(665),
    [anon_sym_bytes2] = ACTIONS(665),
    [anon_sym_bytes3] = ACTIONS(665),
    [anon_sym_bytes4] = ACTIONS(665),
    [anon_sym_bytes5] = ACTIONS(665),
    [anon_sym_bytes6] = ACTIONS(665),
    [anon_sym_bytes7] = ACTIONS(665),
    [anon_sym_bytes8] = ACTIONS(665),
    [anon_sym_bytes9] = ACTIONS(665),
    [anon_sym_bytes10] = ACTIONS(665),
    [anon_sym_bytes11] = ACTIONS(665),
    [anon_sym_bytes12] = ACTIONS(665),
    [anon_sym_bytes13] = ACTIONS(665),
    [anon_sym_bytes14] = ACTIONS(665),
    [anon_sym_bytes15] = ACTIONS(665),
    [anon_sym_bytes16] = ACTIONS(665),
    [anon_sym_bytes17] = ACTIONS(665),
    [anon_sym_bytes18] = ACTIONS(665),
    [anon_sym_bytes19] = ACTIONS(665),
    [anon_sym_bytes20] = ACTIONS(665),
    [anon_sym_bytes21] = ACTIONS(665),
    [anon_sym_bytes22] = ACTIONS(665),
    [anon_sym_bytes23] = ACTIONS(665),
    [anon_sym_bytes24] = ACTIONS(665),
    [anon_sym_bytes25] = ACTIONS(665),
    [anon_sym_bytes26] = ACTIONS(665),
    [anon_sym_bytes27] = ACTIONS(665),
    [anon_sym_bytes28] = ACTIONS(665),
    [anon_sym_bytes29] = ACTIONS(665),
    [anon_sym_bytes30] = ACTIONS(665),
    [anon_sym_bytes31] = ACTIONS(665),
    [anon_sym_bytes32] = ACTIONS(665),
    [anon_sym_fixed] = ACTIONS(665),
    [aux_sym__fixed_token1] = ACTIONS(665),
    [anon_sym_ufixed] = ACTIONS(665),
    [aux_sym__ufixed_token1] = ACTIONS(665),
    [sym_comment] = ACTIONS(3),
  },
  [154] = {
    [sym_identifier] = ACTIONS(661),
    [anon_sym_RBRACE] = ACTIONS(659),
    [anon_sym_type] = ACTIONS(661),
    [anon_sym_error] = ACTIONS(661),
    [anon_sym_struct] = ACTIONS(661),
    [anon_sym_enum] = ACTIONS(661),
    [anon_sym_event] = ACTIONS(661),
    [anon_sym_using] = ACTIONS(661),
    [anon_sym_function] = ACTIONS(661),
    [anon_sym_byte] = ACTIONS(661),
    [anon_sym_address] = ACTIONS(661),
    [anon_sym_var] = ACTIONS(661),
    [anon_sym_modifier] = ACTIONS(661),
    [anon_sym_constructor] = ACTIONS(661),
    [anon_sym_fallback] = ACTIONS(661),
    [anon_sym_receive] = ACTIONS(661),
    [anon_sym_mapping] = ACTIONS(661),
    [anon_sym_bool] = ACTIONS(661),
    [anon_sym_string] = ACTIONS(661),
    [anon_sym_int] = ACTIONS(661),
    [anon_sym_int8] = ACTIONS(661),
    [anon_sym_int16] = ACTIONS(661),
    [anon_sym_int24] = ACTIONS(661),
    [anon_sym_int32] = ACTIONS(661),
    [anon_sym_int40] = ACTIONS(661),
    [anon_sym_int48] = ACTIONS(661),
    [anon_sym_int56] = ACTIONS(661),
    [anon_sym_int64] = ACTIONS(661),
    [anon_sym_int72] = ACTIONS(661),
    [anon_sym_int80] = ACTIONS(661),
    [anon_sym_int88] = ACTIONS(661),
    [anon_sym_int96] = ACTIONS(661),
    [anon_sym_int104] = ACTIONS(661),
    [anon_sym_int112] = ACTIONS(661),
    [anon_sym_int120] = ACTIONS(661),
    [anon_sym_int128] = ACTIONS(661),
    [anon_sym_int136] = ACTIONS(661),
    [anon_sym_int144] = ACTIONS(661),
    [anon_sym_int152] = ACTIONS(661),
    [anon_sym_int160] = ACTIONS(661),
    [anon_sym_int168] = ACTIONS(661),
    [anon_sym_int176] = ACTIONS(661),
    [anon_sym_int184] = ACTIONS(661),
    [anon_sym_int192] = ACTIONS(661),
    [anon_sym_int200] = ACTIONS(661),
    [anon_sym_int208] = ACTIONS(661),
    [anon_sym_int216] = ACTIONS(661),
    [anon_sym_int224] = ACTIONS(661),
    [anon_sym_int232] = ACTIONS(661),
    [anon_sym_int240] = ACTIONS(661),
    [anon_sym_int248] = ACTIONS(661),
    [anon_sym_int256] = ACTIONS(661),
    [anon_sym_uint] = ACTIONS(661),
    [anon_sym_uint8] = ACTIONS(661),
    [anon_sym_uint16] = ACTIONS(661),
    [anon_sym_uint24] = ACTIONS(661),
    [anon_sym_uint32] = ACTIONS(661),
    [anon_sym_uint40] = ACTIONS(661),
    [anon_sym_uint48] = ACTIONS(661),
    [anon_sym_uint56] = ACTIONS(661),
    [anon_sym_uint64] = ACTIONS(661),
    [anon_sym_uint72] = ACTIONS(661),
    [anon_sym_uint80] = ACTIONS(661),
    [anon_sym_uint88] = ACTIONS(661),
    [anon_sym_uint96] = ACTIONS(661),
    [anon_sym_uint104] = ACTIONS(661),
    [anon_sym_uint112] = ACTIONS(661),
    [anon_sym_uint120] = ACTIONS(661),
    [anon_sym_uint128] = ACTIONS(661),
    [anon_sym_uint136] = ACTIONS(661),
    [anon_sym_uint144] = ACTIONS(661),
    [anon_sym_uint152] = ACTIONS(661),
    [anon_sym_uint160] = ACTIONS(661),
    [anon_sym_uint168] = ACTIONS(661),
    [anon_sym_uint176] = ACTIONS(661),
    [anon_sym_uint184] = ACTIONS(661),
    [anon_sym_uint192] = ACTIONS(661),
    [anon_sym_uint200] = ACTIONS(661),
    [anon_sym_uint208] = ACTIONS(661),
    [anon_sym_uint216] = ACTIONS(661),
    [anon_sym_uint224] = ACTIONS(661),
    [anon_sym_uint232] = ACTIONS(661),
    [anon_sym_uint240] = ACTIONS(661),
    [anon_sym_uint248] = ACTIONS(661),
    [anon_sym_uint256] = ACTIONS(661),
    [anon_sym_bytes] = ACTIONS(661),
    [anon_sym_bytes1] = ACTIONS(661),
    [anon_sym_bytes2] = ACTIONS(661),
    [anon_sym_bytes3] = ACTIONS(661),
    [anon_sym_bytes4] = ACTIONS(661),
    [anon_sym_bytes5] = ACTIONS(661),
    [anon_sym_bytes6] = ACTIONS(661),
    [anon_sym_bytes7] = ACTIONS(661),
    [anon_sym_bytes8] = ACTIONS(661),
    [anon_sym_bytes9] = ACTIONS(661),
    [anon_sym_bytes10] = ACTIONS(661),
    [anon_sym_bytes11] = ACTIONS(661),
    [anon_sym_bytes12] = ACTIONS(661),
    [anon_sym_bytes13] = ACTIONS(661),
    [anon_sym_bytes14] = ACTIONS(661),
    [anon_sym_bytes15] = ACTIONS(661),
    [anon_sym_bytes16] = ACTIONS(661),
    [anon_sym_bytes17] = ACTIONS(661),
    [anon_sym_bytes18] = ACTIONS(661),
    [anon_sym_bytes19] = ACTIONS(661),
    [anon_sym_bytes20] = ACTIONS(661),
    [anon_sym_bytes21] = ACTIONS(661),
    [anon_sym_bytes22] = ACTIONS(661),
    [anon_sym_bytes23] = ACTIONS(661),
    [anon_sym_bytes24] = ACTIONS(661),
    [anon_sym_bytes25] = ACTIONS(661),
    [anon_sym_bytes26] = ACTIONS(661),
    [anon_sym_bytes27] = ACTIONS(661),
    [anon_sym_bytes28] = ACTIONS(661),
    [anon_sym_bytes29] = ACTIONS(661),
    [anon_sym_bytes30] = ACTIONS(661),
    [anon_sym_bytes31] = ACTIONS(661),
    [anon_sym_bytes32] = ACTIONS(661),
    [anon_sym_fixed] = ACTIONS(661),
    [aux_sym__fixed_token1] = ACTIONS(661),
    [anon_sym_ufixed] = ACTIONS(661),
    [aux_sym__ufixed_token1] = ACTIONS(661),
    [sym_comment] = ACTIONS(3),
  },
  [155] = {
    [sym_identifier] = ACTIONS(667),
    [anon_sym_RBRACE] = ACTIONS(669),
    [anon_sym_type] = ACTIONS(667),
    [anon_sym_error] = ACTIONS(667),
    [anon_sym_struct] = ACTIONS(667),
    [anon_sym_enum] = ACTIONS(667),
    [anon_sym_event] = ACTIONS(667),
    [anon_sym_using] = ACTIONS(667),
    [anon_sym_function] = ACTIONS(667),
    [anon_sym_byte] = ACTIONS(667),
    [anon_sym_address] = ACTIONS(667),
    [anon_sym_var] = ACTIONS(667),
    [anon_sym_modifier] = ACTIONS(667),
    [anon_sym_constructor] = ACTIONS(667),
    [anon_sym_fallback] = ACTIONS(667),
    [anon_sym_receive] = ACTIONS(667),
    [anon_sym_mapping] = ACTIONS(667),
    [anon_sym_bool] = ACTIONS(667),
    [anon_sym_string] = ACTIONS(667),
    [anon_sym_int] = ACTIONS(667),
    [anon_sym_int8] = ACTIONS(667),
    [anon_sym_int16] = ACTIONS(667),
    [anon_sym_int24] = ACTIONS(667),
    [anon_sym_int32] = ACTIONS(667),
    [anon_sym_int40] = ACTIONS(667),
    [anon_sym_int48] = ACTIONS(667),
    [anon_sym_int56] = ACTIONS(667),
    [anon_sym_int64] = ACTIONS(667),
    [anon_sym_int72] = ACTIONS(667),
    [anon_sym_int80] = ACTIONS(667),
    [anon_sym_int88] = ACTIONS(667),
    [anon_sym_int96] = ACTIONS(667),
    [anon_sym_int104] = ACTIONS(667),
    [anon_sym_int112] = ACTIONS(667),
    [anon_sym_int120] = ACTIONS(667),
    [anon_sym_int128] = ACTIONS(667),
    [anon_sym_int136] = ACTIONS(667),
    [anon_sym_int144] = ACTIONS(667),
    [anon_sym_int152] = ACTIONS(667),
    [anon_sym_int160] = ACTIONS(667),
    [anon_sym_int168] = ACTIONS(667),
    [anon_sym_int176] = ACTIONS(667),
    [anon_sym_int184] = ACTIONS(667),
    [anon_sym_int192] = ACTIONS(667),
    [anon_sym_int200] = ACTIONS(667),
    [anon_sym_int208] = ACTIONS(667),
    [anon_sym_int216] = ACTIONS(667),
    [anon_sym_int224] = ACTIONS(667),
    [anon_sym_int232] = ACTIONS(667),
    [anon_sym_int240] = ACTIONS(667),
    [anon_sym_int248] = ACTIONS(667),
    [anon_sym_int256] = ACTIONS(667),
    [anon_sym_uint] = ACTIONS(667),
    [anon_sym_uint8] = ACTIONS(667),
    [anon_sym_uint16] = ACTIONS(667),
    [anon_sym_uint24] = ACTIONS(667),
    [anon_sym_uint32] = ACTIONS(667),
    [anon_sym_uint40] = ACTIONS(667),
    [anon_sym_uint48] = ACTIONS(667),
    [anon_sym_uint56] = ACTIONS(667),
    [anon_sym_uint64] = ACTIONS(667),
    [anon_sym_uint72] = ACTIONS(667),
    [anon_sym_uint80] = ACTIONS(667),
    [anon_sym_uint88] = ACTIONS(667),
    [anon_sym_uint96] = ACTIONS(667),
    [anon_sym_uint104] = ACTIONS(667),
    [anon_sym_uint112] = ACTIONS(667),
    [anon_sym_uint120] = ACTIONS(667),
    [anon_sym_uint128] = ACTIONS(667),
    [anon_sym_uint136] = ACTIONS(667),
    [anon_sym_uint144] = ACTIONS(667),
    [anon_sym_uint152] = ACTIONS(667),
    [anon_sym_uint160] = ACTIONS(667),
    [anon_sym_uint168] = ACTIONS(667),
    [anon_sym_uint176] = ACTIONS(667),
    [anon_sym_uint184] = ACTIONS(667),
    [anon_sym_uint192] = ACTIONS(667),
    [anon_sym_uint200] = ACTIONS(667),
    [anon_sym_uint208] = ACTIONS(667),
    [anon_sym_uint216] = ACTIONS(667),
    [anon_sym_uint224] = ACTIONS(667),
    [anon_sym_uint232] = ACTIONS(667),
    [anon_sym_uint240] = ACTIONS(667),
    [anon_sym_uint248] = ACTIONS(667),
    [anon_sym_uint256] = ACTIONS(667),
    [anon_sym_bytes] = ACTIONS(667),
    [anon_sym_bytes1] = ACTIONS(667),
    [anon_sym_bytes2] = ACTIONS(667),
    [anon_sym_bytes3] = ACTIONS(667),
    [anon_sym_bytes4] = ACTIONS(667),
    [anon_sym_bytes5] = ACTIONS(667),
    [anon_sym_bytes6] = ACTIONS(667),
    [anon_sym_bytes7] = ACTIONS(667),
    [anon_sym_bytes8] = ACTIONS(667),
    [anon_sym_bytes9] = ACTIONS(667),
    [anon_sym_bytes10] = ACTIONS(667),
    [anon_sym_bytes11] = ACTIONS(667),
    [anon_sym_bytes12] = ACTIONS(667),
    [anon_sym_bytes13] = ACTIONS(667),
    [anon_sym_bytes14] = ACTIONS(667),
    [anon_sym_bytes15] = ACTIONS(667),
    [anon_sym_bytes16] = ACTIONS(667),
    [anon_sym_bytes17] = ACTIONS(667),
    [anon_sym_bytes18] = ACTIONS(667),
    [anon_sym_bytes19] = ACTIONS(667),
    [anon_sym_bytes20] = ACTIONS(667),
    [anon_sym_bytes21] = ACTIONS(667),
    [anon_sym_bytes22] = ACTIONS(667),
    [anon_sym_bytes23] = ACTIONS(667),
    [anon_sym_bytes24] = ACTIONS(667),
    [anon_sym_bytes25] = ACTIONS(667),
    [anon_sym_bytes26] = ACTIONS(667),
    [anon_sym_bytes27] = ACTIONS(667),
    [anon_sym_bytes28] = ACTIONS(667),
    [anon_sym_bytes29] = ACTIONS(667),
    [anon_sym_bytes30] = ACTIONS(667),
    [anon_sym_bytes31] = ACTIONS(667),
    [anon_sym_bytes32] = ACTIONS(667),
    [anon_sym_fixed] = ACTIONS(667),
    [aux_sym__fixed_token1] = ACTIONS(667),
    [anon_sym_ufixed] = ACTIONS(667),
    [aux_sym__ufixed_token1] = ACTIONS(667),
    [sym_comment] = ACTIONS(3),
  },
  [156] = {
    [ts_builtin_sym_end] = ACTIONS(671),
    [sym_identifier] = ACTIONS(673),
    [anon_sym_pragma] = ACTIONS(673),
    [anon_sym_import] = ACTIONS(673),
    [anon_sym_type] = ACTIONS(673),
    [anon_sym_abstract] = ACTIONS(673),
    [anon_sym_contract] = ACTIONS(673),
    [anon_sym_error] = ACTIONS(673),
    [anon_sym_interface] = ACTIONS(673),
    [anon_sym_library] = ACTIONS(673),
    [anon_sym_struct] = ACTIONS(673),
    [anon_sym_enum] = ACTIONS(673),
    [anon_sym_function] = ACTIONS(673),
    [anon_sym_byte] = ACTIONS(673),
    [anon_sym_address] = ACTIONS(673),
    [anon_sym_var] = ACTIONS(673),
    [anon_sym_mapping] = ACTIONS(673),
    [anon_sym_bool] = ACTIONS(673),
    [anon_sym_string] = ACTIONS(673),
    [anon_sym_int] = ACTIONS(673),
    [anon_sym_int8] = ACTIONS(673),
    [anon_sym_int16] = ACTIONS(673),
    [anon_sym_int24] = ACTIONS(673),
    [anon_sym_int32] = ACTIONS(673),
    [anon_sym_int40] = ACTIONS(673),
    [anon_sym_int48] = ACTIONS(673),
    [anon_sym_int56] = ACTIONS(673),
    [anon_sym_int64] = ACTIONS(673),
    [anon_sym_int72] = ACTIONS(673),
    [anon_sym_int80] = ACTIONS(673),
    [anon_sym_int88] = ACTIONS(673),
    [anon_sym_int96] = ACTIONS(673),
    [anon_sym_int104] = ACTIONS(673),
    [anon_sym_int112] = ACTIONS(673),
    [anon_sym_int120] = ACTIONS(673),
    [anon_sym_int128] = ACTIONS(673),
    [anon_sym_int136] = ACTIONS(673),
    [anon_sym_int144] = ACTIONS(673),
    [anon_sym_int152] = ACTIONS(673),
    [anon_sym_int160] = ACTIONS(673),
    [anon_sym_int168] = ACTIONS(673),
    [anon_sym_int176] = ACTIONS(673),
    [anon_sym_int184] = ACTIONS(673),
    [anon_sym_int192] = ACTIONS(673),
    [anon_sym_int200] = ACTIONS(673),
    [anon_sym_int208] = ACTIONS(673),
    [anon_sym_int216] = ACTIONS(673),
    [anon_sym_int224] = ACTIONS(673),
    [anon_sym_int232] = ACTIONS(673),
    [anon_sym_int240] = ACTIONS(673),
    [anon_sym_int248] = ACTIONS(673),
    [anon_sym_int256] = ACTIONS(673),
    [anon_sym_uint] = ACTIONS(673),
    [anon_sym_uint8] = ACTIONS(673),
    [anon_sym_uint16] = ACTIONS(673),
    [anon_sym_uint24] = ACTIONS(673),
    [anon_sym_uint32] = ACTIONS(673),
    [anon_sym_uint40] = ACTIONS(673),
    [anon_sym_uint48] = ACTIONS(673),
    [anon_sym_uint56] = ACTIONS(673),
    [anon_sym_uint64] = ACTIONS(673),
    [anon_sym_uint72] = ACTIONS(673),
    [anon_sym_uint80] = ACTIONS(673),
    [anon_sym_uint88] = ACTIONS(673),
    [anon_sym_uint96] = ACTIONS(673),
    [anon_sym_uint104] = ACTIONS(673),
    [anon_sym_uint112] = ACTIONS(673),
    [anon_sym_uint120] = ACTIONS(673),
    [anon_sym_uint128] = ACTIONS(673),
    [anon_sym_uint136] = ACTIONS(673),
    [anon_sym_uint144] = ACTIONS(673),
    [anon_sym_uint152] = ACTIONS(673),
    [anon_sym_uint160] = ACTIONS(673),
    [anon_sym_uint168] = ACTIONS(673),
    [anon_sym_uint176] = ACTIONS(673),
    [anon_sym_uint184] = ACTIONS(673),
    [anon_sym_uint192] = ACTIONS(673),
    [anon_sym_uint200] = ACTIONS(673),
    [anon_sym_uint208] = ACTIONS(673),
    [anon_sym_uint216] = ACTIONS(673),
    [anon_sym_uint224] = ACTIONS(673),
    [anon_sym_uint232] = ACTIONS(673),
    [anon_sym_uint240] = ACTIONS(673),
    [anon_sym_uint248] = ACTIONS(673),
    [anon_sym_uint256] = ACTIONS(673),
    [anon_sym_bytes] = ACTIONS(673),
    [anon_sym_bytes1] = ACTIONS(673),
    [anon_sym_bytes2] = ACTIONS(673),
    [anon_sym_bytes3] = ACTIONS(673),
    [anon_sym_bytes4] = ACTIONS(673),
    [anon_sym_bytes5] = ACTIONS(673),
    [anon_sym_bytes6] = ACTIONS(673),
    [anon_sym_bytes7] = ACTIONS(673),
    [anon_sym_bytes8] = ACTIONS(673),
    [anon_sym_bytes9] = ACTIONS(673),
    [anon_sym_bytes10] = ACTIONS(673),
    [anon_sym_bytes11] = ACTIONS(673),
    [anon_sym_bytes12] = ACTIONS(673),
    [anon_sym_bytes13] = ACTIONS(673),
    [anon_sym_bytes14] = ACTIONS(673),
    [anon_sym_bytes15] = ACTIONS(673),
    [anon_sym_bytes16] = ACTIONS(673),
    [anon_sym_bytes17] = ACTIONS(673),
    [anon_sym_bytes18] = ACTIONS(673),
    [anon_sym_bytes19] = ACTIONS(673),
    [anon_sym_bytes20] = ACTIONS(673),
    [anon_sym_bytes21] = ACTIONS(673),
    [anon_sym_bytes22] = ACTIONS(673),
    [anon_sym_bytes23] = ACTIONS(673),
    [anon_sym_bytes24] = ACTIONS(673),
    [anon_sym_bytes25] = ACTIONS(673),
    [anon_sym_bytes26] = ACTIONS(673),
    [anon_sym_bytes27] = ACTIONS(673),
    [anon_sym_bytes28] = ACTIONS(673),
    [anon_sym_bytes29] = ACTIONS(673),
    [anon_sym_bytes30] = ACTIONS(673),
    [anon_sym_bytes31] = ACTIONS(673),
    [anon_sym_bytes32] = ACTIONS(673),
    [anon_sym_fixed] = ACTIONS(673),
    [aux_sym__fixed_token1] = ACTIONS(673),
    [anon_sym_ufixed] = ACTIONS(673),
    [aux_sym__ufixed_token1] = ACTIONS(673),
    [sym_comment] = ACTIONS(3),
  },
  [157] = {
    [ts_builtin_sym_end] = ACTIONS(675),
    [sym_identifier] = ACTIONS(677),
    [anon_sym_pragma] = ACTIONS(677),
    [anon_sym_import] = ACTIONS(677),
    [anon_sym_type] = ACTIONS(677),
    [anon_sym_abstract] = ACTIONS(677),
    [anon_sym_contract] = ACTIONS(677),
    [anon_sym_error] = ACTIONS(677),
    [anon_sym_interface] = ACTIONS(677),
    [anon_sym_library] = ACTIONS(677),
    [anon_sym_struct] = ACTIONS(677),
    [anon_sym_enum] = ACTIONS(677),
    [anon_sym_function] = ACTIONS(677),
    [anon_sym_byte] = ACTIONS(677),
    [anon_sym_address] = ACTIONS(677),
    [anon_sym_var] = ACTIONS(677),
    [anon_sym_mapping] = ACTIONS(677),
    [anon_sym_bool] = ACTIONS(677),
    [anon_sym_string] = ACTIONS(677),
    [anon_sym_int] = ACTIONS(677),
    [anon_sym_int8] = ACTIONS(677),
    [anon_sym_int16] = ACTIONS(677),
    [anon_sym_int24] = ACTIONS(677),
    [anon_sym_int32] = ACTIONS(677),
    [anon_sym_int40] = ACTIONS(677),
    [anon_sym_int48] = ACTIONS(677),
    [anon_sym_int56] = ACTIONS(677),
    [anon_sym_int64] = ACTIONS(677),
    [anon_sym_int72] = ACTIONS(677),
    [anon_sym_int80] = ACTIONS(677),
    [anon_sym_int88] = ACTIONS(677),
    [anon_sym_int96] = ACTIONS(677),
    [anon_sym_int104] = ACTIONS(677),
    [anon_sym_int112] = ACTIONS(677),
    [anon_sym_int120] = ACTIONS(677),
    [anon_sym_int128] = ACTIONS(677),
    [anon_sym_int136] = ACTIONS(677),
    [anon_sym_int144] = ACTIONS(677),
    [anon_sym_int152] = ACTIONS(677),
    [anon_sym_int160] = ACTIONS(677),
    [anon_sym_int168] = ACTIONS(677),
    [anon_sym_int176] = ACTIONS(677),
    [anon_sym_int184] = ACTIONS(677),
    [anon_sym_int192] = ACTIONS(677),
    [anon_sym_int200] = ACTIONS(677),
    [anon_sym_int208] = ACTIONS(677),
    [anon_sym_int216] = ACTIONS(677),
    [anon_sym_int224] = ACTIONS(677),
    [anon_sym_int232] = ACTIONS(677),
    [anon_sym_int240] = ACTIONS(677),
    [anon_sym_int248] = ACTIONS(677),
    [anon_sym_int256] = ACTIONS(677),
    [anon_sym_uint] = ACTIONS(677),
    [anon_sym_uint8] = ACTIONS(677),
    [anon_sym_uint16] = ACTIONS(677),
    [anon_sym_uint24] = ACTIONS(677),
    [anon_sym_uint32] = ACTIONS(677),
    [anon_sym_uint40] = ACTIONS(677),
    [anon_sym_uint48] = ACTIONS(677),
    [anon_sym_uint56] = ACTIONS(677),
    [anon_sym_uint64] = ACTIONS(677),
    [anon_sym_uint72] = ACTIONS(677),
    [anon_sym_uint80] = ACTIONS(677),
    [anon_sym_uint88] = ACTIONS(677),
    [anon_sym_uint96] = ACTIONS(677),
    [anon_sym_uint104] = ACTIONS(677),
    [anon_sym_uint112] = ACTIONS(677),
    [anon_sym_uint120] = ACTIONS(677),
    [anon_sym_uint128] = ACTIONS(677),
    [anon_sym_uint136] = ACTIONS(677),
    [anon_sym_uint144] = ACTIONS(677),
    [anon_sym_uint152] = ACTIONS(677),
    [anon_sym_uint160] = ACTIONS(677),
    [anon_sym_uint168] = ACTIONS(677),
    [anon_sym_uint176] = ACTIONS(677),
    [anon_sym_uint184] = ACTIONS(677),
    [anon_sym_uint192] = ACTIONS(677),
    [anon_sym_uint200] = ACTIONS(677),
    [anon_sym_uint208] = ACTIONS(677),
    [anon_sym_uint216] = ACTIONS(677),
    [anon_sym_uint224] = ACTIONS(677),
    [anon_sym_uint232] = ACTIONS(677),
    [anon_sym_uint240] = ACTIONS(677),
    [anon_sym_uint248] = ACTIONS(677),
    [anon_sym_uint256] = ACTIONS(677),
    [anon_sym_bytes] = ACTIONS(677),
    [anon_sym_bytes1] = ACTIONS(677),
    [anon_sym_bytes2] = ACTIONS(677),
    [anon_sym_bytes3] = ACTIONS(677),
    [anon_sym_bytes4] = ACTIONS(677),
    [anon_sym_bytes5] = ACTIONS(677),
    [anon_sym_bytes6] = ACTIONS(677),
    [anon_sym_bytes7] = ACTIONS(677),
    [anon_sym_bytes8] = ACTIONS(677),
    [anon_sym_bytes9] = ACTIONS(677),
    [anon_sym_bytes10] = ACTIONS(677),
    [anon_sym_bytes11] = ACTIONS(677),
    [anon_sym_bytes12] = ACTIONS(677),
    [anon_sym_bytes13] = ACTIONS(677),
    [anon_sym_bytes14] = ACTIONS(677),
    [anon_sym_bytes15] = ACTIONS(677),
    [anon_sym_bytes16] = ACTIONS(677),
    [anon_sym_bytes17] = ACTIONS(677),
    [anon_sym_bytes18] = ACTIONS(677),
    [anon_sym_bytes19] = ACTIONS(677),
    [anon_sym_bytes20] = ACTIONS(677),
    [anon_sym_bytes21] = ACTIONS(677),
    [anon_sym_bytes22] = ACTIONS(677),
    [anon_sym_bytes23] = ACTIONS(677),
    [anon_sym_bytes24] = ACTIONS(677),
    [anon_sym_bytes25] = ACTIONS(677),
    [anon_sym_bytes26] = ACTIONS(677),
    [anon_sym_bytes27] = ACTIONS(677),
    [anon_sym_bytes28] = ACTIONS(677),
    [anon_sym_bytes29] = ACTIONS(677),
    [anon_sym_bytes30] = ACTIONS(677),
    [anon_sym_bytes31] = ACTIONS(677),
    [anon_sym_bytes32] = ACTIONS(677),
    [anon_sym_fixed] = ACTIONS(677),
    [aux_sym__fixed_token1] = ACTIONS(677),
    [anon_sym_ufixed] = ACTIONS(677),
    [aux_sym__ufixed_token1] = ACTIONS(677),
    [sym_comment] = ACTIONS(3),
  },
  [158] = {
    [ts_builtin_sym_end] = ACTIONS(679),
    [sym_identifier] = ACTIONS(681),
    [anon_sym_pragma] = ACTIONS(681),
    [anon_sym_import] = ACTIONS(681),
    [anon_sym_type] = ACTIONS(681),
    [anon_sym_abstract] = ACTIONS(681),
    [anon_sym_contract] = ACTIONS(681),
    [anon_sym_error] = ACTIONS(681),
    [anon_sym_interface] = ACTIONS(681),
    [anon_sym_library] = ACTIONS(681),
    [anon_sym_struct] = ACTIONS(681),
    [anon_sym_enum] = ACTIONS(681),
    [anon_sym_function] = ACTIONS(681),
    [anon_sym_byte] = ACTIONS(681),
    [anon_sym_address] = ACTIONS(681),
    [anon_sym_var] = ACTIONS(681),
    [anon_sym_mapping] = ACTIONS(681),
    [anon_sym_bool] = ACTIONS(681),
    [anon_sym_string] = ACTIONS(681),
    [anon_sym_int] = ACTIONS(681),
    [anon_sym_int8] = ACTIONS(681),
    [anon_sym_int16] = ACTIONS(681),
    [anon_sym_int24] = ACTIONS(681),
    [anon_sym_int32] = ACTIONS(681),
    [anon_sym_int40] = ACTIONS(681),
    [anon_sym_int48] = ACTIONS(681),
    [anon_sym_int56] = ACTIONS(681),
    [anon_sym_int64] = ACTIONS(681),
    [anon_sym_int72] = ACTIONS(681),
    [anon_sym_int80] = ACTIONS(681),
    [anon_sym_int88] = ACTIONS(681),
    [anon_sym_int96] = ACTIONS(681),
    [anon_sym_int104] = ACTIONS(681),
    [anon_sym_int112] = ACTIONS(681),
    [anon_sym_int120] = ACTIONS(681),
    [anon_sym_int128] = ACTIONS(681),
    [anon_sym_int136] = ACTIONS(681),
    [anon_sym_int144] = ACTIONS(681),
    [anon_sym_int152] = ACTIONS(681),
    [anon_sym_int160] = ACTIONS(681),
    [anon_sym_int168] = ACTIONS(681),
    [anon_sym_int176] = ACTIONS(681),
    [anon_sym_int184] = ACTIONS(681),
    [anon_sym_int192] = ACTIONS(681),
    [anon_sym_int200] = ACTIONS(681),
    [anon_sym_int208] = ACTIONS(681),
    [anon_sym_int216] = ACTIONS(681),
    [anon_sym_int224] = ACTIONS(681),
    [anon_sym_int232] = ACTIONS(681),
    [anon_sym_int240] = ACTIONS(681),
    [anon_sym_int248] = ACTIONS(681),
    [anon_sym_int256] = ACTIONS(681),
    [anon_sym_uint] = ACTIONS(681),
    [anon_sym_uint8] = ACTIONS(681),
    [anon_sym_uint16] = ACTIONS(681),
    [anon_sym_uint24] = ACTIONS(681),
    [anon_sym_uint32] = ACTIONS(681),
    [anon_sym_uint40] = ACTIONS(681),
    [anon_sym_uint48] = ACTIONS(681),
    [anon_sym_uint56] = ACTIONS(681),
    [anon_sym_uint64] = ACTIONS(681),
    [anon_sym_uint72] = ACTIONS(681),
    [anon_sym_uint80] = ACTIONS(681),
    [anon_sym_uint88] = ACTIONS(681),
    [anon_sym_uint96] = ACTIONS(681),
    [anon_sym_uint104] = ACTIONS(681),
    [anon_sym_uint112] = ACTIONS(681),
    [anon_sym_uint120] = ACTIONS(681),
    [anon_sym_uint128] = ACTIONS(681),
    [anon_sym_uint136] = ACTIONS(681),
    [anon_sym_uint144] = ACTIONS(681),
    [anon_sym_uint152] = ACTIONS(681),
    [anon_sym_uint160] = ACTIONS(681),
    [anon_sym_uint168] = ACTIONS(681),
    [anon_sym_uint176] = ACTIONS(681),
    [anon_sym_uint184] = ACTIONS(681),
    [anon_sym_uint192] = ACTIONS(681),
    [anon_sym_uint200] = ACTIONS(681),
    [anon_sym_uint208] = ACTIONS(681),
    [anon_sym_uint216] = ACTIONS(681),
    [anon_sym_uint224] = ACTIONS(681),
    [anon_sym_uint232] = ACTIONS(681),
    [anon_sym_uint240] = ACTIONS(681),
    [anon_sym_uint248] = ACTIONS(681),
    [anon_sym_uint256] = ACTIONS(681),
    [anon_sym_bytes] = ACTIONS(681),
    [anon_sym_bytes1] = ACTIONS(681),
    [anon_sym_bytes2] = ACTIONS(681),
    [anon_sym_bytes3] = ACTIONS(681),
    [anon_sym_bytes4] = ACTIONS(681),
    [anon_sym_bytes5] = ACTIONS(681),
    [anon_sym_bytes6] = ACTIONS(681),
    [anon_sym_bytes7] = ACTIONS(681),
    [anon_sym_bytes8] = ACTIONS(681),
    [anon_sym_bytes9] = ACTIONS(681),
    [anon_sym_bytes10] = ACTIONS(681),
    [anon_sym_bytes11] = ACTIONS(681),
    [anon_sym_bytes12] = ACTIONS(681),
    [anon_sym_bytes13] = ACTIONS(681),
    [anon_sym_bytes14] = ACTIONS(681),
    [anon_sym_bytes15] = ACTIONS(681),
    [anon_sym_bytes16] = ACTIONS(681),
    [anon_sym_bytes17] = ACTIONS(681),
    [anon_sym_bytes18] = ACTIONS(681),
    [anon_sym_bytes19] = ACTIONS(681),
    [anon_sym_bytes20] = ACTIONS(681),
    [anon_sym_bytes21] = ACTIONS(681),
    [anon_sym_bytes22] = ACTIONS(681),
    [anon_sym_bytes23] = ACTIONS(681),
    [anon_sym_bytes24] = ACTIONS(681),
    [anon_sym_bytes25] = ACTIONS(681),
    [anon_sym_bytes26] = ACTIONS(681),
    [anon_sym_bytes27] = ACTIONS(681),
    [anon_sym_bytes28] = ACTIONS(681),
    [anon_sym_bytes29] = ACTIONS(681),
    [anon_sym_bytes30] = ACTIONS(681),
    [anon_sym_bytes31] = ACTIONS(681),
    [anon_sym_bytes32] = ACTIONS(681),
    [anon_sym_fixed] = ACTIONS(681),
    [aux_sym__fixed_token1] = ACTIONS(681),
    [anon_sym_ufixed] = ACTIONS(681),
    [aux_sym__ufixed_token1] = ACTIONS(681),
    [sym_comment] = ACTIONS(3),
  },
  [159] = {
    [ts_builtin_sym_end] = ACTIONS(621),
    [sym_identifier] = ACTIONS(619),
    [anon_sym_pragma] = ACTIONS(619),
    [anon_sym_import] = ACTIONS(619),
    [anon_sym_type] = ACTIONS(619),
    [anon_sym_abstract] = ACTIONS(619),
    [anon_sym_contract] = ACTIONS(619),
    [anon_sym_error] = ACTIONS(619),
    [anon_sym_interface] = ACTIONS(619),
    [anon_sym_library] = ACTIONS(619),
    [anon_sym_struct] = ACTIONS(619),
    [anon_sym_enum] = ACTIONS(619),
    [anon_sym_function] = ACTIONS(619),
    [anon_sym_byte] = ACTIONS(619),
    [anon_sym_address] = ACTIONS(619),
    [anon_sym_var] = ACTIONS(619),
    [anon_sym_mapping] = ACTIONS(619),
    [anon_sym_bool] = ACTIONS(619),
    [anon_sym_string] = ACTIONS(619),
    [anon_sym_int] = ACTIONS(619),
    [anon_sym_int8] = ACTIONS(619),
    [anon_sym_int16] = ACTIONS(619),
    [anon_sym_int24] = ACTIONS(619),
    [anon_sym_int32] = ACTIONS(619),
    [anon_sym_int40] = ACTIONS(619),
    [anon_sym_int48] = ACTIONS(619),
    [anon_sym_int56] = ACTIONS(619),
    [anon_sym_int64] = ACTIONS(619),
    [anon_sym_int72] = ACTIONS(619),
    [anon_sym_int80] = ACTIONS(619),
    [anon_sym_int88] = ACTIONS(619),
    [anon_sym_int96] = ACTIONS(619),
    [anon_sym_int104] = ACTIONS(619),
    [anon_sym_int112] = ACTIONS(619),
    [anon_sym_int120] = ACTIONS(619),
    [anon_sym_int128] = ACTIONS(619),
    [anon_sym_int136] = ACTIONS(619),
    [anon_sym_int144] = ACTIONS(619),
    [anon_sym_int152] = ACTIONS(619),
    [anon_sym_int160] = ACTIONS(619),
    [anon_sym_int168] = ACTIONS(619),
    [anon_sym_int176] = ACTIONS(619),
    [anon_sym_int184] = ACTIONS(619),
    [anon_sym_int192] = ACTIONS(619),
    [anon_sym_int200] = ACTIONS(619),
    [anon_sym_int208] = ACTIONS(619),
    [anon_sym_int216] = ACTIONS(619),
    [anon_sym_int224] = ACTIONS(619),
    [anon_sym_int232] = ACTIONS(619),
    [anon_sym_int240] = ACTIONS(619),
    [anon_sym_int248] = ACTIONS(619),
    [anon_sym_int256] = ACTIONS(619),
    [anon_sym_uint] = ACTIONS(619),
    [anon_sym_uint8] = ACTIONS(619),
    [anon_sym_uint16] = ACTIONS(619),
    [anon_sym_uint24] = ACTIONS(619),
    [anon_sym_uint32] = ACTIONS(619),
    [anon_sym_uint40] = ACTIONS(619),
    [anon_sym_uint48] = ACTIONS(619),
    [anon_sym_uint56] = ACTIONS(619),
    [anon_sym_uint64] = ACTIONS(619),
    [anon_sym_uint72] = ACTIONS(619),
    [anon_sym_uint80] = ACTIONS(619),
    [anon_sym_uint88] = ACTIONS(619),
    [anon_sym_uint96] = ACTIONS(619),
    [anon_sym_uint104] = ACTIONS(619),
    [anon_sym_uint112] = ACTIONS(619),
    [anon_sym_uint120] = ACTIONS(619),
    [anon_sym_uint128] = ACTIONS(619),
    [anon_sym_uint136] = ACTIONS(619),
    [anon_sym_uint144] = ACTIONS(619),
    [anon_sym_uint152] = ACTIONS(619),
    [anon_sym_uint160] = ACTIONS(619),
    [anon_sym_uint168] = ACTIONS(619),
    [anon_sym_uint176] = ACTIONS(619),
    [anon_sym_uint184] = ACTIONS(619),
    [anon_sym_uint192] = ACTIONS(619),
    [anon_sym_uint200] = ACTIONS(619),
    [anon_sym_uint208] = ACTIONS(619),
    [anon_sym_uint216] = ACTIONS(619),
    [anon_sym_uint224] = ACTIONS(619),
    [anon_sym_uint232] = ACTIONS(619),
    [anon_sym_uint240] = ACTIONS(619),
    [anon_sym_uint248] = ACTIONS(619),
    [anon_sym_uint256] = ACTIONS(619),
    [anon_sym_bytes] = ACTIONS(619),
    [anon_sym_bytes1] = ACTIONS(619),
    [anon_sym_bytes2] = ACTIONS(619),
    [anon_sym_bytes3] = ACTIONS(619),
    [anon_sym_bytes4] = ACTIONS(619),
    [anon_sym_bytes5] = ACTIONS(619),
    [anon_sym_bytes6] = ACTIONS(619),
    [anon_sym_bytes7] = ACTIONS(619),
    [anon_sym_bytes8] = ACTIONS(619),
    [anon_sym_bytes9] = ACTIONS(619),
    [anon_sym_bytes10] = ACTIONS(619),
    [anon_sym_bytes11] = ACTIONS(619),
    [anon_sym_bytes12] = ACTIONS(619),
    [anon_sym_bytes13] = ACTIONS(619),
    [anon_sym_bytes14] = ACTIONS(619),
    [anon_sym_bytes15] = ACTIONS(619),
    [anon_sym_bytes16] = ACTIONS(619),
    [anon_sym_bytes17] = ACTIONS(619),
    [anon_sym_bytes18] = ACTIONS(619),
    [anon_sym_bytes19] = ACTIONS(619),
    [anon_sym_bytes20] = ACTIONS(619),
    [anon_sym_bytes21] = ACTIONS(619),
    [anon_sym_bytes22] = ACTIONS(619),
    [anon_sym_bytes23] = ACTIONS(619),
    [anon_sym_bytes24] = ACTIONS(619),
    [anon_sym_bytes25] = ACTIONS(619),
    [anon_sym_bytes26] = ACTIONS(619),
    [anon_sym_bytes27] = ACTIONS(619),
    [anon_sym_bytes28] = ACTIONS(619),
    [anon_sym_bytes29] = ACTIONS(619),
    [anon_sym_bytes30] = ACTIONS(619),
    [anon_sym_bytes31] = ACTIONS(619),
    [anon_sym_bytes32] = ACTIONS(619),
    [anon_sym_fixed] = ACTIONS(619),
    [aux_sym__fixed_token1] = ACTIONS(619),
    [anon_sym_ufixed] = ACTIONS(619),
    [aux_sym__ufixed_token1] = ACTIONS(619),
    [sym_comment] = ACTIONS(3),
  },
  [160] = {
    [ts_builtin_sym_end] = ACTIONS(683),
    [sym_identifier] = ACTIONS(685),
    [anon_sym_pragma] = ACTIONS(685),
    [anon_sym_import] = ACTIONS(685),
    [anon_sym_type] = ACTIONS(685),
    [anon_sym_abstract] = ACTIONS(685),
    [anon_sym_contract] = ACTIONS(685),
    [anon_sym_error] = ACTIONS(685),
    [anon_sym_interface] = ACTIONS(685),
    [anon_sym_library] = ACTIONS(685),
    [anon_sym_struct] = ACTIONS(685),
    [anon_sym_enum] = ACTIONS(685),
    [anon_sym_function] = ACTIONS(685),
    [anon_sym_byte] = ACTIONS(685),
    [anon_sym_address] = ACTIONS(685),
    [anon_sym_var] = ACTIONS(685),
    [anon_sym_mapping] = ACTIONS(685),
    [anon_sym_bool] = ACTIONS(685),
    [anon_sym_string] = ACTIONS(685),
    [anon_sym_int] = ACTIONS(685),
    [anon_sym_int8] = ACTIONS(685),
    [anon_sym_int16] = ACTIONS(685),
    [anon_sym_int24] = ACTIONS(685),
    [anon_sym_int32] = ACTIONS(685),
    [anon_sym_int40] = ACTIONS(685),
    [anon_sym_int48] = ACTIONS(685),
    [anon_sym_int56] = ACTIONS(685),
    [anon_sym_int64] = ACTIONS(685),
    [anon_sym_int72] = ACTIONS(685),
    [anon_sym_int80] = ACTIONS(685),
    [anon_sym_int88] = ACTIONS(685),
    [anon_sym_int96] = ACTIONS(685),
    [anon_sym_int104] = ACTIONS(685),
    [anon_sym_int112] = ACTIONS(685),
    [anon_sym_int120] = ACTIONS(685),
    [anon_sym_int128] = ACTIONS(685),
    [anon_sym_int136] = ACTIONS(685),
    [anon_sym_int144] = ACTIONS(685),
    [anon_sym_int152] = ACTIONS(685),
    [anon_sym_int160] = ACTIONS(685),
    [anon_sym_int168] = ACTIONS(685),
    [anon_sym_int176] = ACTIONS(685),
    [anon_sym_int184] = ACTIONS(685),
    [anon_sym_int192] = ACTIONS(685),
    [anon_sym_int200] = ACTIONS(685),
    [anon_sym_int208] = ACTIONS(685),
    [anon_sym_int216] = ACTIONS(685),
    [anon_sym_int224] = ACTIONS(685),
    [anon_sym_int232] = ACTIONS(685),
    [anon_sym_int240] = ACTIONS(685),
    [anon_sym_int248] = ACTIONS(685),
    [anon_sym_int256] = ACTIONS(685),
    [anon_sym_uint] = ACTIONS(685),
    [anon_sym_uint8] = ACTIONS(685),
    [anon_sym_uint16] = ACTIONS(685),
    [anon_sym_uint24] = ACTIONS(685),
    [anon_sym_uint32] = ACTIONS(685),
    [anon_sym_uint40] = ACTIONS(685),
    [anon_sym_uint48] = ACTIONS(685),
    [anon_sym_uint56] = ACTIONS(685),
    [anon_sym_uint64] = ACTIONS(685),
    [anon_sym_uint72] = ACTIONS(685),
    [anon_sym_uint80] = ACTIONS(685),
    [anon_sym_uint88] = ACTIONS(685),
    [anon_sym_uint96] = ACTIONS(685),
    [anon_sym_uint104] = ACTIONS(685),
    [anon_sym_uint112] = ACTIONS(685),
    [anon_sym_uint120] = ACTIONS(685),
    [anon_sym_uint128] = ACTIONS(685),
    [anon_sym_uint136] = ACTIONS(685),
    [anon_sym_uint144] = ACTIONS(685),
    [anon_sym_uint152] = ACTIONS(685),
    [anon_sym_uint160] = ACTIONS(685),
    [anon_sym_uint168] = ACTIONS(685),
    [anon_sym_uint176] = ACTIONS(685),
    [anon_sym_uint184] = ACTIONS(685),
    [anon_sym_uint192] = ACTIONS(685),
    [anon_sym_uint200] = ACTIONS(685),
    [anon_sym_uint208] = ACTIONS(685),
    [anon_sym_uint216] = ACTIONS(685),
    [anon_sym_uint224] = ACTIONS(685),
    [anon_sym_uint232] = ACTIONS(685),
    [anon_sym_uint240] = ACTIONS(685),
    [anon_sym_uint248] = ACTIONS(685),
    [anon_sym_uint256] = ACTIONS(685),
    [anon_sym_bytes] = ACTIONS(685),
    [anon_sym_bytes1] = ACTIONS(685),
    [anon_sym_bytes2] = ACTIONS(685),
    [anon_sym_bytes3] = ACTIONS(685),
    [anon_sym_bytes4] = ACTIONS(685),
    [anon_sym_bytes5] = ACTIONS(685),
    [anon_sym_bytes6] = ACTIONS(685),
    [anon_sym_bytes7] = ACTIONS(685),
    [anon_sym_bytes8] = ACTIONS(685),
    [anon_sym_bytes9] = ACTIONS(685),
    [anon_sym_bytes10] = ACTIONS(685),
    [anon_sym_bytes11] = ACTIONS(685),
    [anon_sym_bytes12] = ACTIONS(685),
    [anon_sym_bytes13] = ACTIONS(685),
    [anon_sym_bytes14] = ACTIONS(685),
    [anon_sym_bytes15] = ACTIONS(685),
    [anon_sym_bytes16] = ACTIONS(685),
    [anon_sym_bytes17] = ACTIONS(685),
    [anon_sym_bytes18] = ACTIONS(685),
    [anon_sym_bytes19] = ACTIONS(685),
    [anon_sym_bytes20] = ACTIONS(685),
    [anon_sym_bytes21] = ACTIONS(685),
    [anon_sym_bytes22] = ACTIONS(685),
    [anon_sym_bytes23] = ACTIONS(685),
    [anon_sym_bytes24] = ACTIONS(685),
    [anon_sym_bytes25] = ACTIONS(685),
    [anon_sym_bytes26] = ACTIONS(685),
    [anon_sym_bytes27] = ACTIONS(685),
    [anon_sym_bytes28] = ACTIONS(685),
    [anon_sym_bytes29] = ACTIONS(685),
    [anon_sym_bytes30] = ACTIONS(685),
    [anon_sym_bytes31] = ACTIONS(685),
    [anon_sym_bytes32] = ACTIONS(685),
    [anon_sym_fixed] = ACTIONS(685),
    [aux_sym__fixed_token1] = ACTIONS(685),
    [anon_sym_ufixed] = ACTIONS(685),
    [aux_sym__ufixed_token1] = ACTIONS(685),
    [sym_comment] = ACTIONS(3),
  },
  [161] = {
    [sym_identifier] = ACTIONS(687),
    [anon_sym_RBRACE] = ACTIONS(689),
    [anon_sym_type] = ACTIONS(687),
    [anon_sym_error] = ACTIONS(687),
    [anon_sym_struct] = ACTIONS(687),
    [anon_sym_enum] = ACTIONS(687),
    [anon_sym_event] = ACTIONS(687),
    [anon_sym_using] = ACTIONS(687),
    [anon_sym_function] = ACTIONS(687),
    [anon_sym_byte] = ACTIONS(687),
    [anon_sym_address] = ACTIONS(687),
    [anon_sym_var] = ACTIONS(687),
    [anon_sym_modifier] = ACTIONS(687),
    [anon_sym_constructor] = ACTIONS(687),
    [anon_sym_fallback] = ACTIONS(687),
    [anon_sym_receive] = ACTIONS(687),
    [anon_sym_mapping] = ACTIONS(687),
    [anon_sym_bool] = ACTIONS(687),
    [anon_sym_string] = ACTIONS(687),
    [anon_sym_int] = ACTIONS(687),
    [anon_sym_int8] = ACTIONS(687),
    [anon_sym_int16] = ACTIONS(687),
    [anon_sym_int24] = ACTIONS(687),
    [anon_sym_int32] = ACTIONS(687),
    [anon_sym_int40] = ACTIONS(687),
    [anon_sym_int48] = ACTIONS(687),
    [anon_sym_int56] = ACTIONS(687),
    [anon_sym_int64] = ACTIONS(687),
    [anon_sym_int72] = ACTIONS(687),
    [anon_sym_int80] = ACTIONS(687),
    [anon_sym_int88] = ACTIONS(687),
    [anon_sym_int96] = ACTIONS(687),
    [anon_sym_int104] = ACTIONS(687),
    [anon_sym_int112] = ACTIONS(687),
    [anon_sym_int120] = ACTIONS(687),
    [anon_sym_int128] = ACTIONS(687),
    [anon_sym_int136] = ACTIONS(687),
    [anon_sym_int144] = ACTIONS(687),
    [anon_sym_int152] = ACTIONS(687),
    [anon_sym_int160] = ACTIONS(687),
    [anon_sym_int168] = ACTIONS(687),
    [anon_sym_int176] = ACTIONS(687),
    [anon_sym_int184] = ACTIONS(687),
    [anon_sym_int192] = ACTIONS(687),
    [anon_sym_int200] = ACTIONS(687),
    [anon_sym_int208] = ACTIONS(687),
    [anon_sym_int216] = ACTIONS(687),
    [anon_sym_int224] = ACTIONS(687),
    [anon_sym_int232] = ACTIONS(687),
    [anon_sym_int240] = ACTIONS(687),
    [anon_sym_int248] = ACTIONS(687),
    [anon_sym_int256] = ACTIONS(687),
    [anon_sym_uint] = ACTIONS(687),
    [anon_sym_uint8] = ACTIONS(687),
    [anon_sym_uint16] = ACTIONS(687),
    [anon_sym_uint24] = ACTIONS(687),
    [anon_sym_uint32] = ACTIONS(687),
    [anon_sym_uint40] = ACTIONS(687),
    [anon_sym_uint48] = ACTIONS(687),
    [anon_sym_uint56] = ACTIONS(687),
    [anon_sym_uint64] = ACTIONS(687),
    [anon_sym_uint72] = ACTIONS(687),
    [anon_sym_uint80] = ACTIONS(687),
    [anon_sym_uint88] = ACTIONS(687),
    [anon_sym_uint96] = ACTIONS(687),
    [anon_sym_uint104] = ACTIONS(687),
    [anon_sym_uint112] = ACTIONS(687),
    [anon_sym_uint120] = ACTIONS(687),
    [anon_sym_uint128] = ACTIONS(687),
    [anon_sym_uint136] = ACTIONS(687),
    [anon_sym_uint144] = ACTIONS(687),
    [anon_sym_uint152] = ACTIONS(687),
    [anon_sym_uint160] = ACTIONS(687),
    [anon_sym_uint168] = ACTIONS(687),
    [anon_sym_uint176] = ACTIONS(687),
    [anon_sym_uint184] = ACTIONS(687),
    [anon_sym_uint192] = ACTIONS(687),
    [anon_sym_uint200] = ACTIONS(687),
    [anon_sym_uint208] = ACTIONS(687),
    [anon_sym_uint216] = ACTIONS(687),
    [anon_sym_uint224] = ACTIONS(687),
    [anon_sym_uint232] = ACTIONS(687),
    [anon_sym_uint240] = ACTIONS(687),
    [anon_sym_uint248] = ACTIONS(687),
    [anon_sym_uint256] = ACTIONS(687),
    [anon_sym_bytes] = ACTIONS(687),
    [anon_sym_bytes1] = ACTIONS(687),
    [anon_sym_bytes2] = ACTIONS(687),
    [anon_sym_bytes3] = ACTIONS(687),
    [anon_sym_bytes4] = ACTIONS(687),
    [anon_sym_bytes5] = ACTIONS(687),
    [anon_sym_bytes6] = ACTIONS(687),
    [anon_sym_bytes7] = ACTIONS(687),
    [anon_sym_bytes8] = ACTIONS(687),
    [anon_sym_bytes9] = ACTIONS(687),
    [anon_sym_bytes10] = ACTIONS(687),
    [anon_sym_bytes11] = ACTIONS(687),
    [anon_sym_bytes12] = ACTIONS(687),
    [anon_sym_bytes13] = ACTIONS(687),
    [anon_sym_bytes14] = ACTIONS(687),
    [anon_sym_bytes15] = ACTIONS(687),
    [anon_sym_bytes16] = ACTIONS(687),
    [anon_sym_bytes17] = ACTIONS(687),
    [anon_sym_bytes18] = ACTIONS(687),
    [anon_sym_bytes19] = ACTIONS(687),
    [anon_sym_bytes20] = ACTIONS(687),
    [anon_sym_bytes21] = ACTIONS(687),
    [anon_sym_bytes22] = ACTIONS(687),
    [anon_sym_bytes23] = ACTIONS(687),
    [anon_sym_bytes24] = ACTIONS(687),
    [anon_sym_bytes25] = ACTIONS(687),
    [anon_sym_bytes26] = ACTIONS(687),
    [anon_sym_bytes27] = ACTIONS(687),
    [anon_sym_bytes28] = ACTIONS(687),
    [anon_sym_bytes29] = ACTIONS(687),
    [anon_sym_bytes30] = ACTIONS(687),
    [anon_sym_bytes31] = ACTIONS(687),
    [anon_sym_bytes32] = ACTIONS(687),
    [anon_sym_fixed] = ACTIONS(687),
    [aux_sym__fixed_token1] = ACTIONS(687),
    [anon_sym_ufixed] = ACTIONS(687),
    [aux_sym__ufixed_token1] = ACTIONS(687),
    [sym_comment] = ACTIONS(3),
  },
  [162] = {
    [sym_identifier] = ACTIONS(691),
    [anon_sym_RBRACE] = ACTIONS(693),
    [anon_sym_type] = ACTIONS(691),
    [anon_sym_error] = ACTIONS(691),
    [anon_sym_struct] = ACTIONS(691),
    [anon_sym_enum] = ACTIONS(691),
    [anon_sym_event] = ACTIONS(691),
    [anon_sym_using] = ACTIONS(691),
    [anon_sym_function] = ACTIONS(691),
    [anon_sym_byte] = ACTIONS(691),
    [anon_sym_address] = ACTIONS(691),
    [anon_sym_var] = ACTIONS(691),
    [anon_sym_modifier] = ACTIONS(691),
    [anon_sym_constructor] = ACTIONS(691),
    [anon_sym_fallback] = ACTIONS(691),
    [anon_sym_receive] = ACTIONS(691),
    [anon_sym_mapping] = ACTIONS(691),
    [anon_sym_bool] = ACTIONS(691),
    [anon_sym_string] = ACTIONS(691),
    [anon_sym_int] = ACTIONS(691),
    [anon_sym_int8] = ACTIONS(691),
    [anon_sym_int16] = ACTIONS(691),
    [anon_sym_int24] = ACTIONS(691),
    [anon_sym_int32] = ACTIONS(691),
    [anon_sym_int40] = ACTIONS(691),
    [anon_sym_int48] = ACTIONS(691),
    [anon_sym_int56] = ACTIONS(691),
    [anon_sym_int64] = ACTIONS(691),
    [anon_sym_int72] = ACTIONS(691),
    [anon_sym_int80] = ACTIONS(691),
    [anon_sym_int88] = ACTIONS(691),
    [anon_sym_int96] = ACTIONS(691),
    [anon_sym_int104] = ACTIONS(691),
    [anon_sym_int112] = ACTIONS(691),
    [anon_sym_int120] = ACTIONS(691),
    [anon_sym_int128] = ACTIONS(691),
    [anon_sym_int136] = ACTIONS(691),
    [anon_sym_int144] = ACTIONS(691),
    [anon_sym_int152] = ACTIONS(691),
    [anon_sym_int160] = ACTIONS(691),
    [anon_sym_int168] = ACTIONS(691),
    [anon_sym_int176] = ACTIONS(691),
    [anon_sym_int184] = ACTIONS(691),
    [anon_sym_int192] = ACTIONS(691),
    [anon_sym_int200] = ACTIONS(691),
    [anon_sym_int208] = ACTIONS(691),
    [anon_sym_int216] = ACTIONS(691),
    [anon_sym_int224] = ACTIONS(691),
    [anon_sym_int232] = ACTIONS(691),
    [anon_sym_int240] = ACTIONS(691),
    [anon_sym_int248] = ACTIONS(691),
    [anon_sym_int256] = ACTIONS(691),
    [anon_sym_uint] = ACTIONS(691),
    [anon_sym_uint8] = ACTIONS(691),
    [anon_sym_uint16] = ACTIONS(691),
    [anon_sym_uint24] = ACTIONS(691),
    [anon_sym_uint32] = ACTIONS(691),
    [anon_sym_uint40] = ACTIONS(691),
    [anon_sym_uint48] = ACTIONS(691),
    [anon_sym_uint56] = ACTIONS(691),
    [anon_sym_uint64] = ACTIONS(691),
    [anon_sym_uint72] = ACTIONS(691),
    [anon_sym_uint80] = ACTIONS(691),
    [anon_sym_uint88] = ACTIONS(691),
    [anon_sym_uint96] = ACTIONS(691),
    [anon_sym_uint104] = ACTIONS(691),
    [anon_sym_uint112] = ACTIONS(691),
    [anon_sym_uint120] = ACTIONS(691),
    [anon_sym_uint128] = ACTIONS(691),
    [anon_sym_uint136] = ACTIONS(691),
    [anon_sym_uint144] = ACTIONS(691),
    [anon_sym_uint152] = ACTIONS(691),
    [anon_sym_uint160] = ACTIONS(691),
    [anon_sym_uint168] = ACTIONS(691),
    [anon_sym_uint176] = ACTIONS(691),
    [anon_sym_uint184] = ACTIONS(691),
    [anon_sym_uint192] = ACTIONS(691),
    [anon_sym_uint200] = ACTIONS(691),
    [anon_sym_uint208] = ACTIONS(691),
    [anon_sym_uint216] = ACTIONS(691),
    [anon_sym_uint224] = ACTIONS(691),
    [anon_sym_uint232] = ACTIONS(691),
    [anon_sym_uint240] = ACTIONS(691),
    [anon_sym_uint248] = ACTIONS(691),
    [anon_sym_uint256] = ACTIONS(691),
    [anon_sym_bytes] = ACTIONS(691),
    [anon_sym_bytes1] = ACTIONS(691),
    [anon_sym_bytes2] = ACTIONS(691),
    [anon_sym_bytes3] = ACTIONS(691),
    [anon_sym_bytes4] = ACTIONS(691),
    [anon_sym_bytes5] = ACTIONS(691),
    [anon_sym_bytes6] = ACTIONS(691),
    [anon_sym_bytes7] = ACTIONS(691),
    [anon_sym_bytes8] = ACTIONS(691),
    [anon_sym_bytes9] = ACTIONS(691),
    [anon_sym_bytes10] = ACTIONS(691),
    [anon_sym_bytes11] = ACTIONS(691),
    [anon_sym_bytes12] = ACTIONS(691),
    [anon_sym_bytes13] = ACTIONS(691),
    [anon_sym_bytes14] = ACTIONS(691),
    [anon_sym_bytes15] = ACTIONS(691),
    [anon_sym_bytes16] = ACTIONS(691),
    [anon_sym_bytes17] = ACTIONS(691),
    [anon_sym_bytes18] = ACTIONS(691),
    [anon_sym_bytes19] = ACTIONS(691),
    [anon_sym_bytes20] = ACTIONS(691),
    [anon_sym_bytes21] = ACTIONS(691),
    [anon_sym_bytes22] = ACTIONS(691),
    [anon_sym_bytes23] = ACTIONS(691),
    [anon_sym_bytes24] = ACTIONS(691),
    [anon_sym_bytes25] = ACTIONS(691),
    [anon_sym_bytes26] = ACTIONS(691),
    [anon_sym_bytes27] = ACTIONS(691),
    [anon_sym_bytes28] = ACTIONS(691),
    [anon_sym_bytes29] = ACTIONS(691),
    [anon_sym_bytes30] = ACTIONS(691),
    [anon_sym_bytes31] = ACTIONS(691),
    [anon_sym_bytes32] = ACTIONS(691),
    [anon_sym_fixed] = ACTIONS(691),
    [aux_sym__fixed_token1] = ACTIONS(691),
    [anon_sym_ufixed] = ACTIONS(691),
    [aux_sym__ufixed_token1] = ACTIONS(691),
    [sym_comment] = ACTIONS(3),
  },
  [163] = {
    [sym_identifier] = ACTIONS(685),
    [anon_sym_RBRACE] = ACTIONS(683),
    [anon_sym_type] = ACTIONS(685),
    [anon_sym_error] = ACTIONS(685),
    [anon_sym_struct] = ACTIONS(685),
    [anon_sym_enum] = ACTIONS(685),
    [anon_sym_event] = ACTIONS(685),
    [anon_sym_using] = ACTIONS(685),
    [anon_sym_function] = ACTIONS(685),
    [anon_sym_byte] = ACTIONS(685),
    [anon_sym_address] = ACTIONS(685),
    [anon_sym_var] = ACTIONS(685),
    [anon_sym_modifier] = ACTIONS(685),
    [anon_sym_constructor] = ACTIONS(685),
    [anon_sym_fallback] = ACTIONS(685),
    [anon_sym_receive] = ACTIONS(685),
    [anon_sym_mapping] = ACTIONS(685),
    [anon_sym_bool] = ACTIONS(685),
    [anon_sym_string] = ACTIONS(685),
    [anon_sym_int] = ACTIONS(685),
    [anon_sym_int8] = ACTIONS(685),
    [anon_sym_int16] = ACTIONS(685),
    [anon_sym_int24] = ACTIONS(685),
    [anon_sym_int32] = ACTIONS(685),
    [anon_sym_int40] = ACTIONS(685),
    [anon_sym_int48] = ACTIONS(685),
    [anon_sym_int56] = ACTIONS(685),
    [anon_sym_int64] = ACTIONS(685),
    [anon_sym_int72] = ACTIONS(685),
    [anon_sym_int80] = ACTIONS(685),
    [anon_sym_int88] = ACTIONS(685),
    [anon_sym_int96] = ACTIONS(685),
    [anon_sym_int104] = ACTIONS(685),
    [anon_sym_int112] = ACTIONS(685),
    [anon_sym_int120] = ACTIONS(685),
    [anon_sym_int128] = ACTIONS(685),
    [anon_sym_int136] = ACTIONS(685),
    [anon_sym_int144] = ACTIONS(685),
    [anon_sym_int152] = ACTIONS(685),
    [anon_sym_int160] = ACTIONS(685),
    [anon_sym_int168] = ACTIONS(685),
    [anon_sym_int176] = ACTIONS(685),
    [anon_sym_int184] = ACTIONS(685),
    [anon_sym_int192] = ACTIONS(685),
    [anon_sym_int200] = ACTIONS(685),
    [anon_sym_int208] = ACTIONS(685),
    [anon_sym_int216] = ACTIONS(685),
    [anon_sym_int224] = ACTIONS(685),
    [anon_sym_int232] = ACTIONS(685),
    [anon_sym_int240] = ACTIONS(685),
    [anon_sym_int248] = ACTIONS(685),
    [anon_sym_int256] = ACTIONS(685),
    [anon_sym_uint] = ACTIONS(685),
    [anon_sym_uint8] = ACTIONS(685),
    [anon_sym_uint16] = ACTIONS(685),
    [anon_sym_uint24] = ACTIONS(685),
    [anon_sym_uint32] = ACTIONS(685),
    [anon_sym_uint40] = ACTIONS(685),
    [anon_sym_uint48] = ACTIONS(685),
    [anon_sym_uint56] = ACTIONS(685),
    [anon_sym_uint64] = ACTIONS(685),
    [anon_sym_uint72] = ACTIONS(685),
    [anon_sym_uint80] = ACTIONS(685),
    [anon_sym_uint88] = ACTIONS(685),
    [anon_sym_uint96] = ACTIONS(685),
    [anon_sym_uint104] = ACTIONS(685),
    [anon_sym_uint112] = ACTIONS(685),
    [anon_sym_uint120] = ACTIONS(685),
    [anon_sym_uint128] = ACTIONS(685),
    [anon_sym_uint136] = ACTIONS(685),
    [anon_sym_uint144] = ACTIONS(685),
    [anon_sym_uint152] = ACTIONS(685),
    [anon_sym_uint160] = ACTIONS(685),
    [anon_sym_uint168] = ACTIONS(685),
    [anon_sym_uint176] = ACTIONS(685),
    [anon_sym_uint184] = ACTIONS(685),
    [anon_sym_uint192] = ACTIONS(685),
    [anon_sym_uint200] = ACTIONS(685),
    [anon_sym_uint208] = ACTIONS(685),
    [anon_sym_uint216] = ACTIONS(685),
    [anon_sym_uint224] = ACTIONS(685),
    [anon_sym_uint232] = ACTIONS(685),
    [anon_sym_uint240] = ACTIONS(685),
    [anon_sym_uint248] = ACTIONS(685),
    [anon_sym_uint256] = ACTIONS(685),
    [anon_sym_bytes] = ACTIONS(685),
    [anon_sym_bytes1] = ACTIONS(685),
    [anon_sym_bytes2] = ACTIONS(685),
    [anon_sym_bytes3] = ACTIONS(685),
    [anon_sym_bytes4] = ACTIONS(685),
    [anon_sym_bytes5] = ACTIONS(685),
    [anon_sym_bytes6] = ACTIONS(685),
    [anon_sym_bytes7] = ACTIONS(685),
    [anon_sym_bytes8] = ACTIONS(685),
    [anon_sym_bytes9] = ACTIONS(685),
    [anon_sym_bytes10] = ACTIONS(685),
    [anon_sym_bytes11] = ACTIONS(685),
    [anon_sym_bytes12] = ACTIONS(685),
    [anon_sym_bytes13] = ACTIONS(685),
    [anon_sym_bytes14] = ACTIONS(685),
    [anon_sym_bytes15] = ACTIONS(685),
    [anon_sym_bytes16] = ACTIONS(685),
    [anon_sym_bytes17] = ACTIONS(685),
    [anon_sym_bytes18] = ACTIONS(685),
    [anon_sym_bytes19] = ACTIONS(685),
    [anon_sym_bytes20] = ACTIONS(685),
    [anon_sym_bytes21] = ACTIONS(685),
    [anon_sym_bytes22] = ACTIONS(685),
    [anon_sym_bytes23] = ACTIONS(685),
    [anon_sym_bytes24] = ACTIONS(685),
    [anon_sym_bytes25] = ACTIONS(685),
    [anon_sym_bytes26] = ACTIONS(685),
    [anon_sym_bytes27] = ACTIONS(685),
    [anon_sym_bytes28] = ACTIONS(685),
    [anon_sym_bytes29] = ACTIONS(685),
    [anon_sym_bytes30] = ACTIONS(685),
    [anon_sym_bytes31] = ACTIONS(685),
    [anon_sym_bytes32] = ACTIONS(685),
    [anon_sym_fixed] = ACTIONS(685),
    [aux_sym__fixed_token1] = ACTIONS(685),
    [anon_sym_ufixed] = ACTIONS(685),
    [aux_sym__ufixed_token1] = ACTIONS(685),
    [sym_comment] = ACTIONS(3),
  },
  [164] = {
    [sym_identifier] = ACTIONS(695),
    [anon_sym_RBRACE] = ACTIONS(697),
    [anon_sym_type] = ACTIONS(695),
    [anon_sym_error] = ACTIONS(695),
    [anon_sym_struct] = ACTIONS(695),
    [anon_sym_enum] = ACTIONS(695),
    [anon_sym_event] = ACTIONS(695),
    [anon_sym_using] = ACTIONS(695),
    [anon_sym_function] = ACTIONS(695),
    [anon_sym_byte] = ACTIONS(695),
    [anon_sym_address] = ACTIONS(695),
    [anon_sym_var] = ACTIONS(695),
    [anon_sym_modifier] = ACTIONS(695),
    [anon_sym_constructor] = ACTIONS(695),
    [anon_sym_fallback] = ACTIONS(695),
    [anon_sym_receive] = ACTIONS(695),
    [anon_sym_mapping] = ACTIONS(695),
    [anon_sym_bool] = ACTIONS(695),
    [anon_sym_string] = ACTIONS(695),
    [anon_sym_int] = ACTIONS(695),
    [anon_sym_int8] = ACTIONS(695),
    [anon_sym_int16] = ACTIONS(695),
    [anon_sym_int24] = ACTIONS(695),
    [anon_sym_int32] = ACTIONS(695),
    [anon_sym_int40] = ACTIONS(695),
    [anon_sym_int48] = ACTIONS(695),
    [anon_sym_int56] = ACTIONS(695),
    [anon_sym_int64] = ACTIONS(695),
    [anon_sym_int72] = ACTIONS(695),
    [anon_sym_int80] = ACTIONS(695),
    [anon_sym_int88] = ACTIONS(695),
    [anon_sym_int96] = ACTIONS(695),
    [anon_sym_int104] = ACTIONS(695),
    [anon_sym_int112] = ACTIONS(695),
    [anon_sym_int120] = ACTIONS(695),
    [anon_sym_int128] = ACTIONS(695),
    [anon_sym_int136] = ACTIONS(695),
    [anon_sym_int144] = ACTIONS(695),
    [anon_sym_int152] = ACTIONS(695),
    [anon_sym_int160] = ACTIONS(695),
    [anon_sym_int168] = ACTIONS(695),
    [anon_sym_int176] = ACTIONS(695),
    [anon_sym_int184] = ACTIONS(695),
    [anon_sym_int192] = ACTIONS(695),
    [anon_sym_int200] = ACTIONS(695),
    [anon_sym_int208] = ACTIONS(695),
    [anon_sym_int216] = ACTIONS(695),
    [anon_sym_int224] = ACTIONS(695),
    [anon_sym_int232] = ACTIONS(695),
    [anon_sym_int240] = ACTIONS(695),
    [anon_sym_int248] = ACTIONS(695),
    [anon_sym_int256] = ACTIONS(695),
    [anon_sym_uint] = ACTIONS(695),
    [anon_sym_uint8] = ACTIONS(695),
    [anon_sym_uint16] = ACTIONS(695),
    [anon_sym_uint24] = ACTIONS(695),
    [anon_sym_uint32] = ACTIONS(695),
    [anon_sym_uint40] = ACTIONS(695),
    [anon_sym_uint48] = ACTIONS(695),
    [anon_sym_uint56] = ACTIONS(695),
    [anon_sym_uint64] = ACTIONS(695),
    [anon_sym_uint72] = ACTIONS(695),
    [anon_sym_uint80] = ACTIONS(695),
    [anon_sym_uint88] = ACTIONS(695),
    [anon_sym_uint96] = ACTIONS(695),
    [anon_sym_uint104] = ACTIONS(695),
    [anon_sym_uint112] = ACTIONS(695),
    [anon_sym_uint120] = ACTIONS(695),
    [anon_sym_uint128] = ACTIONS(695),
    [anon_sym_uint136] = ACTIONS(695),
    [anon_sym_uint144] = ACTIONS(695),
    [anon_sym_uint152] = ACTIONS(695),
    [anon_sym_uint160] = ACTIONS(695),
    [anon_sym_uint168] = ACTIONS(695),
    [anon_sym_uint176] = ACTIONS(695),
    [anon_sym_uint184] = ACTIONS(695),
    [anon_sym_uint192] = ACTIONS(695),
    [anon_sym_uint200] = ACTIONS(695),
    [anon_sym_uint208] = ACTIONS(695),
    [anon_sym_uint216] = ACTIONS(695),
    [anon_sym_uint224] = ACTIONS(695),
    [anon_sym_uint232] = ACTIONS(695),
    [anon_sym_uint240] = ACTIONS(695),
    [anon_sym_uint248] = ACTIONS(695),
    [anon_sym_uint256] = ACTIONS(695),
    [anon_sym_bytes] = ACTIONS(695),
    [anon_sym_bytes1] = ACTIONS(695),
    [anon_sym_bytes2] = ACTIONS(695),
    [anon_sym_bytes3] = ACTIONS(695),
    [anon_sym_bytes4] = ACTIONS(695),
    [anon_sym_bytes5] = ACTIONS(695),
    [anon_sym_bytes6] = ACTIONS(695),
    [anon_sym_bytes7] = ACTIONS(695),
    [anon_sym_bytes8] = ACTIONS(695),
    [anon_sym_bytes9] = ACTIONS(695),
    [anon_sym_bytes10] = ACTIONS(695),
    [anon_sym_bytes11] = ACTIONS(695),
    [anon_sym_bytes12] = ACTIONS(695),
    [anon_sym_bytes13] = ACTIONS(695),
    [anon_sym_bytes14] = ACTIONS(695),
    [anon_sym_bytes15] = ACTIONS(695),
    [anon_sym_bytes16] = ACTIONS(695),
    [anon_sym_bytes17] = ACTIONS(695),
    [anon_sym_bytes18] = ACTIONS(695),
    [anon_sym_bytes19] = ACTIONS(695),
    [anon_sym_bytes20] = ACTIONS(695),
    [anon_sym_bytes21] = ACTIONS(695),
    [anon_sym_bytes22] = ACTIONS(695),
    [anon_sym_bytes23] = ACTIONS(695),
    [anon_sym_bytes24] = ACTIONS(695),
    [anon_sym_bytes25] = ACTIONS(695),
    [anon_sym_bytes26] = ACTIONS(695),
    [anon_sym_bytes27] = ACTIONS(695),
    [anon_sym_bytes28] = ACTIONS(695),
    [anon_sym_bytes29] = ACTIONS(695),
    [anon_sym_bytes30] = ACTIONS(695),
    [anon_sym_bytes31] = ACTIONS(695),
    [anon_sym_bytes32] = ACTIONS(695),
    [anon_sym_fixed] = ACTIONS(695),
    [aux_sym__fixed_token1] = ACTIONS(695),
    [anon_sym_ufixed] = ACTIONS(695),
    [aux_sym__ufixed_token1] = ACTIONS(695),
    [sym_comment] = ACTIONS(3),
  },
  [165] = {
    [sym_identifier] = ACTIONS(699),
    [anon_sym_RBRACE] = ACTIONS(701),
    [anon_sym_type] = ACTIONS(699),
    [anon_sym_error] = ACTIONS(699),
    [anon_sym_struct] = ACTIONS(699),
    [anon_sym_enum] = ACTIONS(699),
    [anon_sym_event] = ACTIONS(699),
    [anon_sym_using] = ACTIONS(699),
    [anon_sym_function] = ACTIONS(699),
    [anon_sym_byte] = ACTIONS(699),
    [anon_sym_address] = ACTIONS(699),
    [anon_sym_var] = ACTIONS(699),
    [anon_sym_modifier] = ACTIONS(699),
    [anon_sym_constructor] = ACTIONS(699),
    [anon_sym_fallback] = ACTIONS(699),
    [anon_sym_receive] = ACTIONS(699),
    [anon_sym_mapping] = ACTIONS(699),
    [anon_sym_bool] = ACTIONS(699),
    [anon_sym_string] = ACTIONS(699),
    [anon_sym_int] = ACTIONS(699),
    [anon_sym_int8] = ACTIONS(699),
    [anon_sym_int16] = ACTIONS(699),
    [anon_sym_int24] = ACTIONS(699),
    [anon_sym_int32] = ACTIONS(699),
    [anon_sym_int40] = ACTIONS(699),
    [anon_sym_int48] = ACTIONS(699),
    [anon_sym_int56] = ACTIONS(699),
    [anon_sym_int64] = ACTIONS(699),
    [anon_sym_int72] = ACTIONS(699),
    [anon_sym_int80] = ACTIONS(699),
    [anon_sym_int88] = ACTIONS(699),
    [anon_sym_int96] = ACTIONS(699),
    [anon_sym_int104] = ACTIONS(699),
    [anon_sym_int112] = ACTIONS(699),
    [anon_sym_int120] = ACTIONS(699),
    [anon_sym_int128] = ACTIONS(699),
    [anon_sym_int136] = ACTIONS(699),
    [anon_sym_int144] = ACTIONS(699),
    [anon_sym_int152] = ACTIONS(699),
    [anon_sym_int160] = ACTIONS(699),
    [anon_sym_int168] = ACTIONS(699),
    [anon_sym_int176] = ACTIONS(699),
    [anon_sym_int184] = ACTIONS(699),
    [anon_sym_int192] = ACTIONS(699),
    [anon_sym_int200] = ACTIONS(699),
    [anon_sym_int208] = ACTIONS(699),
    [anon_sym_int216] = ACTIONS(699),
    [anon_sym_int224] = ACTIONS(699),
    [anon_sym_int232] = ACTIONS(699),
    [anon_sym_int240] = ACTIONS(699),
    [anon_sym_int248] = ACTIONS(699),
    [anon_sym_int256] = ACTIONS(699),
    [anon_sym_uint] = ACTIONS(699),
    [anon_sym_uint8] = ACTIONS(699),
    [anon_sym_uint16] = ACTIONS(699),
    [anon_sym_uint24] = ACTIONS(699),
    [anon_sym_uint32] = ACTIONS(699),
    [anon_sym_uint40] = ACTIONS(699),
    [anon_sym_uint48] = ACTIONS(699),
    [anon_sym_uint56] = ACTIONS(699),
    [anon_sym_uint64] = ACTIONS(699),
    [anon_sym_uint72] = ACTIONS(699),
    [anon_sym_uint80] = ACTIONS(699),
    [anon_sym_uint88] = ACTIONS(699),
    [anon_sym_uint96] = ACTIONS(699),
    [anon_sym_uint104] = ACTIONS(699),
    [anon_sym_uint112] = ACTIONS(699),
    [anon_sym_uint120] = ACTIONS(699),
    [anon_sym_uint128] = ACTIONS(699),
    [anon_sym_uint136] = ACTIONS(699),
    [anon_sym_uint144] = ACTIONS(699),
    [anon_sym_uint152] = ACTIONS(699),
    [anon_sym_uint160] = ACTIONS(699),
    [anon_sym_uint168] = ACTIONS(699),
    [anon_sym_uint176] = ACTIONS(699),
    [anon_sym_uint184] = ACTIONS(699),
    [anon_sym_uint192] = ACTIONS(699),
    [anon_sym_uint200] = ACTIONS(699),
    [anon_sym_uint208] = ACTIONS(699),
    [anon_sym_uint216] = ACTIONS(699),
    [anon_sym_uint224] = ACTIONS(699),
    [anon_sym_uint232] = ACTIONS(699),
    [anon_sym_uint240] = ACTIONS(699),
    [anon_sym_uint248] = ACTIONS(699),
    [anon_sym_uint256] = ACTIONS(699),
    [anon_sym_bytes] = ACTIONS(699),
    [anon_sym_bytes1] = ACTIONS(699),
    [anon_sym_bytes2] = ACTIONS(699),
    [anon_sym_bytes3] = ACTIONS(699),
    [anon_sym_bytes4] = ACTIONS(699),
    [anon_sym_bytes5] = ACTIONS(699),
    [anon_sym_bytes6] = ACTIONS(699),
    [anon_sym_bytes7] = ACTIONS(699),
    [anon_sym_bytes8] = ACTIONS(699),
    [anon_sym_bytes9] = ACTIONS(699),
    [anon_sym_bytes10] = ACTIONS(699),
    [anon_sym_bytes11] = ACTIONS(699),
    [anon_sym_bytes12] = ACTIONS(699),
    [anon_sym_bytes13] = ACTIONS(699),
    [anon_sym_bytes14] = ACTIONS(699),
    [anon_sym_bytes15] = ACTIONS(699),
    [anon_sym_bytes16] = ACTIONS(699),
    [anon_sym_bytes17] = ACTIONS(699),
    [anon_sym_bytes18] = ACTIONS(699),
    [anon_sym_bytes19] = ACTIONS(699),
    [anon_sym_bytes20] = ACTIONS(699),
    [anon_sym_bytes21] = ACTIONS(699),
    [anon_sym_bytes22] = ACTIONS(699),
    [anon_sym_bytes23] = ACTIONS(699),
    [anon_sym_bytes24] = ACTIONS(699),
    [anon_sym_bytes25] = ACTIONS(699),
    [anon_sym_bytes26] = ACTIONS(699),
    [anon_sym_bytes27] = ACTIONS(699),
    [anon_sym_bytes28] = ACTIONS(699),
    [anon_sym_bytes29] = ACTIONS(699),
    [anon_sym_bytes30] = ACTIONS(699),
    [anon_sym_bytes31] = ACTIONS(699),
    [anon_sym_bytes32] = ACTIONS(699),
    [anon_sym_fixed] = ACTIONS(699),
    [aux_sym__fixed_token1] = ACTIONS(699),
    [anon_sym_ufixed] = ACTIONS(699),
    [aux_sym__ufixed_token1] = ACTIONS(699),
    [sym_comment] = ACTIONS(3),
  },
  [166] = {
    [sym_identifier] = ACTIONS(703),
    [anon_sym_RBRACE] = ACTIONS(705),
    [anon_sym_type] = ACTIONS(703),
    [anon_sym_error] = ACTIONS(703),
    [anon_sym_struct] = ACTIONS(703),
    [anon_sym_enum] = ACTIONS(703),
    [anon_sym_event] = ACTIONS(703),
    [anon_sym_using] = ACTIONS(703),
    [anon_sym_function] = ACTIONS(703),
    [anon_sym_byte] = ACTIONS(703),
    [anon_sym_address] = ACTIONS(703),
    [anon_sym_var] = ACTIONS(703),
    [anon_sym_modifier] = ACTIONS(703),
    [anon_sym_constructor] = ACTIONS(703),
    [anon_sym_fallback] = ACTIONS(703),
    [anon_sym_receive] = ACTIONS(703),
    [anon_sym_mapping] = ACTIONS(703),
    [anon_sym_bool] = ACTIONS(703),
    [anon_sym_string] = ACTIONS(703),
    [anon_sym_int] = ACTIONS(703),
    [anon_sym_int8] = ACTIONS(703),
    [anon_sym_int16] = ACTIONS(703),
    [anon_sym_int24] = ACTIONS(703),
    [anon_sym_int32] = ACTIONS(703),
    [anon_sym_int40] = ACTIONS(703),
    [anon_sym_int48] = ACTIONS(703),
    [anon_sym_int56] = ACTIONS(703),
    [anon_sym_int64] = ACTIONS(703),
    [anon_sym_int72] = ACTIONS(703),
    [anon_sym_int80] = ACTIONS(703),
    [anon_sym_int88] = ACTIONS(703),
    [anon_sym_int96] = ACTIONS(703),
    [anon_sym_int104] = ACTIONS(703),
    [anon_sym_int112] = ACTIONS(703),
    [anon_sym_int120] = ACTIONS(703),
    [anon_sym_int128] = ACTIONS(703),
    [anon_sym_int136] = ACTIONS(703),
    [anon_sym_int144] = ACTIONS(703),
    [anon_sym_int152] = ACTIONS(703),
    [anon_sym_int160] = ACTIONS(703),
    [anon_sym_int168] = ACTIONS(703),
    [anon_sym_int176] = ACTIONS(703),
    [anon_sym_int184] = ACTIONS(703),
    [anon_sym_int192] = ACTIONS(703),
    [anon_sym_int200] = ACTIONS(703),
    [anon_sym_int208] = ACTIONS(703),
    [anon_sym_int216] = ACTIONS(703),
    [anon_sym_int224] = ACTIONS(703),
    [anon_sym_int232] = ACTIONS(703),
    [anon_sym_int240] = ACTIONS(703),
    [anon_sym_int248] = ACTIONS(703),
    [anon_sym_int256] = ACTIONS(703),
    [anon_sym_uint] = ACTIONS(703),
    [anon_sym_uint8] = ACTIONS(703),
    [anon_sym_uint16] = ACTIONS(703),
    [anon_sym_uint24] = ACTIONS(703),
    [anon_sym_uint32] = ACTIONS(703),
    [anon_sym_uint40] = ACTIONS(703),
    [anon_sym_uint48] = ACTIONS(703),
    [anon_sym_uint56] = ACTIONS(703),
    [anon_sym_uint64] = ACTIONS(703),
    [anon_sym_uint72] = ACTIONS(703),
    [anon_sym_uint80] = ACTIONS(703),
    [anon_sym_uint88] = ACTIONS(703),
    [anon_sym_uint96] = ACTIONS(703),
    [anon_sym_uint104] = ACTIONS(703),
    [anon_sym_uint112] = ACTIONS(703),
    [anon_sym_uint120] = ACTIONS(703),
    [anon_sym_uint128] = ACTIONS(703),
    [anon_sym_uint136] = ACTIONS(703),
    [anon_sym_uint144] = ACTIONS(703),
    [anon_sym_uint152] = ACTIONS(703),
    [anon_sym_uint160] = ACTIONS(703),
    [anon_sym_uint168] = ACTIONS(703),
    [anon_sym_uint176] = ACTIONS(703),
    [anon_sym_uint184] = ACTIONS(703),
    [anon_sym_uint192] = ACTIONS(703),
    [anon_sym_uint200] = ACTIONS(703),
    [anon_sym_uint208] = ACTIONS(703),
    [anon_sym_uint216] = ACTIONS(703),
    [anon_sym_uint224] = ACTIONS(703),
    [anon_sym_uint232] = ACTIONS(703),
    [anon_sym_uint240] = ACTIONS(703),
    [anon_sym_uint248] = ACTIONS(703),
    [anon_sym_uint256] = ACTIONS(703),
    [anon_sym_bytes] = ACTIONS(703),
    [anon_sym_bytes1] = ACTIONS(703),
    [anon_sym_bytes2] = ACTIONS(703),
    [anon_sym_bytes3] = ACTIONS(703),
    [anon_sym_bytes4] = ACTIONS(703),
    [anon_sym_bytes5] = ACTIONS(703),
    [anon_sym_bytes6] = ACTIONS(703),
    [anon_sym_bytes7] = ACTIONS(703),
    [anon_sym_bytes8] = ACTIONS(703),
    [anon_sym_bytes9] = ACTIONS(703),
    [anon_sym_bytes10] = ACTIONS(703),
    [anon_sym_bytes11] = ACTIONS(703),
    [anon_sym_bytes12] = ACTIONS(703),
    [anon_sym_bytes13] = ACTIONS(703),
    [anon_sym_bytes14] = ACTIONS(703),
    [anon_sym_bytes15] = ACTIONS(703),
    [anon_sym_bytes16] = ACTIONS(703),
    [anon_sym_bytes17] = ACTIONS(703),
    [anon_sym_bytes18] = ACTIONS(703),
    [anon_sym_bytes19] = ACTIONS(703),
    [anon_sym_bytes20] = ACTIONS(703),
    [anon_sym_bytes21] = ACTIONS(703),
    [anon_sym_bytes22] = ACTIONS(703),
    [anon_sym_bytes23] = ACTIONS(703),
    [anon_sym_bytes24] = ACTIONS(703),
    [anon_sym_bytes25] = ACTIONS(703),
    [anon_sym_bytes26] = ACTIONS(703),
    [anon_sym_bytes27] = ACTIONS(703),
    [anon_sym_bytes28] = ACTIONS(703),
    [anon_sym_bytes29] = ACTIONS(703),
    [anon_sym_bytes30] = ACTIONS(703),
    [anon_sym_bytes31] = ACTIONS(703),
    [anon_sym_bytes32] = ACTIONS(703),
    [anon_sym_fixed] = ACTIONS(703),
    [aux_sym__fixed_token1] = ACTIONS(703),
    [anon_sym_ufixed] = ACTIONS(703),
    [aux_sym__ufixed_token1] = ACTIONS(703),
    [sym_comment] = ACTIONS(3),
  },
  [167] = {
    [ts_builtin_sym_end] = ACTIONS(707),
    [sym_identifier] = ACTIONS(709),
    [anon_sym_pragma] = ACTIONS(709),
    [anon_sym_import] = ACTIONS(709),
    [anon_sym_type] = ACTIONS(709),
    [anon_sym_abstract] = ACTIONS(709),
    [anon_sym_contract] = ACTIONS(709),
    [anon_sym_error] = ACTIONS(709),
    [anon_sym_interface] = ACTIONS(709),
    [anon_sym_library] = ACTIONS(709),
    [anon_sym_struct] = ACTIONS(709),
    [anon_sym_enum] = ACTIONS(709),
    [anon_sym_function] = ACTIONS(709),
    [anon_sym_byte] = ACTIONS(709),
    [anon_sym_address] = ACTIONS(709),
    [anon_sym_var] = ACTIONS(709),
    [anon_sym_mapping] = ACTIONS(709),
    [anon_sym_bool] = ACTIONS(709),
    [anon_sym_string] = ACTIONS(709),
    [anon_sym_int] = ACTIONS(709),
    [anon_sym_int8] = ACTIONS(709),
    [anon_sym_int16] = ACTIONS(709),
    [anon_sym_int24] = ACTIONS(709),
    [anon_sym_int32] = ACTIONS(709),
    [anon_sym_int40] = ACTIONS(709),
    [anon_sym_int48] = ACTIONS(709),
    [anon_sym_int56] = ACTIONS(709),
    [anon_sym_int64] = ACTIONS(709),
    [anon_sym_int72] = ACTIONS(709),
    [anon_sym_int80] = ACTIONS(709),
    [anon_sym_int88] = ACTIONS(709),
    [anon_sym_int96] = ACTIONS(709),
    [anon_sym_int104] = ACTIONS(709),
    [anon_sym_int112] = ACTIONS(709),
    [anon_sym_int120] = ACTIONS(709),
    [anon_sym_int128] = ACTIONS(709),
    [anon_sym_int136] = ACTIONS(709),
    [anon_sym_int144] = ACTIONS(709),
    [anon_sym_int152] = ACTIONS(709),
    [anon_sym_int160] = ACTIONS(709),
    [anon_sym_int168] = ACTIONS(709),
    [anon_sym_int176] = ACTIONS(709),
    [anon_sym_int184] = ACTIONS(709),
    [anon_sym_int192] = ACTIONS(709),
    [anon_sym_int200] = ACTIONS(709),
    [anon_sym_int208] = ACTIONS(709),
    [anon_sym_int216] = ACTIONS(709),
    [anon_sym_int224] = ACTIONS(709),
    [anon_sym_int232] = ACTIONS(709),
    [anon_sym_int240] = ACTIONS(709),
    [anon_sym_int248] = ACTIONS(709),
    [anon_sym_int256] = ACTIONS(709),
    [anon_sym_uint] = ACTIONS(709),
    [anon_sym_uint8] = ACTIONS(709),
    [anon_sym_uint16] = ACTIONS(709),
    [anon_sym_uint24] = ACTIONS(709),
    [anon_sym_uint32] = ACTIONS(709),
    [anon_sym_uint40] = ACTIONS(709),
    [anon_sym_uint48] = ACTIONS(709),
    [anon_sym_uint56] = ACTIONS(709),
    [anon_sym_uint64] = ACTIONS(709),
    [anon_sym_uint72] = ACTIONS(709),
    [anon_sym_uint80] = ACTIONS(709),
    [anon_sym_uint88] = ACTIONS(709),
    [anon_sym_uint96] = ACTIONS(709),
    [anon_sym_uint104] = ACTIONS(709),
    [anon_sym_uint112] = ACTIONS(709),
    [anon_sym_uint120] = ACTIONS(709),
    [anon_sym_uint128] = ACTIONS(709),
    [anon_sym_uint136] = ACTIONS(709),
    [anon_sym_uint144] = ACTIONS(709),
    [anon_sym_uint152] = ACTIONS(709),
    [anon_sym_uint160] = ACTIONS(709),
    [anon_sym_uint168] = ACTIONS(709),
    [anon_sym_uint176] = ACTIONS(709),
    [anon_sym_uint184] = ACTIONS(709),
    [anon_sym_uint192] = ACTIONS(709),
    [anon_sym_uint200] = ACTIONS(709),
    [anon_sym_uint208] = ACTIONS(709),
    [anon_sym_uint216] = ACTIONS(709),
    [anon_sym_uint224] = ACTIONS(709),
    [anon_sym_uint232] = ACTIONS(709),
    [anon_sym_uint240] = ACTIONS(709),
    [anon_sym_uint248] = ACTIONS(709),
    [anon_sym_uint256] = ACTIONS(709),
    [anon_sym_bytes] = ACTIONS(709),
    [anon_sym_bytes1] = ACTIONS(709),
    [anon_sym_bytes2] = ACTIONS(709),
    [anon_sym_bytes3] = ACTIONS(709),
    [anon_sym_bytes4] = ACTIONS(709),
    [anon_sym_bytes5] = ACTIONS(709),
    [anon_sym_bytes6] = ACTIONS(709),
    [anon_sym_bytes7] = ACTIONS(709),
    [anon_sym_bytes8] = ACTIONS(709),
    [anon_sym_bytes9] = ACTIONS(709),
    [anon_sym_bytes10] = ACTIONS(709),
    [anon_sym_bytes11] = ACTIONS(709),
    [anon_sym_bytes12] = ACTIONS(709),
    [anon_sym_bytes13] = ACTIONS(709),
    [anon_sym_bytes14] = ACTIONS(709),
    [anon_sym_bytes15] = ACTIONS(709),
    [anon_sym_bytes16] = ACTIONS(709),
    [anon_sym_bytes17] = ACTIONS(709),
    [anon_sym_bytes18] = ACTIONS(709),
    [anon_sym_bytes19] = ACTIONS(709),
    [anon_sym_bytes20] = ACTIONS(709),
    [anon_sym_bytes21] = ACTIONS(709),
    [anon_sym_bytes22] = ACTIONS(709),
    [anon_sym_bytes23] = ACTIONS(709),
    [anon_sym_bytes24] = ACTIONS(709),
    [anon_sym_bytes25] = ACTIONS(709),
    [anon_sym_bytes26] = ACTIONS(709),
    [anon_sym_bytes27] = ACTIONS(709),
    [anon_sym_bytes28] = ACTIONS(709),
    [anon_sym_bytes29] = ACTIONS(709),
    [anon_sym_bytes30] = ACTIONS(709),
    [anon_sym_bytes31] = ACTIONS(709),
    [anon_sym_bytes32] = ACTIONS(709),
    [anon_sym_fixed] = ACTIONS(709),
    [aux_sym__fixed_token1] = ACTIONS(709),
    [anon_sym_ufixed] = ACTIONS(709),
    [aux_sym__ufixed_token1] = ACTIONS(709),
    [sym_comment] = ACTIONS(3),
  },
  [168] = {
    [ts_builtin_sym_end] = ACTIONS(711),
    [sym_identifier] = ACTIONS(713),
    [anon_sym_pragma] = ACTIONS(713),
    [anon_sym_import] = ACTIONS(713),
    [anon_sym_type] = ACTIONS(713),
    [anon_sym_abstract] = ACTIONS(713),
    [anon_sym_contract] = ACTIONS(713),
    [anon_sym_error] = ACTIONS(713),
    [anon_sym_interface] = ACTIONS(713),
    [anon_sym_library] = ACTIONS(713),
    [anon_sym_struct] = ACTIONS(713),
    [anon_sym_enum] = ACTIONS(713),
    [anon_sym_function] = ACTIONS(713),
    [anon_sym_byte] = ACTIONS(713),
    [anon_sym_address] = ACTIONS(713),
    [anon_sym_var] = ACTIONS(713),
    [anon_sym_mapping] = ACTIONS(713),
    [anon_sym_bool] = ACTIONS(713),
    [anon_sym_string] = ACTIONS(713),
    [anon_sym_int] = ACTIONS(713),
    [anon_sym_int8] = ACTIONS(713),
    [anon_sym_int16] = ACTIONS(713),
    [anon_sym_int24] = ACTIONS(713),
    [anon_sym_int32] = ACTIONS(713),
    [anon_sym_int40] = ACTIONS(713),
    [anon_sym_int48] = ACTIONS(713),
    [anon_sym_int56] = ACTIONS(713),
    [anon_sym_int64] = ACTIONS(713),
    [anon_sym_int72] = ACTIONS(713),
    [anon_sym_int80] = ACTIONS(713),
    [anon_sym_int88] = ACTIONS(713),
    [anon_sym_int96] = ACTIONS(713),
    [anon_sym_int104] = ACTIONS(713),
    [anon_sym_int112] = ACTIONS(713),
    [anon_sym_int120] = ACTIONS(713),
    [anon_sym_int128] = ACTIONS(713),
    [anon_sym_int136] = ACTIONS(713),
    [anon_sym_int144] = ACTIONS(713),
    [anon_sym_int152] = ACTIONS(713),
    [anon_sym_int160] = ACTIONS(713),
    [anon_sym_int168] = ACTIONS(713),
    [anon_sym_int176] = ACTIONS(713),
    [anon_sym_int184] = ACTIONS(713),
    [anon_sym_int192] = ACTIONS(713),
    [anon_sym_int200] = ACTIONS(713),
    [anon_sym_int208] = ACTIONS(713),
    [anon_sym_int216] = ACTIONS(713),
    [anon_sym_int224] = ACTIONS(713),
    [anon_sym_int232] = ACTIONS(713),
    [anon_sym_int240] = ACTIONS(713),
    [anon_sym_int248] = ACTIONS(713),
    [anon_sym_int256] = ACTIONS(713),
    [anon_sym_uint] = ACTIONS(713),
    [anon_sym_uint8] = ACTIONS(713),
    [anon_sym_uint16] = ACTIONS(713),
    [anon_sym_uint24] = ACTIONS(713),
    [anon_sym_uint32] = ACTIONS(713),
    [anon_sym_uint40] = ACTIONS(713),
    [anon_sym_uint48] = ACTIONS(713),
    [anon_sym_uint56] = ACTIONS(713),
    [anon_sym_uint64] = ACTIONS(713),
    [anon_sym_uint72] = ACTIONS(713),
    [anon_sym_uint80] = ACTIONS(713),
    [anon_sym_uint88] = ACTIONS(713),
    [anon_sym_uint96] = ACTIONS(713),
    [anon_sym_uint104] = ACTIONS(713),
    [anon_sym_uint112] = ACTIONS(713),
    [anon_sym_uint120] = ACTIONS(713),
    [anon_sym_uint128] = ACTIONS(713),
    [anon_sym_uint136] = ACTIONS(713),
    [anon_sym_uint144] = ACTIONS(713),
    [anon_sym_uint152] = ACTIONS(713),
    [anon_sym_uint160] = ACTIONS(713),
    [anon_sym_uint168] = ACTIONS(713),
    [anon_sym_uint176] = ACTIONS(713),
    [anon_sym_uint184] = ACTIONS(713),
    [anon_sym_uint192] = ACTIONS(713),
    [anon_sym_uint200] = ACTIONS(713),
    [anon_sym_uint208] = ACTIONS(713),
    [anon_sym_uint216] = ACTIONS(713),
    [anon_sym_uint224] = ACTIONS(713),
    [anon_sym_uint232] = ACTIONS(713),
    [anon_sym_uint240] = ACTIONS(713),
    [anon_sym_uint248] = ACTIONS(713),
    [anon_sym_uint256] = ACTIONS(713),
    [anon_sym_bytes] = ACTIONS(713),
    [anon_sym_bytes1] = ACTIONS(713),
    [anon_sym_bytes2] = ACTIONS(713),
    [anon_sym_bytes3] = ACTIONS(713),
    [anon_sym_bytes4] = ACTIONS(713),
    [anon_sym_bytes5] = ACTIONS(713),
    [anon_sym_bytes6] = ACTIONS(713),
    [anon_sym_bytes7] = ACTIONS(713),
    [anon_sym_bytes8] = ACTIONS(713),
    [anon_sym_bytes9] = ACTIONS(713),
    [anon_sym_bytes10] = ACTIONS(713),
    [anon_sym_bytes11] = ACTIONS(713),
    [anon_sym_bytes12] = ACTIONS(713),
    [anon_sym_bytes13] = ACTIONS(713),
    [anon_sym_bytes14] = ACTIONS(713),
    [anon_sym_bytes15] = ACTIONS(713),
    [anon_sym_bytes16] = ACTIONS(713),
    [anon_sym_bytes17] = ACTIONS(713),
    [anon_sym_bytes18] = ACTIONS(713),
    [anon_sym_bytes19] = ACTIONS(713),
    [anon_sym_bytes20] = ACTIONS(713),
    [anon_sym_bytes21] = ACTIONS(713),
    [anon_sym_bytes22] = ACTIONS(713),
    [anon_sym_bytes23] = ACTIONS(713),
    [anon_sym_bytes24] = ACTIONS(713),
    [anon_sym_bytes25] = ACTIONS(713),
    [anon_sym_bytes26] = ACTIONS(713),
    [anon_sym_bytes27] = ACTIONS(713),
    [anon_sym_bytes28] = ACTIONS(713),
    [anon_sym_bytes29] = ACTIONS(713),
    [anon_sym_bytes30] = ACTIONS(713),
    [anon_sym_bytes31] = ACTIONS(713),
    [anon_sym_bytes32] = ACTIONS(713),
    [anon_sym_fixed] = ACTIONS(713),
    [aux_sym__fixed_token1] = ACTIONS(713),
    [anon_sym_ufixed] = ACTIONS(713),
    [aux_sym__ufixed_token1] = ACTIONS(713),
    [sym_comment] = ACTIONS(3),
  },
  [169] = {
    [sym_identifier] = ACTIONS(715),
    [anon_sym_RBRACE] = ACTIONS(717),
    [anon_sym_type] = ACTIONS(715),
    [anon_sym_error] = ACTIONS(715),
    [anon_sym_struct] = ACTIONS(715),
    [anon_sym_enum] = ACTIONS(715),
    [anon_sym_event] = ACTIONS(715),
    [anon_sym_using] = ACTIONS(715),
    [anon_sym_function] = ACTIONS(715),
    [anon_sym_byte] = ACTIONS(715),
    [anon_sym_address] = ACTIONS(715),
    [anon_sym_var] = ACTIONS(715),
    [anon_sym_modifier] = ACTIONS(715),
    [anon_sym_constructor] = ACTIONS(715),
    [anon_sym_fallback] = ACTIONS(715),
    [anon_sym_receive] = ACTIONS(715),
    [anon_sym_mapping] = ACTIONS(715),
    [anon_sym_bool] = ACTIONS(715),
    [anon_sym_string] = ACTIONS(715),
    [anon_sym_int] = ACTIONS(715),
    [anon_sym_int8] = ACTIONS(715),
    [anon_sym_int16] = ACTIONS(715),
    [anon_sym_int24] = ACTIONS(715),
    [anon_sym_int32] = ACTIONS(715),
    [anon_sym_int40] = ACTIONS(715),
    [anon_sym_int48] = ACTIONS(715),
    [anon_sym_int56] = ACTIONS(715),
    [anon_sym_int64] = ACTIONS(715),
    [anon_sym_int72] = ACTIONS(715),
    [anon_sym_int80] = ACTIONS(715),
    [anon_sym_int88] = ACTIONS(715),
    [anon_sym_int96] = ACTIONS(715),
    [anon_sym_int104] = ACTIONS(715),
    [anon_sym_int112] = ACTIONS(715),
    [anon_sym_int120] = ACTIONS(715),
    [anon_sym_int128] = ACTIONS(715),
    [anon_sym_int136] = ACTIONS(715),
    [anon_sym_int144] = ACTIONS(715),
    [anon_sym_int152] = ACTIONS(715),
    [anon_sym_int160] = ACTIONS(715),
    [anon_sym_int168] = ACTIONS(715),
    [anon_sym_int176] = ACTIONS(715),
    [anon_sym_int184] = ACTIONS(715),
    [anon_sym_int192] = ACTIONS(715),
    [anon_sym_int200] = ACTIONS(715),
    [anon_sym_int208] = ACTIONS(715),
    [anon_sym_int216] = ACTIONS(715),
    [anon_sym_int224] = ACTIONS(715),
    [anon_sym_int232] = ACTIONS(715),
    [anon_sym_int240] = ACTIONS(715),
    [anon_sym_int248] = ACTIONS(715),
    [anon_sym_int256] = ACTIONS(715),
    [anon_sym_uint] = ACTIONS(715),
    [anon_sym_uint8] = ACTIONS(715),
    [anon_sym_uint16] = ACTIONS(715),
    [anon_sym_uint24] = ACTIONS(715),
    [anon_sym_uint32] = ACTIONS(715),
    [anon_sym_uint40] = ACTIONS(715),
    [anon_sym_uint48] = ACTIONS(715),
    [anon_sym_uint56] = ACTIONS(715),
    [anon_sym_uint64] = ACTIONS(715),
    [anon_sym_uint72] = ACTIONS(715),
    [anon_sym_uint80] = ACTIONS(715),
    [anon_sym_uint88] = ACTIONS(715),
    [anon_sym_uint96] = ACTIONS(715),
    [anon_sym_uint104] = ACTIONS(715),
    [anon_sym_uint112] = ACTIONS(715),
    [anon_sym_uint120] = ACTIONS(715),
    [anon_sym_uint128] = ACTIONS(715),
    [anon_sym_uint136] = ACTIONS(715),
    [anon_sym_uint144] = ACTIONS(715),
    [anon_sym_uint152] = ACTIONS(715),
    [anon_sym_uint160] = ACTIONS(715),
    [anon_sym_uint168] = ACTIONS(715),
    [anon_sym_uint176] = ACTIONS(715),
    [anon_sym_uint184] = ACTIONS(715),
    [anon_sym_uint192] = ACTIONS(715),
    [anon_sym_uint200] = ACTIONS(715),
    [anon_sym_uint208] = ACTIONS(715),
    [anon_sym_uint216] = ACTIONS(715),
    [anon_sym_uint224] = ACTIONS(715),
    [anon_sym_uint232] = ACTIONS(715),
    [anon_sym_uint240] = ACTIONS(715),
    [anon_sym_uint248] = ACTIONS(715),
    [anon_sym_uint256] = ACTIONS(715),
    [anon_sym_bytes] = ACTIONS(715),
    [anon_sym_bytes1] = ACTIONS(715),
    [anon_sym_bytes2] = ACTIONS(715),
    [anon_sym_bytes3] = ACTIONS(715),
    [anon_sym_bytes4] = ACTIONS(715),
    [anon_sym_bytes5] = ACTIONS(715),
    [anon_sym_bytes6] = ACTIONS(715),
    [anon_sym_bytes7] = ACTIONS(715),
    [anon_sym_bytes8] = ACTIONS(715),
    [anon_sym_bytes9] = ACTIONS(715),
    [anon_sym_bytes10] = ACTIONS(715),
    [anon_sym_bytes11] = ACTIONS(715),
    [anon_sym_bytes12] = ACTIONS(715),
    [anon_sym_bytes13] = ACTIONS(715),
    [anon_sym_bytes14] = ACTIONS(715),
    [anon_sym_bytes15] = ACTIONS(715),
    [anon_sym_bytes16] = ACTIONS(715),
    [anon_sym_bytes17] = ACTIONS(715),
    [anon_sym_bytes18] = ACTIONS(715),
    [anon_sym_bytes19] = ACTIONS(715),
    [anon_sym_bytes20] = ACTIONS(715),
    [anon_sym_bytes21] = ACTIONS(715),
    [anon_sym_bytes22] = ACTIONS(715),
    [anon_sym_bytes23] = ACTIONS(715),
    [anon_sym_bytes24] = ACTIONS(715),
    [anon_sym_bytes25] = ACTIONS(715),
    [anon_sym_bytes26] = ACTIONS(715),
    [anon_sym_bytes27] = ACTIONS(715),
    [anon_sym_bytes28] = ACTIONS(715),
    [anon_sym_bytes29] = ACTIONS(715),
    [anon_sym_bytes30] = ACTIONS(715),
    [anon_sym_bytes31] = ACTIONS(715),
    [anon_sym_bytes32] = ACTIONS(715),
    [anon_sym_fixed] = ACTIONS(715),
    [aux_sym__fixed_token1] = ACTIONS(715),
    [anon_sym_ufixed] = ACTIONS(715),
    [aux_sym__ufixed_token1] = ACTIONS(715),
    [sym_comment] = ACTIONS(3),
  },
  [170] = {
    [ts_builtin_sym_end] = ACTIONS(719),
    [sym_identifier] = ACTIONS(721),
    [anon_sym_pragma] = ACTIONS(721),
    [anon_sym_import] = ACTIONS(721),
    [anon_sym_type] = ACTIONS(721),
    [anon_sym_abstract] = ACTIONS(721),
    [anon_sym_contract] = ACTIONS(721),
    [anon_sym_error] = ACTIONS(721),
    [anon_sym_interface] = ACTIONS(721),
    [anon_sym_library] = ACTIONS(721),
    [anon_sym_struct] = ACTIONS(721),
    [anon_sym_enum] = ACTIONS(721),
    [anon_sym_function] = ACTIONS(721),
    [anon_sym_byte] = ACTIONS(721),
    [anon_sym_address] = ACTIONS(721),
    [anon_sym_var] = ACTIONS(721),
    [anon_sym_mapping] = ACTIONS(721),
    [anon_sym_bool] = ACTIONS(721),
    [anon_sym_string] = ACTIONS(721),
    [anon_sym_int] = ACTIONS(721),
    [anon_sym_int8] = ACTIONS(721),
    [anon_sym_int16] = ACTIONS(721),
    [anon_sym_int24] = ACTIONS(721),
    [anon_sym_int32] = ACTIONS(721),
    [anon_sym_int40] = ACTIONS(721),
    [anon_sym_int48] = ACTIONS(721),
    [anon_sym_int56] = ACTIONS(721),
    [anon_sym_int64] = ACTIONS(721),
    [anon_sym_int72] = ACTIONS(721),
    [anon_sym_int80] = ACTIONS(721),
    [anon_sym_int88] = ACTIONS(721),
    [anon_sym_int96] = ACTIONS(721),
    [anon_sym_int104] = ACTIONS(721),
    [anon_sym_int112] = ACTIONS(721),
    [anon_sym_int120] = ACTIONS(721),
    [anon_sym_int128] = ACTIONS(721),
    [anon_sym_int136] = ACTIONS(721),
    [anon_sym_int144] = ACTIONS(721),
    [anon_sym_int152] = ACTIONS(721),
    [anon_sym_int160] = ACTIONS(721),
    [anon_sym_int168] = ACTIONS(721),
    [anon_sym_int176] = ACTIONS(721),
    [anon_sym_int184] = ACTIONS(721),
    [anon_sym_int192] = ACTIONS(721),
    [anon_sym_int200] = ACTIONS(721),
    [anon_sym_int208] = ACTIONS(721),
    [anon_sym_int216] = ACTIONS(721),
    [anon_sym_int224] = ACTIONS(721),
    [anon_sym_int232] = ACTIONS(721),
    [anon_sym_int240] = ACTIONS(721),
    [anon_sym_int248] = ACTIONS(721),
    [anon_sym_int256] = ACTIONS(721),
    [anon_sym_uint] = ACTIONS(721),
    [anon_sym_uint8] = ACTIONS(721),
    [anon_sym_uint16] = ACTIONS(721),
    [anon_sym_uint24] = ACTIONS(721),
    [anon_sym_uint32] = ACTIONS(721),
    [anon_sym_uint40] = ACTIONS(721),
    [anon_sym_uint48] = ACTIONS(721),
    [anon_sym_uint56] = ACTIONS(721),
    [anon_sym_uint64] = ACTIONS(721),
    [anon_sym_uint72] = ACTIONS(721),
    [anon_sym_uint80] = ACTIONS(721),
    [anon_sym_uint88] = ACTIONS(721),
    [anon_sym_uint96] = ACTIONS(721),
    [anon_sym_uint104] = ACTIONS(721),
    [anon_sym_uint112] = ACTIONS(721),
    [anon_sym_uint120] = ACTIONS(721),
    [anon_sym_uint128] = ACTIONS(721),
    [anon_sym_uint136] = ACTIONS(721),
    [anon_sym_uint144] = ACTIONS(721),
    [anon_sym_uint152] = ACTIONS(721),
    [anon_sym_uint160] = ACTIONS(721),
    [anon_sym_uint168] = ACTIONS(721),
    [anon_sym_uint176] = ACTIONS(721),
    [anon_sym_uint184] = ACTIONS(721),
    [anon_sym_uint192] = ACTIONS(721),
    [anon_sym_uint200] = ACTIONS(721),
    [anon_sym_uint208] = ACTIONS(721),
    [anon_sym_uint216] = ACTIONS(721),
    [anon_sym_uint224] = ACTIONS(721),
    [anon_sym_uint232] = ACTIONS(721),
    [anon_sym_uint240] = ACTIONS(721),
    [anon_sym_uint248] = ACTIONS(721),
    [anon_sym_uint256] = ACTIONS(721),
    [anon_sym_bytes] = ACTIONS(721),
    [anon_sym_bytes1] = ACTIONS(721),
    [anon_sym_bytes2] = ACTIONS(721),
    [anon_sym_bytes3] = ACTIONS(721),
    [anon_sym_bytes4] = ACTIONS(721),
    [anon_sym_bytes5] = ACTIONS(721),
    [anon_sym_bytes6] = ACTIONS(721),
    [anon_sym_bytes7] = ACTIONS(721),
    [anon_sym_bytes8] = ACTIONS(721),
    [anon_sym_bytes9] = ACTIONS(721),
    [anon_sym_bytes10] = ACTIONS(721),
    [anon_sym_bytes11] = ACTIONS(721),
    [anon_sym_bytes12] = ACTIONS(721),
    [anon_sym_bytes13] = ACTIONS(721),
    [anon_sym_bytes14] = ACTIONS(721),
    [anon_sym_bytes15] = ACTIONS(721),
    [anon_sym_bytes16] = ACTIONS(721),
    [anon_sym_bytes17] = ACTIONS(721),
    [anon_sym_bytes18] = ACTIONS(721),
    [anon_sym_bytes19] = ACTIONS(721),
    [anon_sym_bytes20] = ACTIONS(721),
    [anon_sym_bytes21] = ACTIONS(721),
    [anon_sym_bytes22] = ACTIONS(721),
    [anon_sym_bytes23] = ACTIONS(721),
    [anon_sym_bytes24] = ACTIONS(721),
    [anon_sym_bytes25] = ACTIONS(721),
    [anon_sym_bytes26] = ACTIONS(721),
    [anon_sym_bytes27] = ACTIONS(721),
    [anon_sym_bytes28] = ACTIONS(721),
    [anon_sym_bytes29] = ACTIONS(721),
    [anon_sym_bytes30] = ACTIONS(721),
    [anon_sym_bytes31] = ACTIONS(721),
    [anon_sym_bytes32] = ACTIONS(721),
    [anon_sym_fixed] = ACTIONS(721),
    [aux_sym__fixed_token1] = ACTIONS(721),
    [anon_sym_ufixed] = ACTIONS(721),
    [aux_sym__ufixed_token1] = ACTIONS(721),
    [sym_comment] = ACTIONS(3),
  },
  [171] = {
    [ts_builtin_sym_end] = ACTIONS(723),
    [sym_identifier] = ACTIONS(725),
    [anon_sym_pragma] = ACTIONS(725),
    [anon_sym_import] = ACTIONS(725),
    [anon_sym_type] = ACTIONS(725),
    [anon_sym_abstract] = ACTIONS(725),
    [anon_sym_contract] = ACTIONS(725),
    [anon_sym_error] = ACTIONS(725),
    [anon_sym_interface] = ACTIONS(725),
    [anon_sym_library] = ACTIONS(725),
    [anon_sym_struct] = ACTIONS(725),
    [anon_sym_enum] = ACTIONS(725),
    [anon_sym_function] = ACTIONS(725),
    [anon_sym_byte] = ACTIONS(725),
    [anon_sym_address] = ACTIONS(725),
    [anon_sym_var] = ACTIONS(725),
    [anon_sym_mapping] = ACTIONS(725),
    [anon_sym_bool] = ACTIONS(725),
    [anon_sym_string] = ACTIONS(725),
    [anon_sym_int] = ACTIONS(725),
    [anon_sym_int8] = ACTIONS(725),
    [anon_sym_int16] = ACTIONS(725),
    [anon_sym_int24] = ACTIONS(725),
    [anon_sym_int32] = ACTIONS(725),
    [anon_sym_int40] = ACTIONS(725),
    [anon_sym_int48] = ACTIONS(725),
    [anon_sym_int56] = ACTIONS(725),
    [anon_sym_int64] = ACTIONS(725),
    [anon_sym_int72] = ACTIONS(725),
    [anon_sym_int80] = ACTIONS(725),
    [anon_sym_int88] = ACTIONS(725),
    [anon_sym_int96] = ACTIONS(725),
    [anon_sym_int104] = ACTIONS(725),
    [anon_sym_int112] = ACTIONS(725),
    [anon_sym_int120] = ACTIONS(725),
    [anon_sym_int128] = ACTIONS(725),
    [anon_sym_int136] = ACTIONS(725),
    [anon_sym_int144] = ACTIONS(725),
    [anon_sym_int152] = ACTIONS(725),
    [anon_sym_int160] = ACTIONS(725),
    [anon_sym_int168] = ACTIONS(725),
    [anon_sym_int176] = ACTIONS(725),
    [anon_sym_int184] = ACTIONS(725),
    [anon_sym_int192] = ACTIONS(725),
    [anon_sym_int200] = ACTIONS(725),
    [anon_sym_int208] = ACTIONS(725),
    [anon_sym_int216] = ACTIONS(725),
    [anon_sym_int224] = ACTIONS(725),
    [anon_sym_int232] = ACTIONS(725),
    [anon_sym_int240] = ACTIONS(725),
    [anon_sym_int248] = ACTIONS(725),
    [anon_sym_int256] = ACTIONS(725),
    [anon_sym_uint] = ACTIONS(725),
    [anon_sym_uint8] = ACTIONS(725),
    [anon_sym_uint16] = ACTIONS(725),
    [anon_sym_uint24] = ACTIONS(725),
    [anon_sym_uint32] = ACTIONS(725),
    [anon_sym_uint40] = ACTIONS(725),
    [anon_sym_uint48] = ACTIONS(725),
    [anon_sym_uint56] = ACTIONS(725),
    [anon_sym_uint64] = ACTIONS(725),
    [anon_sym_uint72] = ACTIONS(725),
    [anon_sym_uint80] = ACTIONS(725),
    [anon_sym_uint88] = ACTIONS(725),
    [anon_sym_uint96] = ACTIONS(725),
    [anon_sym_uint104] = ACTIONS(725),
    [anon_sym_uint112] = ACTIONS(725),
    [anon_sym_uint120] = ACTIONS(725),
    [anon_sym_uint128] = ACTIONS(725),
    [anon_sym_uint136] = ACTIONS(725),
    [anon_sym_uint144] = ACTIONS(725),
    [anon_sym_uint152] = ACTIONS(725),
    [anon_sym_uint160] = ACTIONS(725),
    [anon_sym_uint168] = ACTIONS(725),
    [anon_sym_uint176] = ACTIONS(725),
    [anon_sym_uint184] = ACTIONS(725),
    [anon_sym_uint192] = ACTIONS(725),
    [anon_sym_uint200] = ACTIONS(725),
    [anon_sym_uint208] = ACTIONS(725),
    [anon_sym_uint216] = ACTIONS(725),
    [anon_sym_uint224] = ACTIONS(725),
    [anon_sym_uint232] = ACTIONS(725),
    [anon_sym_uint240] = ACTIONS(725),
    [anon_sym_uint248] = ACTIONS(725),
    [anon_sym_uint256] = ACTIONS(725),
    [anon_sym_bytes] = ACTIONS(725),
    [anon_sym_bytes1] = ACTIONS(725),
    [anon_sym_bytes2] = ACTIONS(725),
    [anon_sym_bytes3] = ACTIONS(725),
    [anon_sym_bytes4] = ACTIONS(725),
    [anon_sym_bytes5] = ACTIONS(725),
    [anon_sym_bytes6] = ACTIONS(725),
    [anon_sym_bytes7] = ACTIONS(725),
    [anon_sym_bytes8] = ACTIONS(725),
    [anon_sym_bytes9] = ACTIONS(725),
    [anon_sym_bytes10] = ACTIONS(725),
    [anon_sym_bytes11] = ACTIONS(725),
    [anon_sym_bytes12] = ACTIONS(725),
    [anon_sym_bytes13] = ACTIONS(725),
    [anon_sym_bytes14] = ACTIONS(725),
    [anon_sym_bytes15] = ACTIONS(725),
    [anon_sym_bytes16] = ACTIONS(725),
    [anon_sym_bytes17] = ACTIONS(725),
    [anon_sym_bytes18] = ACTIONS(725),
    [anon_sym_bytes19] = ACTIONS(725),
    [anon_sym_bytes20] = ACTIONS(725),
    [anon_sym_bytes21] = ACTIONS(725),
    [anon_sym_bytes22] = ACTIONS(725),
    [anon_sym_bytes23] = ACTIONS(725),
    [anon_sym_bytes24] = ACTIONS(725),
    [anon_sym_bytes25] = ACTIONS(725),
    [anon_sym_bytes26] = ACTIONS(725),
    [anon_sym_bytes27] = ACTIONS(725),
    [anon_sym_bytes28] = ACTIONS(725),
    [anon_sym_bytes29] = ACTIONS(725),
    [anon_sym_bytes30] = ACTIONS(725),
    [anon_sym_bytes31] = ACTIONS(725),
    [anon_sym_bytes32] = ACTIONS(725),
    [anon_sym_fixed] = ACTIONS(725),
    [aux_sym__fixed_token1] = ACTIONS(725),
    [anon_sym_ufixed] = ACTIONS(725),
    [aux_sym__ufixed_token1] = ACTIONS(725),
    [sym_comment] = ACTIONS(3),
  },
  [172] = {
    [ts_builtin_sym_end] = ACTIONS(689),
    [sym_identifier] = ACTIONS(687),
    [anon_sym_pragma] = ACTIONS(687),
    [anon_sym_import] = ACTIONS(687),
    [anon_sym_type] = ACTIONS(687),
    [anon_sym_abstract] = ACTIONS(687),
    [anon_sym_contract] = ACTIONS(687),
    [anon_sym_error] = ACTIONS(687),
    [anon_sym_interface] = ACTIONS(687),
    [anon_sym_library] = ACTIONS(687),
    [anon_sym_struct] = ACTIONS(687),
    [anon_sym_enum] = ACTIONS(687),
    [anon_sym_function] = ACTIONS(687),
    [anon_sym_byte] = ACTIONS(687),
    [anon_sym_address] = ACTIONS(687),
    [anon_sym_var] = ACTIONS(687),
    [anon_sym_mapping] = ACTIONS(687),
    [anon_sym_bool] = ACTIONS(687),
    [anon_sym_string] = ACTIONS(687),
    [anon_sym_int] = ACTIONS(687),
    [anon_sym_int8] = ACTIONS(687),
    [anon_sym_int16] = ACTIONS(687),
    [anon_sym_int24] = ACTIONS(687),
    [anon_sym_int32] = ACTIONS(687),
    [anon_sym_int40] = ACTIONS(687),
    [anon_sym_int48] = ACTIONS(687),
    [anon_sym_int56] = ACTIONS(687),
    [anon_sym_int64] = ACTIONS(687),
    [anon_sym_int72] = ACTIONS(687),
    [anon_sym_int80] = ACTIONS(687),
    [anon_sym_int88] = ACTIONS(687),
    [anon_sym_int96] = ACTIONS(687),
    [anon_sym_int104] = ACTIONS(687),
    [anon_sym_int112] = ACTIONS(687),
    [anon_sym_int120] = ACTIONS(687),
    [anon_sym_int128] = ACTIONS(687),
    [anon_sym_int136] = ACTIONS(687),
    [anon_sym_int144] = ACTIONS(687),
    [anon_sym_int152] = ACTIONS(687),
    [anon_sym_int160] = ACTIONS(687),
    [anon_sym_int168] = ACTIONS(687),
    [anon_sym_int176] = ACTIONS(687),
    [anon_sym_int184] = ACTIONS(687),
    [anon_sym_int192] = ACTIONS(687),
    [anon_sym_int200] = ACTIONS(687),
    [anon_sym_int208] = ACTIONS(687),
    [anon_sym_int216] = ACTIONS(687),
    [anon_sym_int224] = ACTIONS(687),
    [anon_sym_int232] = ACTIONS(687),
    [anon_sym_int240] = ACTIONS(687),
    [anon_sym_int248] = ACTIONS(687),
    [anon_sym_int256] = ACTIONS(687),
    [anon_sym_uint] = ACTIONS(687),
    [anon_sym_uint8] = ACTIONS(687),
    [anon_sym_uint16] = ACTIONS(687),
    [anon_sym_uint24] = ACTIONS(687),
    [anon_sym_uint32] = ACTIONS(687),
    [anon_sym_uint40] = ACTIONS(687),
    [anon_sym_uint48] = ACTIONS(687),
    [anon_sym_uint56] = ACTIONS(687),
    [anon_sym_uint64] = ACTIONS(687),
    [anon_sym_uint72] = ACTIONS(687),
    [anon_sym_uint80] = ACTIONS(687),
    [anon_sym_uint88] = ACTIONS(687),
    [anon_sym_uint96] = ACTIONS(687),
    [anon_sym_uint104] = ACTIONS(687),
    [anon_sym_uint112] = ACTIONS(687),
    [anon_sym_uint120] = ACTIONS(687),
    [anon_sym_uint128] = ACTIONS(687),
    [anon_sym_uint136] = ACTIONS(687),
    [anon_sym_uint144] = ACTIONS(687),
    [anon_sym_uint152] = ACTIONS(687),
    [anon_sym_uint160] = ACTIONS(687),
    [anon_sym_uint168] = ACTIONS(687),
    [anon_sym_uint176] = ACTIONS(687),
    [anon_sym_uint184] = ACTIONS(687),
    [anon_sym_uint192] = ACTIONS(687),
    [anon_sym_uint200] = ACTIONS(687),
    [anon_sym_uint208] = ACTIONS(687),
    [anon_sym_uint216] = ACTIONS(687),
    [anon_sym_uint224] = ACTIONS(687),
    [anon_sym_uint232] = ACTIONS(687),
    [anon_sym_uint240] = ACTIONS(687),
    [anon_sym_uint248] = ACTIONS(687),
    [anon_sym_uint256] = ACTIONS(687),
    [anon_sym_bytes] = ACTIONS(687),
    [anon_sym_bytes1] = ACTIONS(687),
    [anon_sym_bytes2] = ACTIONS(687),
    [anon_sym_bytes3] = ACTIONS(687),
    [anon_sym_bytes4] = ACTIONS(687),
    [anon_sym_bytes5] = ACTIONS(687),
    [anon_sym_bytes6] = ACTIONS(687),
    [anon_sym_bytes7] = ACTIONS(687),
    [anon_sym_bytes8] = ACTIONS(687),
    [anon_sym_bytes9] = ACTIONS(687),
    [anon_sym_bytes10] = ACTIONS(687),
    [anon_sym_bytes11] = ACTIONS(687),
    [anon_sym_bytes12] = ACTIONS(687),
    [anon_sym_bytes13] = ACTIONS(687),
    [anon_sym_bytes14] = ACTIONS(687),
    [anon_sym_bytes15] = ACTIONS(687),
    [anon_sym_bytes16] = ACTIONS(687),
    [anon_sym_bytes17] = ACTIONS(687),
    [anon_sym_bytes18] = ACTIONS(687),
    [anon_sym_bytes19] = ACTIONS(687),
    [anon_sym_bytes20] = ACTIONS(687),
    [anon_sym_bytes21] = ACTIONS(687),
    [anon_sym_bytes22] = ACTIONS(687),
    [anon_sym_bytes23] = ACTIONS(687),
    [anon_sym_bytes24] = ACTIONS(687),
    [anon_sym_bytes25] = ACTIONS(687),
    [anon_sym_bytes26] = ACTIONS(687),
    [anon_sym_bytes27] = ACTIONS(687),
    [anon_sym_bytes28] = ACTIONS(687),
    [anon_sym_bytes29] = ACTIONS(687),
    [anon_sym_bytes30] = ACTIONS(687),
    [anon_sym_bytes31] = ACTIONS(687),
    [anon_sym_bytes32] = ACTIONS(687),
    [anon_sym_fixed] = ACTIONS(687),
    [aux_sym__fixed_token1] = ACTIONS(687),
    [anon_sym_ufixed] = ACTIONS(687),
    [aux_sym__ufixed_token1] = ACTIONS(687),
    [sym_comment] = ACTIONS(3),
  },
  [173] = {
    [ts_builtin_sym_end] = ACTIONS(727),
    [sym_identifier] = ACTIONS(729),
    [anon_sym_pragma] = ACTIONS(729),
    [anon_sym_import] = ACTIONS(729),
    [anon_sym_type] = ACTIONS(729),
    [anon_sym_abstract] = ACTIONS(729),
    [anon_sym_contract] = ACTIONS(729),
    [anon_sym_error] = ACTIONS(729),
    [anon_sym_interface] = ACTIONS(729),
    [anon_sym_library] = ACTIONS(729),
    [anon_sym_struct] = ACTIONS(729),
    [anon_sym_enum] = ACTIONS(729),
    [anon_sym_function] = ACTIONS(729),
    [anon_sym_byte] = ACTIONS(729),
    [anon_sym_address] = ACTIONS(729),
    [anon_sym_var] = ACTIONS(729),
    [anon_sym_mapping] = ACTIONS(729),
    [anon_sym_bool] = ACTIONS(729),
    [anon_sym_string] = ACTIONS(729),
    [anon_sym_int] = ACTIONS(729),
    [anon_sym_int8] = ACTIONS(729),
    [anon_sym_int16] = ACTIONS(729),
    [anon_sym_int24] = ACTIONS(729),
    [anon_sym_int32] = ACTIONS(729),
    [anon_sym_int40] = ACTIONS(729),
    [anon_sym_int48] = ACTIONS(729),
    [anon_sym_int56] = ACTIONS(729),
    [anon_sym_int64] = ACTIONS(729),
    [anon_sym_int72] = ACTIONS(729),
    [anon_sym_int80] = ACTIONS(729),
    [anon_sym_int88] = ACTIONS(729),
    [anon_sym_int96] = ACTIONS(729),
    [anon_sym_int104] = ACTIONS(729),
    [anon_sym_int112] = ACTIONS(729),
    [anon_sym_int120] = ACTIONS(729),
    [anon_sym_int128] = ACTIONS(729),
    [anon_sym_int136] = ACTIONS(729),
    [anon_sym_int144] = ACTIONS(729),
    [anon_sym_int152] = ACTIONS(729),
    [anon_sym_int160] = ACTIONS(729),
    [anon_sym_int168] = ACTIONS(729),
    [anon_sym_int176] = ACTIONS(729),
    [anon_sym_int184] = ACTIONS(729),
    [anon_sym_int192] = ACTIONS(729),
    [anon_sym_int200] = ACTIONS(729),
    [anon_sym_int208] = ACTIONS(729),
    [anon_sym_int216] = ACTIONS(729),
    [anon_sym_int224] = ACTIONS(729),
    [anon_sym_int232] = ACTIONS(729),
    [anon_sym_int240] = ACTIONS(729),
    [anon_sym_int248] = ACTIONS(729),
    [anon_sym_int256] = ACTIONS(729),
    [anon_sym_uint] = ACTIONS(729),
    [anon_sym_uint8] = ACTIONS(729),
    [anon_sym_uint16] = ACTIONS(729),
    [anon_sym_uint24] = ACTIONS(729),
    [anon_sym_uint32] = ACTIONS(729),
    [anon_sym_uint40] = ACTIONS(729),
    [anon_sym_uint48] = ACTIONS(729),
    [anon_sym_uint56] = ACTIONS(729),
    [anon_sym_uint64] = ACTIONS(729),
    [anon_sym_uint72] = ACTIONS(729),
    [anon_sym_uint80] = ACTIONS(729),
    [anon_sym_uint88] = ACTIONS(729),
    [anon_sym_uint96] = ACTIONS(729),
    [anon_sym_uint104] = ACTIONS(729),
    [anon_sym_uint112] = ACTIONS(729),
    [anon_sym_uint120] = ACTIONS(729),
    [anon_sym_uint128] = ACTIONS(729),
    [anon_sym_uint136] = ACTIONS(729),
    [anon_sym_uint144] = ACTIONS(729),
    [anon_sym_uint152] = ACTIONS(729),
    [anon_sym_uint160] = ACTIONS(729),
    [anon_sym_uint168] = ACTIONS(729),
    [anon_sym_uint176] = ACTIONS(729),
    [anon_sym_uint184] = ACTIONS(729),
    [anon_sym_uint192] = ACTIONS(729),
    [anon_sym_uint200] = ACTIONS(729),
    [anon_sym_uint208] = ACTIONS(729),
    [anon_sym_uint216] = ACTIONS(729),
    [anon_sym_uint224] = ACTIONS(729),
    [anon_sym_uint232] = ACTIONS(729),
    [anon_sym_uint240] = ACTIONS(729),
    [anon_sym_uint248] = ACTIONS(729),
    [anon_sym_uint256] = ACTIONS(729),
    [anon_sym_bytes] = ACTIONS(729),
    [anon_sym_bytes1] = ACTIONS(729),
    [anon_sym_bytes2] = ACTIONS(729),
    [anon_sym_bytes3] = ACTIONS(729),
    [anon_sym_bytes4] = ACTIONS(729),
    [anon_sym_bytes5] = ACTIONS(729),
    [anon_sym_bytes6] = ACTIONS(729),
    [anon_sym_bytes7] = ACTIONS(729),
    [anon_sym_bytes8] = ACTIONS(729),
    [anon_sym_bytes9] = ACTIONS(729),
    [anon_sym_bytes10] = ACTIONS(729),
    [anon_sym_bytes11] = ACTIONS(729),
    [anon_sym_bytes12] = ACTIONS(729),
    [anon_sym_bytes13] = ACTIONS(729),
    [anon_sym_bytes14] = ACTIONS(729),
    [anon_sym_bytes15] = ACTIONS(729),
    [anon_sym_bytes16] = ACTIONS(729),
    [anon_sym_bytes17] = ACTIONS(729),
    [anon_sym_bytes18] = ACTIONS(729),
    [anon_sym_bytes19] = ACTIONS(729),
    [anon_sym_bytes20] = ACTIONS(729),
    [anon_sym_bytes21] = ACTIONS(729),
    [anon_sym_bytes22] = ACTIONS(729),
    [anon_sym_bytes23] = ACTIONS(729),
    [anon_sym_bytes24] = ACTIONS(729),
    [anon_sym_bytes25] = ACTIONS(729),
    [anon_sym_bytes26] = ACTIONS(729),
    [anon_sym_bytes27] = ACTIONS(729),
    [anon_sym_bytes28] = ACTIONS(729),
    [anon_sym_bytes29] = ACTIONS(729),
    [anon_sym_bytes30] = ACTIONS(729),
    [anon_sym_bytes31] = ACTIONS(729),
    [anon_sym_bytes32] = ACTIONS(729),
    [anon_sym_fixed] = ACTIONS(729),
    [aux_sym__fixed_token1] = ACTIONS(729),
    [anon_sym_ufixed] = ACTIONS(729),
    [aux_sym__ufixed_token1] = ACTIONS(729),
    [sym_comment] = ACTIONS(3),
  },
  [174] = {
    [ts_builtin_sym_end] = ACTIONS(609),
    [sym_identifier] = ACTIONS(607),
    [anon_sym_pragma] = ACTIONS(607),
    [anon_sym_import] = ACTIONS(607),
    [anon_sym_type] = ACTIONS(607),
    [anon_sym_abstract] = ACTIONS(607),
    [anon_sym_contract] = ACTIONS(607),
    [anon_sym_error] = ACTIONS(607),
    [anon_sym_interface] = ACTIONS(607),
    [anon_sym_library] = ACTIONS(607),
    [anon_sym_struct] = ACTIONS(607),
    [anon_sym_enum] = ACTIONS(607),
    [anon_sym_function] = ACTIONS(607),
    [anon_sym_byte] = ACTIONS(607),
    [anon_sym_address] = ACTIONS(607),
    [anon_sym_var] = ACTIONS(607),
    [anon_sym_mapping] = ACTIONS(607),
    [anon_sym_bool] = ACTIONS(607),
    [anon_sym_string] = ACTIONS(607),
    [anon_sym_int] = ACTIONS(607),
    [anon_sym_int8] = ACTIONS(607),
    [anon_sym_int16] = ACTIONS(607),
    [anon_sym_int24] = ACTIONS(607),
    [anon_sym_int32] = ACTIONS(607),
    [anon_sym_int40] = ACTIONS(607),
    [anon_sym_int48] = ACTIONS(607),
    [anon_sym_int56] = ACTIONS(607),
    [anon_sym_int64] = ACTIONS(607),
    [anon_sym_int72] = ACTIONS(607),
    [anon_sym_int80] = ACTIONS(607),
    [anon_sym_int88] = ACTIONS(607),
    [anon_sym_int96] = ACTIONS(607),
    [anon_sym_int104] = ACTIONS(607),
    [anon_sym_int112] = ACTIONS(607),
    [anon_sym_int120] = ACTIONS(607),
    [anon_sym_int128] = ACTIONS(607),
    [anon_sym_int136] = ACTIONS(607),
    [anon_sym_int144] = ACTIONS(607),
    [anon_sym_int152] = ACTIONS(607),
    [anon_sym_int160] = ACTIONS(607),
    [anon_sym_int168] = ACTIONS(607),
    [anon_sym_int176] = ACTIONS(607),
    [anon_sym_int184] = ACTIONS(607),
    [anon_sym_int192] = ACTIONS(607),
    [anon_sym_int200] = ACTIONS(607),
    [anon_sym_int208] = ACTIONS(607),
    [anon_sym_int216] = ACTIONS(607),
    [anon_sym_int224] = ACTIONS(607),
    [anon_sym_int232] = ACTIONS(607),
    [anon_sym_int240] = ACTIONS(607),
    [anon_sym_int248] = ACTIONS(607),
    [anon_sym_int256] = ACTIONS(607),
    [anon_sym_uint] = ACTIONS(607),
    [anon_sym_uint8] = ACTIONS(607),
    [anon_sym_uint16] = ACTIONS(607),
    [anon_sym_uint24] = ACTIONS(607),
    [anon_sym_uint32] = ACTIONS(607),
    [anon_sym_uint40] = ACTIONS(607),
    [anon_sym_uint48] = ACTIONS(607),
    [anon_sym_uint56] = ACTIONS(607),
    [anon_sym_uint64] = ACTIONS(607),
    [anon_sym_uint72] = ACTIONS(607),
    [anon_sym_uint80] = ACTIONS(607),
    [anon_sym_uint88] = ACTIONS(607),
    [anon_sym_uint96] = ACTIONS(607),
    [anon_sym_uint104] = ACTIONS(607),
    [anon_sym_uint112] = ACTIONS(607),
    [anon_sym_uint120] = ACTIONS(607),
    [anon_sym_uint128] = ACTIONS(607),
    [anon_sym_uint136] = ACTIONS(607),
    [anon_sym_uint144] = ACTIONS(607),
    [anon_sym_uint152] = ACTIONS(607),
    [anon_sym_uint160] = ACTIONS(607),
    [anon_sym_uint168] = ACTIONS(607),
    [anon_sym_uint176] = ACTIONS(607),
    [anon_sym_uint184] = ACTIONS(607),
    [anon_sym_uint192] = ACTIONS(607),
    [anon_sym_uint200] = ACTIONS(607),
    [anon_sym_uint208] = ACTIONS(607),
    [anon_sym_uint216] = ACTIONS(607),
    [anon_sym_uint224] = ACTIONS(607),
    [anon_sym_uint232] = ACTIONS(607),
    [anon_sym_uint240] = ACTIONS(607),
    [anon_sym_uint248] = ACTIONS(607),
    [anon_sym_uint256] = ACTIONS(607),
    [anon_sym_bytes] = ACTIONS(607),
    [anon_sym_bytes1] = ACTIONS(607),
    [anon_sym_bytes2] = ACTIONS(607),
    [anon_sym_bytes3] = ACTIONS(607),
    [anon_sym_bytes4] = ACTIONS(607),
    [anon_sym_bytes5] = ACTIONS(607),
    [anon_sym_bytes6] = ACTIONS(607),
    [anon_sym_bytes7] = ACTIONS(607),
    [anon_sym_bytes8] = ACTIONS(607),
    [anon_sym_bytes9] = ACTIONS(607),
    [anon_sym_bytes10] = ACTIONS(607),
    [anon_sym_bytes11] = ACTIONS(607),
    [anon_sym_bytes12] = ACTIONS(607),
    [anon_sym_bytes13] = ACTIONS(607),
    [anon_sym_bytes14] = ACTIONS(607),
    [anon_sym_bytes15] = ACTIONS(607),
    [anon_sym_bytes16] = ACTIONS(607),
    [anon_sym_bytes17] = ACTIONS(607),
    [anon_sym_bytes18] = ACTIONS(607),
    [anon_sym_bytes19] = ACTIONS(607),
    [anon_sym_bytes20] = ACTIONS(607),
    [anon_sym_bytes21] = ACTIONS(607),
    [anon_sym_bytes22] = ACTIONS(607),
    [anon_sym_bytes23] = ACTIONS(607),
    [anon_sym_bytes24] = ACTIONS(607),
    [anon_sym_bytes25] = ACTIONS(607),
    [anon_sym_bytes26] = ACTIONS(607),
    [anon_sym_bytes27] = ACTIONS(607),
    [anon_sym_bytes28] = ACTIONS(607),
    [anon_sym_bytes29] = ACTIONS(607),
    [anon_sym_bytes30] = ACTIONS(607),
    [anon_sym_bytes31] = ACTIONS(607),
    [anon_sym_bytes32] = ACTIONS(607),
    [anon_sym_fixed] = ACTIONS(607),
    [aux_sym__fixed_token1] = ACTIONS(607),
    [anon_sym_ufixed] = ACTIONS(607),
    [aux_sym__ufixed_token1] = ACTIONS(607),
    [sym_comment] = ACTIONS(3),
  },
  [175] = {
    [sym_identifier] = ACTIONS(731),
    [anon_sym_RBRACE] = ACTIONS(733),
    [anon_sym_type] = ACTIONS(731),
    [anon_sym_error] = ACTIONS(731),
    [anon_sym_struct] = ACTIONS(731),
    [anon_sym_enum] = ACTIONS(731),
    [anon_sym_event] = ACTIONS(731),
    [anon_sym_using] = ACTIONS(731),
    [anon_sym_function] = ACTIONS(731),
    [anon_sym_byte] = ACTIONS(731),
    [anon_sym_address] = ACTIONS(731),
    [anon_sym_var] = ACTIONS(731),
    [anon_sym_modifier] = ACTIONS(731),
    [anon_sym_constructor] = ACTIONS(731),
    [anon_sym_fallback] = ACTIONS(731),
    [anon_sym_receive] = ACTIONS(731),
    [anon_sym_mapping] = ACTIONS(731),
    [anon_sym_bool] = ACTIONS(731),
    [anon_sym_string] = ACTIONS(731),
    [anon_sym_int] = ACTIONS(731),
    [anon_sym_int8] = ACTIONS(731),
    [anon_sym_int16] = ACTIONS(731),
    [anon_sym_int24] = ACTIONS(731),
    [anon_sym_int32] = ACTIONS(731),
    [anon_sym_int40] = ACTIONS(731),
    [anon_sym_int48] = ACTIONS(731),
    [anon_sym_int56] = ACTIONS(731),
    [anon_sym_int64] = ACTIONS(731),
    [anon_sym_int72] = ACTIONS(731),
    [anon_sym_int80] = ACTIONS(731),
    [anon_sym_int88] = ACTIONS(731),
    [anon_sym_int96] = ACTIONS(731),
    [anon_sym_int104] = ACTIONS(731),
    [anon_sym_int112] = ACTIONS(731),
    [anon_sym_int120] = ACTIONS(731),
    [anon_sym_int128] = ACTIONS(731),
    [anon_sym_int136] = ACTIONS(731),
    [anon_sym_int144] = ACTIONS(731),
    [anon_sym_int152] = ACTIONS(731),
    [anon_sym_int160] = ACTIONS(731),
    [anon_sym_int168] = ACTIONS(731),
    [anon_sym_int176] = ACTIONS(731),
    [anon_sym_int184] = ACTIONS(731),
    [anon_sym_int192] = ACTIONS(731),
    [anon_sym_int200] = ACTIONS(731),
    [anon_sym_int208] = ACTIONS(731),
    [anon_sym_int216] = ACTIONS(731),
    [anon_sym_int224] = ACTIONS(731),
    [anon_sym_int232] = ACTIONS(731),
    [anon_sym_int240] = ACTIONS(731),
    [anon_sym_int248] = ACTIONS(731),
    [anon_sym_int256] = ACTIONS(731),
    [anon_sym_uint] = ACTIONS(731),
    [anon_sym_uint8] = ACTIONS(731),
    [anon_sym_uint16] = ACTIONS(731),
    [anon_sym_uint24] = ACTIONS(731),
    [anon_sym_uint32] = ACTIONS(731),
    [anon_sym_uint40] = ACTIONS(731),
    [anon_sym_uint48] = ACTIONS(731),
    [anon_sym_uint56] = ACTIONS(731),
    [anon_sym_uint64] = ACTIONS(731),
    [anon_sym_uint72] = ACTIONS(731),
    [anon_sym_uint80] = ACTIONS(731),
    [anon_sym_uint88] = ACTIONS(731),
    [anon_sym_uint96] = ACTIONS(731),
    [anon_sym_uint104] = ACTIONS(731),
    [anon_sym_uint112] = ACTIONS(731),
    [anon_sym_uint120] = ACTIONS(731),
    [anon_sym_uint128] = ACTIONS(731),
    [anon_sym_uint136] = ACTIONS(731),
    [anon_sym_uint144] = ACTIONS(731),
    [anon_sym_uint152] = ACTIONS(731),
    [anon_sym_uint160] = ACTIONS(731),
    [anon_sym_uint168] = ACTIONS(731),
    [anon_sym_uint176] = ACTIONS(731),
    [anon_sym_uint184] = ACTIONS(731),
    [anon_sym_uint192] = ACTIONS(731),
    [anon_sym_uint200] = ACTIONS(731),
    [anon_sym_uint208] = ACTIONS(731),
    [anon_sym_uint216] = ACTIONS(731),
    [anon_sym_uint224] = ACTIONS(731),
    [anon_sym_uint232] = ACTIONS(731),
    [anon_sym_uint240] = ACTIONS(731),
    [anon_sym_uint248] = ACTIONS(731),
    [anon_sym_uint256] = ACTIONS(731),
    [anon_sym_bytes] = ACTIONS(731),
    [anon_sym_bytes1] = ACTIONS(731),
    [anon_sym_bytes2] = ACTIONS(731),
    [anon_sym_bytes3] = ACTIONS(731),
    [anon_sym_bytes4] = ACTIONS(731),
    [anon_sym_bytes5] = ACTIONS(731),
    [anon_sym_bytes6] = ACTIONS(731),
    [anon_sym_bytes7] = ACTIONS(731),
    [anon_sym_bytes8] = ACTIONS(731),
    [anon_sym_bytes9] = ACTIONS(731),
    [anon_sym_bytes10] = ACTIONS(731),
    [anon_sym_bytes11] = ACTIONS(731),
    [anon_sym_bytes12] = ACTIONS(731),
    [anon_sym_bytes13] = ACTIONS(731),
    [anon_sym_bytes14] = ACTIONS(731),
    [anon_sym_bytes15] = ACTIONS(731),
    [anon_sym_bytes16] = ACTIONS(731),
    [anon_sym_bytes17] = ACTIONS(731),
    [anon_sym_bytes18] = ACTIONS(731),
    [anon_sym_bytes19] = ACTIONS(731),
    [anon_sym_bytes20] = ACTIONS(731),
    [anon_sym_bytes21] = ACTIONS(731),
    [anon_sym_bytes22] = ACTIONS(731),
    [anon_sym_bytes23] = ACTIONS(731),
    [anon_sym_bytes24] = ACTIONS(731),
    [anon_sym_bytes25] = ACTIONS(731),
    [anon_sym_bytes26] = ACTIONS(731),
    [anon_sym_bytes27] = ACTIONS(731),
    [anon_sym_bytes28] = ACTIONS(731),
    [anon_sym_bytes29] = ACTIONS(731),
    [anon_sym_bytes30] = ACTIONS(731),
    [anon_sym_bytes31] = ACTIONS(731),
    [anon_sym_bytes32] = ACTIONS(731),
    [anon_sym_fixed] = ACTIONS(731),
    [aux_sym__fixed_token1] = ACTIONS(731),
    [anon_sym_ufixed] = ACTIONS(731),
    [aux_sym__ufixed_token1] = ACTIONS(731),
    [sym_comment] = ACTIONS(3),
  },
  [176] = {
    [ts_builtin_sym_end] = ACTIONS(693),
    [sym_identifier] = ACTIONS(691),
    [anon_sym_pragma] = ACTIONS(691),
    [anon_sym_import] = ACTIONS(691),
    [anon_sym_type] = ACTIONS(691),
    [anon_sym_abstract] = ACTIONS(691),
    [anon_sym_contract] = ACTIONS(691),
    [anon_sym_error] = ACTIONS(691),
    [anon_sym_interface] = ACTIONS(691),
    [anon_sym_library] = ACTIONS(691),
    [anon_sym_struct] = ACTIONS(691),
    [anon_sym_enum] = ACTIONS(691),
    [anon_sym_function] = ACTIONS(691),
    [anon_sym_byte] = ACTIONS(691),
    [anon_sym_address] = ACTIONS(691),
    [anon_sym_var] = ACTIONS(691),
    [anon_sym_mapping] = ACTIONS(691),
    [anon_sym_bool] = ACTIONS(691),
    [anon_sym_string] = ACTIONS(691),
    [anon_sym_int] = ACTIONS(691),
    [anon_sym_int8] = ACTIONS(691),
    [anon_sym_int16] = ACTIONS(691),
    [anon_sym_int24] = ACTIONS(691),
    [anon_sym_int32] = ACTIONS(691),
    [anon_sym_int40] = ACTIONS(691),
    [anon_sym_int48] = ACTIONS(691),
    [anon_sym_int56] = ACTIONS(691),
    [anon_sym_int64] = ACTIONS(691),
    [anon_sym_int72] = ACTIONS(691),
    [anon_sym_int80] = ACTIONS(691),
    [anon_sym_int88] = ACTIONS(691),
    [anon_sym_int96] = ACTIONS(691),
    [anon_sym_int104] = ACTIONS(691),
    [anon_sym_int112] = ACTIONS(691),
    [anon_sym_int120] = ACTIONS(691),
    [anon_sym_int128] = ACTIONS(691),
    [anon_sym_int136] = ACTIONS(691),
    [anon_sym_int144] = ACTIONS(691),
    [anon_sym_int152] = ACTIONS(691),
    [anon_sym_int160] = ACTIONS(691),
    [anon_sym_int168] = ACTIONS(691),
    [anon_sym_int176] = ACTIONS(691),
    [anon_sym_int184] = ACTIONS(691),
    [anon_sym_int192] = ACTIONS(691),
    [anon_sym_int200] = ACTIONS(691),
    [anon_sym_int208] = ACTIONS(691),
    [anon_sym_int216] = ACTIONS(691),
    [anon_sym_int224] = ACTIONS(691),
    [anon_sym_int232] = ACTIONS(691),
    [anon_sym_int240] = ACTIONS(691),
    [anon_sym_int248] = ACTIONS(691),
    [anon_sym_int256] = ACTIONS(691),
    [anon_sym_uint] = ACTIONS(691),
    [anon_sym_uint8] = ACTIONS(691),
    [anon_sym_uint16] = ACTIONS(691),
    [anon_sym_uint24] = ACTIONS(691),
    [anon_sym_uint32] = ACTIONS(691),
    [anon_sym_uint40] = ACTIONS(691),
    [anon_sym_uint48] = ACTIONS(691),
    [anon_sym_uint56] = ACTIONS(691),
    [anon_sym_uint64] = ACTIONS(691),
    [anon_sym_uint72] = ACTIONS(691),
    [anon_sym_uint80] = ACTIONS(691),
    [anon_sym_uint88] = ACTIONS(691),
    [anon_sym_uint96] = ACTIONS(691),
    [anon_sym_uint104] = ACTIONS(691),
    [anon_sym_uint112] = ACTIONS(691),
    [anon_sym_uint120] = ACTIONS(691),
    [anon_sym_uint128] = ACTIONS(691),
    [anon_sym_uint136] = ACTIONS(691),
    [anon_sym_uint144] = ACTIONS(691),
    [anon_sym_uint152] = ACTIONS(691),
    [anon_sym_uint160] = ACTIONS(691),
    [anon_sym_uint168] = ACTIONS(691),
    [anon_sym_uint176] = ACTIONS(691),
    [anon_sym_uint184] = ACTIONS(691),
    [anon_sym_uint192] = ACTIONS(691),
    [anon_sym_uint200] = ACTIONS(691),
    [anon_sym_uint208] = ACTIONS(691),
    [anon_sym_uint216] = ACTIONS(691),
    [anon_sym_uint224] = ACTIONS(691),
    [anon_sym_uint232] = ACTIONS(691),
    [anon_sym_uint240] = ACTIONS(691),
    [anon_sym_uint248] = ACTIONS(691),
    [anon_sym_uint256] = ACTIONS(691),
    [anon_sym_bytes] = ACTIONS(691),
    [anon_sym_bytes1] = ACTIONS(691),
    [anon_sym_bytes2] = ACTIONS(691),
    [anon_sym_bytes3] = ACTIONS(691),
    [anon_sym_bytes4] = ACTIONS(691),
    [anon_sym_bytes5] = ACTIONS(691),
    [anon_sym_bytes6] = ACTIONS(691),
    [anon_sym_bytes7] = ACTIONS(691),
    [anon_sym_bytes8] = ACTIONS(691),
    [anon_sym_bytes9] = ACTIONS(691),
    [anon_sym_bytes10] = ACTIONS(691),
    [anon_sym_bytes11] = ACTIONS(691),
    [anon_sym_bytes12] = ACTIONS(691),
    [anon_sym_bytes13] = ACTIONS(691),
    [anon_sym_bytes14] = ACTIONS(691),
    [anon_sym_bytes15] = ACTIONS(691),
    [anon_sym_bytes16] = ACTIONS(691),
    [anon_sym_bytes17] = ACTIONS(691),
    [anon_sym_bytes18] = ACTIONS(691),
    [anon_sym_bytes19] = ACTIONS(691),
    [anon_sym_bytes20] = ACTIONS(691),
    [anon_sym_bytes21] = ACTIONS(691),
    [anon_sym_bytes22] = ACTIONS(691),
    [anon_sym_bytes23] = ACTIONS(691),
    [anon_sym_bytes24] = ACTIONS(691),
    [anon_sym_bytes25] = ACTIONS(691),
    [anon_sym_bytes26] = ACTIONS(691),
    [anon_sym_bytes27] = ACTIONS(691),
    [anon_sym_bytes28] = ACTIONS(691),
    [anon_sym_bytes29] = ACTIONS(691),
    [anon_sym_bytes30] = ACTIONS(691),
    [anon_sym_bytes31] = ACTIONS(691),
    [anon_sym_bytes32] = ACTIONS(691),
    [anon_sym_fixed] = ACTIONS(691),
    [aux_sym__fixed_token1] = ACTIONS(691),
    [anon_sym_ufixed] = ACTIONS(691),
    [aux_sym__ufixed_token1] = ACTIONS(691),
    [sym_comment] = ACTIONS(3),
  },
  [177] = {
    [sym_identifier] = ACTIONS(709),
    [anon_sym_RBRACE] = ACTIONS(707),
    [anon_sym_type] = ACTIONS(709),
    [anon_sym_error] = ACTIONS(709),
    [anon_sym_struct] = ACTIONS(709),
    [anon_sym_enum] = ACTIONS(709),
    [anon_sym_event] = ACTIONS(709),
    [anon_sym_using] = ACTIONS(709),
    [anon_sym_function] = ACTIONS(709),
    [anon_sym_byte] = ACTIONS(709),
    [anon_sym_address] = ACTIONS(709),
    [anon_sym_var] = ACTIONS(709),
    [anon_sym_modifier] = ACTIONS(709),
    [anon_sym_constructor] = ACTIONS(709),
    [anon_sym_fallback] = ACTIONS(709),
    [anon_sym_receive] = ACTIONS(709),
    [anon_sym_mapping] = ACTIONS(709),
    [anon_sym_bool] = ACTIONS(709),
    [anon_sym_string] = ACTIONS(709),
    [anon_sym_int] = ACTIONS(709),
    [anon_sym_int8] = ACTIONS(709),
    [anon_sym_int16] = ACTIONS(709),
    [anon_sym_int24] = ACTIONS(709),
    [anon_sym_int32] = ACTIONS(709),
    [anon_sym_int40] = ACTIONS(709),
    [anon_sym_int48] = ACTIONS(709),
    [anon_sym_int56] = ACTIONS(709),
    [anon_sym_int64] = ACTIONS(709),
    [anon_sym_int72] = ACTIONS(709),
    [anon_sym_int80] = ACTIONS(709),
    [anon_sym_int88] = ACTIONS(709),
    [anon_sym_int96] = ACTIONS(709),
    [anon_sym_int104] = ACTIONS(709),
    [anon_sym_int112] = ACTIONS(709),
    [anon_sym_int120] = ACTIONS(709),
    [anon_sym_int128] = ACTIONS(709),
    [anon_sym_int136] = ACTIONS(709),
    [anon_sym_int144] = ACTIONS(709),
    [anon_sym_int152] = ACTIONS(709),
    [anon_sym_int160] = ACTIONS(709),
    [anon_sym_int168] = ACTIONS(709),
    [anon_sym_int176] = ACTIONS(709),
    [anon_sym_int184] = ACTIONS(709),
    [anon_sym_int192] = ACTIONS(709),
    [anon_sym_int200] = ACTIONS(709),
    [anon_sym_int208] = ACTIONS(709),
    [anon_sym_int216] = ACTIONS(709),
    [anon_sym_int224] = ACTIONS(709),
    [anon_sym_int232] = ACTIONS(709),
    [anon_sym_int240] = ACTIONS(709),
    [anon_sym_int248] = ACTIONS(709),
    [anon_sym_int256] = ACTIONS(709),
    [anon_sym_uint] = ACTIONS(709),
    [anon_sym_uint8] = ACTIONS(709),
    [anon_sym_uint16] = ACTIONS(709),
    [anon_sym_uint24] = ACTIONS(709),
    [anon_sym_uint32] = ACTIONS(709),
    [anon_sym_uint40] = ACTIONS(709),
    [anon_sym_uint48] = ACTIONS(709),
    [anon_sym_uint56] = ACTIONS(709),
    [anon_sym_uint64] = ACTIONS(709),
    [anon_sym_uint72] = ACTIONS(709),
    [anon_sym_uint80] = ACTIONS(709),
    [anon_sym_uint88] = ACTIONS(709),
    [anon_sym_uint96] = ACTIONS(709),
    [anon_sym_uint104] = ACTIONS(709),
    [anon_sym_uint112] = ACTIONS(709),
    [anon_sym_uint120] = ACTIONS(709),
    [anon_sym_uint128] = ACTIONS(709),
    [anon_sym_uint136] = ACTIONS(709),
    [anon_sym_uint144] = ACTIONS(709),
    [anon_sym_uint152] = ACTIONS(709),
    [anon_sym_uint160] = ACTIONS(709),
    [anon_sym_uint168] = ACTIONS(709),
    [anon_sym_uint176] = ACTIONS(709),
    [anon_sym_uint184] = ACTIONS(709),
    [anon_sym_uint192] = ACTIONS(709),
    [anon_sym_uint200] = ACTIONS(709),
    [anon_sym_uint208] = ACTIONS(709),
    [anon_sym_uint216] = ACTIONS(709),
    [anon_sym_uint224] = ACTIONS(709),
    [anon_sym_uint232] = ACTIONS(709),
    [anon_sym_uint240] = ACTIONS(709),
    [anon_sym_uint248] = ACTIONS(709),
    [anon_sym_uint256] = ACTIONS(709),
    [anon_sym_bytes] = ACTIONS(709),
    [anon_sym_bytes1] = ACTIONS(709),
    [anon_sym_bytes2] = ACTIONS(709),
    [anon_sym_bytes3] = ACTIONS(709),
    [anon_sym_bytes4] = ACTIONS(709),
    [anon_sym_bytes5] = ACTIONS(709),
    [anon_sym_bytes6] = ACTIONS(709),
    [anon_sym_bytes7] = ACTIONS(709),
    [anon_sym_bytes8] = ACTIONS(709),
    [anon_sym_bytes9] = ACTIONS(709),
    [anon_sym_bytes10] = ACTIONS(709),
    [anon_sym_bytes11] = ACTIONS(709),
    [anon_sym_bytes12] = ACTIONS(709),
    [anon_sym_bytes13] = ACTIONS(709),
    [anon_sym_bytes14] = ACTIONS(709),
    [anon_sym_bytes15] = ACTIONS(709),
    [anon_sym_bytes16] = ACTIONS(709),
    [anon_sym_bytes17] = ACTIONS(709),
    [anon_sym_bytes18] = ACTIONS(709),
    [anon_sym_bytes19] = ACTIONS(709),
    [anon_sym_bytes20] = ACTIONS(709),
    [anon_sym_bytes21] = ACTIONS(709),
    [anon_sym_bytes22] = ACTIONS(709),
    [anon_sym_bytes23] = ACTIONS(709),
    [anon_sym_bytes24] = ACTIONS(709),
    [anon_sym_bytes25] = ACTIONS(709),
    [anon_sym_bytes26] = ACTIONS(709),
    [anon_sym_bytes27] = ACTIONS(709),
    [anon_sym_bytes28] = ACTIONS(709),
    [anon_sym_bytes29] = ACTIONS(709),
    [anon_sym_bytes30] = ACTIONS(709),
    [anon_sym_bytes31] = ACTIONS(709),
    [anon_sym_bytes32] = ACTIONS(709),
    [anon_sym_fixed] = ACTIONS(709),
    [aux_sym__fixed_token1] = ACTIONS(709),
    [anon_sym_ufixed] = ACTIONS(709),
    [aux_sym__ufixed_token1] = ACTIONS(709),
    [sym_comment] = ACTIONS(3),
  },
  [178] = {
    [sym_identifier] = ACTIONS(735),
    [anon_sym_RBRACE] = ACTIONS(737),
    [anon_sym_type] = ACTIONS(735),
    [anon_sym_error] = ACTIONS(735),
    [anon_sym_struct] = ACTIONS(735),
    [anon_sym_enum] = ACTIONS(735),
    [anon_sym_event] = ACTIONS(735),
    [anon_sym_using] = ACTIONS(735),
    [anon_sym_function] = ACTIONS(735),
    [anon_sym_byte] = ACTIONS(735),
    [anon_sym_address] = ACTIONS(735),
    [anon_sym_var] = ACTIONS(735),
    [anon_sym_modifier] = ACTIONS(735),
    [anon_sym_constructor] = ACTIONS(735),
    [anon_sym_fallback] = ACTIONS(735),
    [anon_sym_receive] = ACTIONS(735),
    [anon_sym_mapping] = ACTIONS(735),
    [anon_sym_bool] = ACTIONS(735),
    [anon_sym_string] = ACTIONS(735),
    [anon_sym_int] = ACTIONS(735),
    [anon_sym_int8] = ACTIONS(735),
    [anon_sym_int16] = ACTIONS(735),
    [anon_sym_int24] = ACTIONS(735),
    [anon_sym_int32] = ACTIONS(735),
    [anon_sym_int40] = ACTIONS(735),
    [anon_sym_int48] = ACTIONS(735),
    [anon_sym_int56] = ACTIONS(735),
    [anon_sym_int64] = ACTIONS(735),
    [anon_sym_int72] = ACTIONS(735),
    [anon_sym_int80] = ACTIONS(735),
    [anon_sym_int88] = ACTIONS(735),
    [anon_sym_int96] = ACTIONS(735),
    [anon_sym_int104] = ACTIONS(735),
    [anon_sym_int112] = ACTIONS(735),
    [anon_sym_int120] = ACTIONS(735),
    [anon_sym_int128] = ACTIONS(735),
    [anon_sym_int136] = ACTIONS(735),
    [anon_sym_int144] = ACTIONS(735),
    [anon_sym_int152] = ACTIONS(735),
    [anon_sym_int160] = ACTIONS(735),
    [anon_sym_int168] = ACTIONS(735),
    [anon_sym_int176] = ACTIONS(735),
    [anon_sym_int184] = ACTIONS(735),
    [anon_sym_int192] = ACTIONS(735),
    [anon_sym_int200] = ACTIONS(735),
    [anon_sym_int208] = ACTIONS(735),
    [anon_sym_int216] = ACTIONS(735),
    [anon_sym_int224] = ACTIONS(735),
    [anon_sym_int232] = ACTIONS(735),
    [anon_sym_int240] = ACTIONS(735),
    [anon_sym_int248] = ACTIONS(735),
    [anon_sym_int256] = ACTIONS(735),
    [anon_sym_uint] = ACTIONS(735),
    [anon_sym_uint8] = ACTIONS(735),
    [anon_sym_uint16] = ACTIONS(735),
    [anon_sym_uint24] = ACTIONS(735),
    [anon_sym_uint32] = ACTIONS(735),
    [anon_sym_uint40] = ACTIONS(735),
    [anon_sym_uint48] = ACTIONS(735),
    [anon_sym_uint56] = ACTIONS(735),
    [anon_sym_uint64] = ACTIONS(735),
    [anon_sym_uint72] = ACTIONS(735),
    [anon_sym_uint80] = ACTIONS(735),
    [anon_sym_uint88] = ACTIONS(735),
    [anon_sym_uint96] = ACTIONS(735),
    [anon_sym_uint104] = ACTIONS(735),
    [anon_sym_uint112] = ACTIONS(735),
    [anon_sym_uint120] = ACTIONS(735),
    [anon_sym_uint128] = ACTIONS(735),
    [anon_sym_uint136] = ACTIONS(735),
    [anon_sym_uint144] = ACTIONS(735),
    [anon_sym_uint152] = ACTIONS(735),
    [anon_sym_uint160] = ACTIONS(735),
    [anon_sym_uint168] = ACTIONS(735),
    [anon_sym_uint176] = ACTIONS(735),
    [anon_sym_uint184] = ACTIONS(735),
    [anon_sym_uint192] = ACTIONS(735),
    [anon_sym_uint200] = ACTIONS(735),
    [anon_sym_uint208] = ACTIONS(735),
    [anon_sym_uint216] = ACTIONS(735),
    [anon_sym_uint224] = ACTIONS(735),
    [anon_sym_uint232] = ACTIONS(735),
    [anon_sym_uint240] = ACTIONS(735),
    [anon_sym_uint248] = ACTIONS(735),
    [anon_sym_uint256] = ACTIONS(735),
    [anon_sym_bytes] = ACTIONS(735),
    [anon_sym_bytes1] = ACTIONS(735),
    [anon_sym_bytes2] = ACTIONS(735),
    [anon_sym_bytes3] = ACTIONS(735),
    [anon_sym_bytes4] = ACTIONS(735),
    [anon_sym_bytes5] = ACTIONS(735),
    [anon_sym_bytes6] = ACTIONS(735),
    [anon_sym_bytes7] = ACTIONS(735),
    [anon_sym_bytes8] = ACTIONS(735),
    [anon_sym_bytes9] = ACTIONS(735),
    [anon_sym_bytes10] = ACTIONS(735),
    [anon_sym_bytes11] = ACTIONS(735),
    [anon_sym_bytes12] = ACTIONS(735),
    [anon_sym_bytes13] = ACTIONS(735),
    [anon_sym_bytes14] = ACTIONS(735),
    [anon_sym_bytes15] = ACTIONS(735),
    [anon_sym_bytes16] = ACTIONS(735),
    [anon_sym_bytes17] = ACTIONS(735),
    [anon_sym_bytes18] = ACTIONS(735),
    [anon_sym_bytes19] = ACTIONS(735),
    [anon_sym_bytes20] = ACTIONS(735),
    [anon_sym_bytes21] = ACTIONS(735),
    [anon_sym_bytes22] = ACTIONS(735),
    [anon_sym_bytes23] = ACTIONS(735),
    [anon_sym_bytes24] = ACTIONS(735),
    [anon_sym_bytes25] = ACTIONS(735),
    [anon_sym_bytes26] = ACTIONS(735),
    [anon_sym_bytes27] = ACTIONS(735),
    [anon_sym_bytes28] = ACTIONS(735),
    [anon_sym_bytes29] = ACTIONS(735),
    [anon_sym_bytes30] = ACTIONS(735),
    [anon_sym_bytes31] = ACTIONS(735),
    [anon_sym_bytes32] = ACTIONS(735),
    [anon_sym_fixed] = ACTIONS(735),
    [aux_sym__fixed_token1] = ACTIONS(735),
    [anon_sym_ufixed] = ACTIONS(735),
    [aux_sym__ufixed_token1] = ACTIONS(735),
    [sym_comment] = ACTIONS(3),
  },
  [179] = {
    [sym_identifier] = ACTIONS(739),
    [anon_sym_RBRACE] = ACTIONS(741),
    [anon_sym_type] = ACTIONS(739),
    [anon_sym_error] = ACTIONS(739),
    [anon_sym_struct] = ACTIONS(739),
    [anon_sym_enum] = ACTIONS(739),
    [anon_sym_event] = ACTIONS(739),
    [anon_sym_using] = ACTIONS(739),
    [anon_sym_function] = ACTIONS(739),
    [anon_sym_byte] = ACTIONS(739),
    [anon_sym_address] = ACTIONS(739),
    [anon_sym_var] = ACTIONS(739),
    [anon_sym_modifier] = ACTIONS(739),
    [anon_sym_constructor] = ACTIONS(739),
    [anon_sym_fallback] = ACTIONS(739),
    [anon_sym_receive] = ACTIONS(739),
    [anon_sym_mapping] = ACTIONS(739),
    [anon_sym_bool] = ACTIONS(739),
    [anon_sym_string] = ACTIONS(739),
    [anon_sym_int] = ACTIONS(739),
    [anon_sym_int8] = ACTIONS(739),
    [anon_sym_int16] = ACTIONS(739),
    [anon_sym_int24] = ACTIONS(739),
    [anon_sym_int32] = ACTIONS(739),
    [anon_sym_int40] = ACTIONS(739),
    [anon_sym_int48] = ACTIONS(739),
    [anon_sym_int56] = ACTIONS(739),
    [anon_sym_int64] = ACTIONS(739),
    [anon_sym_int72] = ACTIONS(739),
    [anon_sym_int80] = ACTIONS(739),
    [anon_sym_int88] = ACTIONS(739),
    [anon_sym_int96] = ACTIONS(739),
    [anon_sym_int104] = ACTIONS(739),
    [anon_sym_int112] = ACTIONS(739),
    [anon_sym_int120] = ACTIONS(739),
    [anon_sym_int128] = ACTIONS(739),
    [anon_sym_int136] = ACTIONS(739),
    [anon_sym_int144] = ACTIONS(739),
    [anon_sym_int152] = ACTIONS(739),
    [anon_sym_int160] = ACTIONS(739),
    [anon_sym_int168] = ACTIONS(739),
    [anon_sym_int176] = ACTIONS(739),
    [anon_sym_int184] = ACTIONS(739),
    [anon_sym_int192] = ACTIONS(739),
    [anon_sym_int200] = ACTIONS(739),
    [anon_sym_int208] = ACTIONS(739),
    [anon_sym_int216] = ACTIONS(739),
    [anon_sym_int224] = ACTIONS(739),
    [anon_sym_int232] = ACTIONS(739),
    [anon_sym_int240] = ACTIONS(739),
    [anon_sym_int248] = ACTIONS(739),
    [anon_sym_int256] = ACTIONS(739),
    [anon_sym_uint] = ACTIONS(739),
    [anon_sym_uint8] = ACTIONS(739),
    [anon_sym_uint16] = ACTIONS(739),
    [anon_sym_uint24] = ACTIONS(739),
    [anon_sym_uint32] = ACTIONS(739),
    [anon_sym_uint40] = ACTIONS(739),
    [anon_sym_uint48] = ACTIONS(739),
    [anon_sym_uint56] = ACTIONS(739),
    [anon_sym_uint64] = ACTIONS(739),
    [anon_sym_uint72] = ACTIONS(739),
    [anon_sym_uint80] = ACTIONS(739),
    [anon_sym_uint88] = ACTIONS(739),
    [anon_sym_uint96] = ACTIONS(739),
    [anon_sym_uint104] = ACTIONS(739),
    [anon_sym_uint112] = ACTIONS(739),
    [anon_sym_uint120] = ACTIONS(739),
    [anon_sym_uint128] = ACTIONS(739),
    [anon_sym_uint136] = ACTIONS(739),
    [anon_sym_uint144] = ACTIONS(739),
    [anon_sym_uint152] = ACTIONS(739),
    [anon_sym_uint160] = ACTIONS(739),
    [anon_sym_uint168] = ACTIONS(739),
    [anon_sym_uint176] = ACTIONS(739),
    [anon_sym_uint184] = ACTIONS(739),
    [anon_sym_uint192] = ACTIONS(739),
    [anon_sym_uint200] = ACTIONS(739),
    [anon_sym_uint208] = ACTIONS(739),
    [anon_sym_uint216] = ACTIONS(739),
    [anon_sym_uint224] = ACTIONS(739),
    [anon_sym_uint232] = ACTIONS(739),
    [anon_sym_uint240] = ACTIONS(739),
    [anon_sym_uint248] = ACTIONS(739),
    [anon_sym_uint256] = ACTIONS(739),
    [anon_sym_bytes] = ACTIONS(739),
    [anon_sym_bytes1] = ACTIONS(739),
    [anon_sym_bytes2] = ACTIONS(739),
    [anon_sym_bytes3] = ACTIONS(739),
    [anon_sym_bytes4] = ACTIONS(739),
    [anon_sym_bytes5] = ACTIONS(739),
    [anon_sym_bytes6] = ACTIONS(739),
    [anon_sym_bytes7] = ACTIONS(739),
    [anon_sym_bytes8] = ACTIONS(739),
    [anon_sym_bytes9] = ACTIONS(739),
    [anon_sym_bytes10] = ACTIONS(739),
    [anon_sym_bytes11] = ACTIONS(739),
    [anon_sym_bytes12] = ACTIONS(739),
    [anon_sym_bytes13] = ACTIONS(739),
    [anon_sym_bytes14] = ACTIONS(739),
    [anon_sym_bytes15] = ACTIONS(739),
    [anon_sym_bytes16] = ACTIONS(739),
    [anon_sym_bytes17] = ACTIONS(739),
    [anon_sym_bytes18] = ACTIONS(739),
    [anon_sym_bytes19] = ACTIONS(739),
    [anon_sym_bytes20] = ACTIONS(739),
    [anon_sym_bytes21] = ACTIONS(739),
    [anon_sym_bytes22] = ACTIONS(739),
    [anon_sym_bytes23] = ACTIONS(739),
    [anon_sym_bytes24] = ACTIONS(739),
    [anon_sym_bytes25] = ACTIONS(739),
    [anon_sym_bytes26] = ACTIONS(739),
    [anon_sym_bytes27] = ACTIONS(739),
    [anon_sym_bytes28] = ACTIONS(739),
    [anon_sym_bytes29] = ACTIONS(739),
    [anon_sym_bytes30] = ACTIONS(739),
    [anon_sym_bytes31] = ACTIONS(739),
    [anon_sym_bytes32] = ACTIONS(739),
    [anon_sym_fixed] = ACTIONS(739),
    [aux_sym__fixed_token1] = ACTIONS(739),
    [anon_sym_ufixed] = ACTIONS(739),
    [aux_sym__ufixed_token1] = ACTIONS(739),
    [sym_comment] = ACTIONS(3),
  },
  [180] = {
    [sym_identifier] = ACTIONS(743),
    [anon_sym_RBRACE] = ACTIONS(745),
    [anon_sym_type] = ACTIONS(743),
    [anon_sym_error] = ACTIONS(743),
    [anon_sym_struct] = ACTIONS(743),
    [anon_sym_enum] = ACTIONS(743),
    [anon_sym_event] = ACTIONS(743),
    [anon_sym_using] = ACTIONS(743),
    [anon_sym_function] = ACTIONS(743),
    [anon_sym_byte] = ACTIONS(743),
    [anon_sym_address] = ACTIONS(743),
    [anon_sym_var] = ACTIONS(743),
    [anon_sym_modifier] = ACTIONS(743),
    [anon_sym_constructor] = ACTIONS(743),
    [anon_sym_fallback] = ACTIONS(743),
    [anon_sym_receive] = ACTIONS(743),
    [anon_sym_mapping] = ACTIONS(743),
    [anon_sym_bool] = ACTIONS(743),
    [anon_sym_string] = ACTIONS(743),
    [anon_sym_int] = ACTIONS(743),
    [anon_sym_int8] = ACTIONS(743),
    [anon_sym_int16] = ACTIONS(743),
    [anon_sym_int24] = ACTIONS(743),
    [anon_sym_int32] = ACTIONS(743),
    [anon_sym_int40] = ACTIONS(743),
    [anon_sym_int48] = ACTIONS(743),
    [anon_sym_int56] = ACTIONS(743),
    [anon_sym_int64] = ACTIONS(743),
    [anon_sym_int72] = ACTIONS(743),
    [anon_sym_int80] = ACTIONS(743),
    [anon_sym_int88] = ACTIONS(743),
    [anon_sym_int96] = ACTIONS(743),
    [anon_sym_int104] = ACTIONS(743),
    [anon_sym_int112] = ACTIONS(743),
    [anon_sym_int120] = ACTIONS(743),
    [anon_sym_int128] = ACTIONS(743),
    [anon_sym_int136] = ACTIONS(743),
    [anon_sym_int144] = ACTIONS(743),
    [anon_sym_int152] = ACTIONS(743),
    [anon_sym_int160] = ACTIONS(743),
    [anon_sym_int168] = ACTIONS(743),
    [anon_sym_int176] = ACTIONS(743),
    [anon_sym_int184] = ACTIONS(743),
    [anon_sym_int192] = ACTIONS(743),
    [anon_sym_int200] = ACTIONS(743),
    [anon_sym_int208] = ACTIONS(743),
    [anon_sym_int216] = ACTIONS(743),
    [anon_sym_int224] = ACTIONS(743),
    [anon_sym_int232] = ACTIONS(743),
    [anon_sym_int240] = ACTIONS(743),
    [anon_sym_int248] = ACTIONS(743),
    [anon_sym_int256] = ACTIONS(743),
    [anon_sym_uint] = ACTIONS(743),
    [anon_sym_uint8] = ACTIONS(743),
    [anon_sym_uint16] = ACTIONS(743),
    [anon_sym_uint24] = ACTIONS(743),
    [anon_sym_uint32] = ACTIONS(743),
    [anon_sym_uint40] = ACTIONS(743),
    [anon_sym_uint48] = ACTIONS(743),
    [anon_sym_uint56] = ACTIONS(743),
    [anon_sym_uint64] = ACTIONS(743),
    [anon_sym_uint72] = ACTIONS(743),
    [anon_sym_uint80] = ACTIONS(743),
    [anon_sym_uint88] = ACTIONS(743),
    [anon_sym_uint96] = ACTIONS(743),
    [anon_sym_uint104] = ACTIONS(743),
    [anon_sym_uint112] = ACTIONS(743),
    [anon_sym_uint120] = ACTIONS(743),
    [anon_sym_uint128] = ACTIONS(743),
    [anon_sym_uint136] = ACTIONS(743),
    [anon_sym_uint144] = ACTIONS(743),
    [anon_sym_uint152] = ACTIONS(743),
    [anon_sym_uint160] = ACTIONS(743),
    [anon_sym_uint168] = ACTIONS(743),
    [anon_sym_uint176] = ACTIONS(743),
    [anon_sym_uint184] = ACTIONS(743),
    [anon_sym_uint192] = ACTIONS(743),
    [anon_sym_uint200] = ACTIONS(743),
    [anon_sym_uint208] = ACTIONS(743),
    [anon_sym_uint216] = ACTIONS(743),
    [anon_sym_uint224] = ACTIONS(743),
    [anon_sym_uint232] = ACTIONS(743),
    [anon_sym_uint240] = ACTIONS(743),
    [anon_sym_uint248] = ACTIONS(743),
    [anon_sym_uint256] = ACTIONS(743),
    [anon_sym_bytes] = ACTIONS(743),
    [anon_sym_bytes1] = ACTIONS(743),
    [anon_sym_bytes2] = ACTIONS(743),
    [anon_sym_bytes3] = ACTIONS(743),
    [anon_sym_bytes4] = ACTIONS(743),
    [anon_sym_bytes5] = ACTIONS(743),
    [anon_sym_bytes6] = ACTIONS(743),
    [anon_sym_bytes7] = ACTIONS(743),
    [anon_sym_bytes8] = ACTIONS(743),
    [anon_sym_bytes9] = ACTIONS(743),
    [anon_sym_bytes10] = ACTIONS(743),
    [anon_sym_bytes11] = ACTIONS(743),
    [anon_sym_bytes12] = ACTIONS(743),
    [anon_sym_bytes13] = ACTIONS(743),
    [anon_sym_bytes14] = ACTIONS(743),
    [anon_sym_bytes15] = ACTIONS(743),
    [anon_sym_bytes16] = ACTIONS(743),
    [anon_sym_bytes17] = ACTIONS(743),
    [anon_sym_bytes18] = ACTIONS(743),
    [anon_sym_bytes19] = ACTIONS(743),
    [anon_sym_bytes20] = ACTIONS(743),
    [anon_sym_bytes21] = ACTIONS(743),
    [anon_sym_bytes22] = ACTIONS(743),
    [anon_sym_bytes23] = ACTIONS(743),
    [anon_sym_bytes24] = ACTIONS(743),
    [anon_sym_bytes25] = ACTIONS(743),
    [anon_sym_bytes26] = ACTIONS(743),
    [anon_sym_bytes27] = ACTIONS(743),
    [anon_sym_bytes28] = ACTIONS(743),
    [anon_sym_bytes29] = ACTIONS(743),
    [anon_sym_bytes30] = ACTIONS(743),
    [anon_sym_bytes31] = ACTIONS(743),
    [anon_sym_bytes32] = ACTIONS(743),
    [anon_sym_fixed] = ACTIONS(743),
    [aux_sym__fixed_token1] = ACTIONS(743),
    [anon_sym_ufixed] = ACTIONS(743),
    [aux_sym__ufixed_token1] = ACTIONS(743),
    [sym_comment] = ACTIONS(3),
  },
  [181] = {
    [sym_identifier] = ACTIONS(729),
    [anon_sym_RBRACE] = ACTIONS(727),
    [anon_sym_type] = ACTIONS(729),
    [anon_sym_error] = ACTIONS(729),
    [anon_sym_struct] = ACTIONS(729),
    [anon_sym_enum] = ACTIONS(729),
    [anon_sym_event] = ACTIONS(729),
    [anon_sym_using] = ACTIONS(729),
    [anon_sym_function] = ACTIONS(729),
    [anon_sym_byte] = ACTIONS(729),
    [anon_sym_address] = ACTIONS(729),
    [anon_sym_var] = ACTIONS(729),
    [anon_sym_modifier] = ACTIONS(729),
    [anon_sym_constructor] = ACTIONS(729),
    [anon_sym_fallback] = ACTIONS(729),
    [anon_sym_receive] = ACTIONS(729),
    [anon_sym_mapping] = ACTIONS(729),
    [anon_sym_bool] = ACTIONS(729),
    [anon_sym_string] = ACTIONS(729),
    [anon_sym_int] = ACTIONS(729),
    [anon_sym_int8] = ACTIONS(729),
    [anon_sym_int16] = ACTIONS(729),
    [anon_sym_int24] = ACTIONS(729),
    [anon_sym_int32] = ACTIONS(729),
    [anon_sym_int40] = ACTIONS(729),
    [anon_sym_int48] = ACTIONS(729),
    [anon_sym_int56] = ACTIONS(729),
    [anon_sym_int64] = ACTIONS(729),
    [anon_sym_int72] = ACTIONS(729),
    [anon_sym_int80] = ACTIONS(729),
    [anon_sym_int88] = ACTIONS(729),
    [anon_sym_int96] = ACTIONS(729),
    [anon_sym_int104] = ACTIONS(729),
    [anon_sym_int112] = ACTIONS(729),
    [anon_sym_int120] = ACTIONS(729),
    [anon_sym_int128] = ACTIONS(729),
    [anon_sym_int136] = ACTIONS(729),
    [anon_sym_int144] = ACTIONS(729),
    [anon_sym_int152] = ACTIONS(729),
    [anon_sym_int160] = ACTIONS(729),
    [anon_sym_int168] = ACTIONS(729),
    [anon_sym_int176] = ACTIONS(729),
    [anon_sym_int184] = ACTIONS(729),
    [anon_sym_int192] = ACTIONS(729),
    [anon_sym_int200] = ACTIONS(729),
    [anon_sym_int208] = ACTIONS(729),
    [anon_sym_int216] = ACTIONS(729),
    [anon_sym_int224] = ACTIONS(729),
    [anon_sym_int232] = ACTIONS(729),
    [anon_sym_int240] = ACTIONS(729),
    [anon_sym_int248] = ACTIONS(729),
    [anon_sym_int256] = ACTIONS(729),
    [anon_sym_uint] = ACTIONS(729),
    [anon_sym_uint8] = ACTIONS(729),
    [anon_sym_uint16] = ACTIONS(729),
    [anon_sym_uint24] = ACTIONS(729),
    [anon_sym_uint32] = ACTIONS(729),
    [anon_sym_uint40] = ACTIONS(729),
    [anon_sym_uint48] = ACTIONS(729),
    [anon_sym_uint56] = ACTIONS(729),
    [anon_sym_uint64] = ACTIONS(729),
    [anon_sym_uint72] = ACTIONS(729),
    [anon_sym_uint80] = ACTIONS(729),
    [anon_sym_uint88] = ACTIONS(729),
    [anon_sym_uint96] = ACTIONS(729),
    [anon_sym_uint104] = ACTIONS(729),
    [anon_sym_uint112] = ACTIONS(729),
    [anon_sym_uint120] = ACTIONS(729),
    [anon_sym_uint128] = ACTIONS(729),
    [anon_sym_uint136] = ACTIONS(729),
    [anon_sym_uint144] = ACTIONS(729),
    [anon_sym_uint152] = ACTIONS(729),
    [anon_sym_uint160] = ACTIONS(729),
    [anon_sym_uint168] = ACTIONS(729),
    [anon_sym_uint176] = ACTIONS(729),
    [anon_sym_uint184] = ACTIONS(729),
    [anon_sym_uint192] = ACTIONS(729),
    [anon_sym_uint200] = ACTIONS(729),
    [anon_sym_uint208] = ACTIONS(729),
    [anon_sym_uint216] = ACTIONS(729),
    [anon_sym_uint224] = ACTIONS(729),
    [anon_sym_uint232] = ACTIONS(729),
    [anon_sym_uint240] = ACTIONS(729),
    [anon_sym_uint248] = ACTIONS(729),
    [anon_sym_uint256] = ACTIONS(729),
    [anon_sym_bytes] = ACTIONS(729),
    [anon_sym_bytes1] = ACTIONS(729),
    [anon_sym_bytes2] = ACTIONS(729),
    [anon_sym_bytes3] = ACTIONS(729),
    [anon_sym_bytes4] = ACTIONS(729),
    [anon_sym_bytes5] = ACTIONS(729),
    [anon_sym_bytes6] = ACTIONS(729),
    [anon_sym_bytes7] = ACTIONS(729),
    [anon_sym_bytes8] = ACTIONS(729),
    [anon_sym_bytes9] = ACTIONS(729),
    [anon_sym_bytes10] = ACTIONS(729),
    [anon_sym_bytes11] = ACTIONS(729),
    [anon_sym_bytes12] = ACTIONS(729),
    [anon_sym_bytes13] = ACTIONS(729),
    [anon_sym_bytes14] = ACTIONS(729),
    [anon_sym_bytes15] = ACTIONS(729),
    [anon_sym_bytes16] = ACTIONS(729),
    [anon_sym_bytes17] = ACTIONS(729),
    [anon_sym_bytes18] = ACTIONS(729),
    [anon_sym_bytes19] = ACTIONS(729),
    [anon_sym_bytes20] = ACTIONS(729),
    [anon_sym_bytes21] = ACTIONS(729),
    [anon_sym_bytes22] = ACTIONS(729),
    [anon_sym_bytes23] = ACTIONS(729),
    [anon_sym_bytes24] = ACTIONS(729),
    [anon_sym_bytes25] = ACTIONS(729),
    [anon_sym_bytes26] = ACTIONS(729),
    [anon_sym_bytes27] = ACTIONS(729),
    [anon_sym_bytes28] = ACTIONS(729),
    [anon_sym_bytes29] = ACTIONS(729),
    [anon_sym_bytes30] = ACTIONS(729),
    [anon_sym_bytes31] = ACTIONS(729),
    [anon_sym_bytes32] = ACTIONS(729),
    [anon_sym_fixed] = ACTIONS(729),
    [aux_sym__fixed_token1] = ACTIONS(729),
    [anon_sym_ufixed] = ACTIONS(729),
    [aux_sym__ufixed_token1] = ACTIONS(729),
    [sym_comment] = ACTIONS(3),
  },
  [182] = {
    [sym_identifier] = ACTIONS(601),
    [anon_sym_RBRACE] = ACTIONS(599),
    [anon_sym_type] = ACTIONS(601),
    [anon_sym_error] = ACTIONS(601),
    [anon_sym_struct] = ACTIONS(601),
    [anon_sym_enum] = ACTIONS(601),
    [anon_sym_event] = ACTIONS(601),
    [anon_sym_using] = ACTIONS(601),
    [anon_sym_function] = ACTIONS(601),
    [anon_sym_byte] = ACTIONS(601),
    [anon_sym_address] = ACTIONS(601),
    [anon_sym_var] = ACTIONS(601),
    [anon_sym_modifier] = ACTIONS(601),
    [anon_sym_constructor] = ACTIONS(601),
    [anon_sym_fallback] = ACTIONS(601),
    [anon_sym_receive] = ACTIONS(601),
    [anon_sym_mapping] = ACTIONS(601),
    [anon_sym_bool] = ACTIONS(601),
    [anon_sym_string] = ACTIONS(601),
    [anon_sym_int] = ACTIONS(601),
    [anon_sym_int8] = ACTIONS(601),
    [anon_sym_int16] = ACTIONS(601),
    [anon_sym_int24] = ACTIONS(601),
    [anon_sym_int32] = ACTIONS(601),
    [anon_sym_int40] = ACTIONS(601),
    [anon_sym_int48] = ACTIONS(601),
    [anon_sym_int56] = ACTIONS(601),
    [anon_sym_int64] = ACTIONS(601),
    [anon_sym_int72] = ACTIONS(601),
    [anon_sym_int80] = ACTIONS(601),
    [anon_sym_int88] = ACTIONS(601),
    [anon_sym_int96] = ACTIONS(601),
    [anon_sym_int104] = ACTIONS(601),
    [anon_sym_int112] = ACTIONS(601),
    [anon_sym_int120] = ACTIONS(601),
    [anon_sym_int128] = ACTIONS(601),
    [anon_sym_int136] = ACTIONS(601),
    [anon_sym_int144] = ACTIONS(601),
    [anon_sym_int152] = ACTIONS(601),
    [anon_sym_int160] = ACTIONS(601),
    [anon_sym_int168] = ACTIONS(601),
    [anon_sym_int176] = ACTIONS(601),
    [anon_sym_int184] = ACTIONS(601),
    [anon_sym_int192] = ACTIONS(601),
    [anon_sym_int200] = ACTIONS(601),
    [anon_sym_int208] = ACTIONS(601),
    [anon_sym_int216] = ACTIONS(601),
    [anon_sym_int224] = ACTIONS(601),
    [anon_sym_int232] = ACTIONS(601),
    [anon_sym_int240] = ACTIONS(601),
    [anon_sym_int248] = ACTIONS(601),
    [anon_sym_int256] = ACTIONS(601),
    [anon_sym_uint] = ACTIONS(601),
    [anon_sym_uint8] = ACTIONS(601),
    [anon_sym_uint16] = ACTIONS(601),
    [anon_sym_uint24] = ACTIONS(601),
    [anon_sym_uint32] = ACTIONS(601),
    [anon_sym_uint40] = ACTIONS(601),
    [anon_sym_uint48] = ACTIONS(601),
    [anon_sym_uint56] = ACTIONS(601),
    [anon_sym_uint64] = ACTIONS(601),
    [anon_sym_uint72] = ACTIONS(601),
    [anon_sym_uint80] = ACTIONS(601),
    [anon_sym_uint88] = ACTIONS(601),
    [anon_sym_uint96] = ACTIONS(601),
    [anon_sym_uint104] = ACTIONS(601),
    [anon_sym_uint112] = ACTIONS(601),
    [anon_sym_uint120] = ACTIONS(601),
    [anon_sym_uint128] = ACTIONS(601),
    [anon_sym_uint136] = ACTIONS(601),
    [anon_sym_uint144] = ACTIONS(601),
    [anon_sym_uint152] = ACTIONS(601),
    [anon_sym_uint160] = ACTIONS(601),
    [anon_sym_uint168] = ACTIONS(601),
    [anon_sym_uint176] = ACTIONS(601),
    [anon_sym_uint184] = ACTIONS(601),
    [anon_sym_uint192] = ACTIONS(601),
    [anon_sym_uint200] = ACTIONS(601),
    [anon_sym_uint208] = ACTIONS(601),
    [anon_sym_uint216] = ACTIONS(601),
    [anon_sym_uint224] = ACTIONS(601),
    [anon_sym_uint232] = ACTIONS(601),
    [anon_sym_uint240] = ACTIONS(601),
    [anon_sym_uint248] = ACTIONS(601),
    [anon_sym_uint256] = ACTIONS(601),
    [anon_sym_bytes] = ACTIONS(601),
    [anon_sym_bytes1] = ACTIONS(601),
    [anon_sym_bytes2] = ACTIONS(601),
    [anon_sym_bytes3] = ACTIONS(601),
    [anon_sym_bytes4] = ACTIONS(601),
    [anon_sym_bytes5] = ACTIONS(601),
    [anon_sym_bytes6] = ACTIONS(601),
    [anon_sym_bytes7] = ACTIONS(601),
    [anon_sym_bytes8] = ACTIONS(601),
    [anon_sym_bytes9] = ACTIONS(601),
    [anon_sym_bytes10] = ACTIONS(601),
    [anon_sym_bytes11] = ACTIONS(601),
    [anon_sym_bytes12] = ACTIONS(601),
    [anon_sym_bytes13] = ACTIONS(601),
    [anon_sym_bytes14] = ACTIONS(601),
    [anon_sym_bytes15] = ACTIONS(601),
    [anon_sym_bytes16] = ACTIONS(601),
    [anon_sym_bytes17] = ACTIONS(601),
    [anon_sym_bytes18] = ACTIONS(601),
    [anon_sym_bytes19] = ACTIONS(601),
    [anon_sym_bytes20] = ACTIONS(601),
    [anon_sym_bytes21] = ACTIONS(601),
    [anon_sym_bytes22] = ACTIONS(601),
    [anon_sym_bytes23] = ACTIONS(601),
    [anon_sym_bytes24] = ACTIONS(601),
    [anon_sym_bytes25] = ACTIONS(601),
    [anon_sym_bytes26] = ACTIONS(601),
    [anon_sym_bytes27] = ACTIONS(601),
    [anon_sym_bytes28] = ACTIONS(601),
    [anon_sym_bytes29] = ACTIONS(601),
    [anon_sym_bytes30] = ACTIONS(601),
    [anon_sym_bytes31] = ACTIONS(601),
    [anon_sym_bytes32] = ACTIONS(601),
    [anon_sym_fixed] = ACTIONS(601),
    [aux_sym__fixed_token1] = ACTIONS(601),
    [anon_sym_ufixed] = ACTIONS(601),
    [aux_sym__ufixed_token1] = ACTIONS(601),
    [sym_comment] = ACTIONS(3),
  },
  [183] = {
    [ts_builtin_sym_end] = ACTIONS(741),
    [sym_identifier] = ACTIONS(739),
    [anon_sym_pragma] = ACTIONS(739),
    [anon_sym_import] = ACTIONS(739),
    [anon_sym_type] = ACTIONS(739),
    [anon_sym_abstract] = ACTIONS(739),
    [anon_sym_contract] = ACTIONS(739),
    [anon_sym_error] = ACTIONS(739),
    [anon_sym_interface] = ACTIONS(739),
    [anon_sym_library] = ACTIONS(739),
    [anon_sym_struct] = ACTIONS(739),
    [anon_sym_enum] = ACTIONS(739),
    [anon_sym_function] = ACTIONS(739),
    [anon_sym_byte] = ACTIONS(739),
    [anon_sym_address] = ACTIONS(739),
    [anon_sym_var] = ACTIONS(739),
    [anon_sym_mapping] = ACTIONS(739),
    [anon_sym_bool] = ACTIONS(739),
    [anon_sym_string] = ACTIONS(739),
    [anon_sym_int] = ACTIONS(739),
    [anon_sym_int8] = ACTIONS(739),
    [anon_sym_int16] = ACTIONS(739),
    [anon_sym_int24] = ACTIONS(739),
    [anon_sym_int32] = ACTIONS(739),
    [anon_sym_int40] = ACTIONS(739),
    [anon_sym_int48] = ACTIONS(739),
    [anon_sym_int56] = ACTIONS(739),
    [anon_sym_int64] = ACTIONS(739),
    [anon_sym_int72] = ACTIONS(739),
    [anon_sym_int80] = ACTIONS(739),
    [anon_sym_int88] = ACTIONS(739),
    [anon_sym_int96] = ACTIONS(739),
    [anon_sym_int104] = ACTIONS(739),
    [anon_sym_int112] = ACTIONS(739),
    [anon_sym_int120] = ACTIONS(739),
    [anon_sym_int128] = ACTIONS(739),
    [anon_sym_int136] = ACTIONS(739),
    [anon_sym_int144] = ACTIONS(739),
    [anon_sym_int152] = ACTIONS(739),
    [anon_sym_int160] = ACTIONS(739),
    [anon_sym_int168] = ACTIONS(739),
    [anon_sym_int176] = ACTIONS(739),
    [anon_sym_int184] = ACTIONS(739),
    [anon_sym_int192] = ACTIONS(739),
    [anon_sym_int200] = ACTIONS(739),
    [anon_sym_int208] = ACTIONS(739),
    [anon_sym_int216] = ACTIONS(739),
    [anon_sym_int224] = ACTIONS(739),
    [anon_sym_int232] = ACTIONS(739),
    [anon_sym_int240] = ACTIONS(739),
    [anon_sym_int248] = ACTIONS(739),
    [anon_sym_int256] = ACTIONS(739),
    [anon_sym_uint] = ACTIONS(739),
    [anon_sym_uint8] = ACTIONS(739),
    [anon_sym_uint16] = ACTIONS(739),
    [anon_sym_uint24] = ACTIONS(739),
    [anon_sym_uint32] = ACTIONS(739),
    [anon_sym_uint40] = ACTIONS(739),
    [anon_sym_uint48] = ACTIONS(739),
    [anon_sym_uint56] = ACTIONS(739),
    [anon_sym_uint64] = ACTIONS(739),
    [anon_sym_uint72] = ACTIONS(739),
    [anon_sym_uint80] = ACTIONS(739),
    [anon_sym_uint88] = ACTIONS(739),
    [anon_sym_uint96] = ACTIONS(739),
    [anon_sym_uint104] = ACTIONS(739),
    [anon_sym_uint112] = ACTIONS(739),
    [anon_sym_uint120] = ACTIONS(739),
    [anon_sym_uint128] = ACTIONS(739),
    [anon_sym_uint136] = ACTIONS(739),
    [anon_sym_uint144] = ACTIONS(739),
    [anon_sym_uint152] = ACTIONS(739),
    [anon_sym_uint160] = ACTIONS(739),
    [anon_sym_uint168] = ACTIONS(739),
    [anon_sym_uint176] = ACTIONS(739),
    [anon_sym_uint184] = ACTIONS(739),
    [anon_sym_uint192] = ACTIONS(739),
    [anon_sym_uint200] = ACTIONS(739),
    [anon_sym_uint208] = ACTIONS(739),
    [anon_sym_uint216] = ACTIONS(739),
    [anon_sym_uint224] = ACTIONS(739),
    [anon_sym_uint232] = ACTIONS(739),
    [anon_sym_uint240] = ACTIONS(739),
    [anon_sym_uint248] = ACTIONS(739),
    [anon_sym_uint256] = ACTIONS(739),
    [anon_sym_bytes] = ACTIONS(739),
    [anon_sym_bytes1] = ACTIONS(739),
    [anon_sym_bytes2] = ACTIONS(739),
    [anon_sym_bytes3] = ACTIONS(739),
    [anon_sym_bytes4] = ACTIONS(739),
    [anon_sym_bytes5] = ACTIONS(739),
    [anon_sym_bytes6] = ACTIONS(739),
    [anon_sym_bytes7] = ACTIONS(739),
    [anon_sym_bytes8] = ACTIONS(739),
    [anon_sym_bytes9] = ACTIONS(739),
    [anon_sym_bytes10] = ACTIONS(739),
    [anon_sym_bytes11] = ACTIONS(739),
    [anon_sym_bytes12] = ACTIONS(739),
    [anon_sym_bytes13] = ACTIONS(739),
    [anon_sym_bytes14] = ACTIONS(739),
    [anon_sym_bytes15] = ACTIONS(739),
    [anon_sym_bytes16] = ACTIONS(739),
    [anon_sym_bytes17] = ACTIONS(739),
    [anon_sym_bytes18] = ACTIONS(739),
    [anon_sym_bytes19] = ACTIONS(739),
    [anon_sym_bytes20] = ACTIONS(739),
    [anon_sym_bytes21] = ACTIONS(739),
    [anon_sym_bytes22] = ACTIONS(739),
    [anon_sym_bytes23] = ACTIONS(739),
    [anon_sym_bytes24] = ACTIONS(739),
    [anon_sym_bytes25] = ACTIONS(739),
    [anon_sym_bytes26] = ACTIONS(739),
    [anon_sym_bytes27] = ACTIONS(739),
    [anon_sym_bytes28] = ACTIONS(739),
    [anon_sym_bytes29] = ACTIONS(739),
    [anon_sym_bytes30] = ACTIONS(739),
    [anon_sym_bytes31] = ACTIONS(739),
    [anon_sym_bytes32] = ACTIONS(739),
    [anon_sym_fixed] = ACTIONS(739),
    [aux_sym__fixed_token1] = ACTIONS(739),
    [anon_sym_ufixed] = ACTIONS(739),
    [aux_sym__ufixed_token1] = ACTIONS(739),
    [sym_comment] = ACTIONS(3),
  },
  [184] = {
    [sym_identifier] = ACTIONS(721),
    [anon_sym_RBRACE] = ACTIONS(719),
    [anon_sym_type] = ACTIONS(721),
    [anon_sym_error] = ACTIONS(721),
    [anon_sym_struct] = ACTIONS(721),
    [anon_sym_enum] = ACTIONS(721),
    [anon_sym_event] = ACTIONS(721),
    [anon_sym_using] = ACTIONS(721),
    [anon_sym_function] = ACTIONS(721),
    [anon_sym_byte] = ACTIONS(721),
    [anon_sym_address] = ACTIONS(721),
    [anon_sym_var] = ACTIONS(721),
    [anon_sym_modifier] = ACTIONS(721),
    [anon_sym_constructor] = ACTIONS(721),
    [anon_sym_fallback] = ACTIONS(721),
    [anon_sym_receive] = ACTIONS(721),
    [anon_sym_mapping] = ACTIONS(721),
    [anon_sym_bool] = ACTIONS(721),
    [anon_sym_string] = ACTIONS(721),
    [anon_sym_int] = ACTIONS(721),
    [anon_sym_int8] = ACTIONS(721),
    [anon_sym_int16] = ACTIONS(721),
    [anon_sym_int24] = ACTIONS(721),
    [anon_sym_int32] = ACTIONS(721),
    [anon_sym_int40] = ACTIONS(721),
    [anon_sym_int48] = ACTIONS(721),
    [anon_sym_int56] = ACTIONS(721),
    [anon_sym_int64] = ACTIONS(721),
    [anon_sym_int72] = ACTIONS(721),
    [anon_sym_int80] = ACTIONS(721),
    [anon_sym_int88] = ACTIONS(721),
    [anon_sym_int96] = ACTIONS(721),
    [anon_sym_int104] = ACTIONS(721),
    [anon_sym_int112] = ACTIONS(721),
    [anon_sym_int120] = ACTIONS(721),
    [anon_sym_int128] = ACTIONS(721),
    [anon_sym_int136] = ACTIONS(721),
    [anon_sym_int144] = ACTIONS(721),
    [anon_sym_int152] = ACTIONS(721),
    [anon_sym_int160] = ACTIONS(721),
    [anon_sym_int168] = ACTIONS(721),
    [anon_sym_int176] = ACTIONS(721),
    [anon_sym_int184] = ACTIONS(721),
    [anon_sym_int192] = ACTIONS(721),
    [anon_sym_int200] = ACTIONS(721),
    [anon_sym_int208] = ACTIONS(721),
    [anon_sym_int216] = ACTIONS(721),
    [anon_sym_int224] = ACTIONS(721),
    [anon_sym_int232] = ACTIONS(721),
    [anon_sym_int240] = ACTIONS(721),
    [anon_sym_int248] = ACTIONS(721),
    [anon_sym_int256] = ACTIONS(721),
    [anon_sym_uint] = ACTIONS(721),
    [anon_sym_uint8] = ACTIONS(721),
    [anon_sym_uint16] = ACTIONS(721),
    [anon_sym_uint24] = ACTIONS(721),
    [anon_sym_uint32] = ACTIONS(721),
    [anon_sym_uint40] = ACTIONS(721),
    [anon_sym_uint48] = ACTIONS(721),
    [anon_sym_uint56] = ACTIONS(721),
    [anon_sym_uint64] = ACTIONS(721),
    [anon_sym_uint72] = ACTIONS(721),
    [anon_sym_uint80] = ACTIONS(721),
    [anon_sym_uint88] = ACTIONS(721),
    [anon_sym_uint96] = ACTIONS(721),
    [anon_sym_uint104] = ACTIONS(721),
    [anon_sym_uint112] = ACTIONS(721),
    [anon_sym_uint120] = ACTIONS(721),
    [anon_sym_uint128] = ACTIONS(721),
    [anon_sym_uint136] = ACTIONS(721),
    [anon_sym_uint144] = ACTIONS(721),
    [anon_sym_uint152] = ACTIONS(721),
    [anon_sym_uint160] = ACTIONS(721),
    [anon_sym_uint168] = ACTIONS(721),
    [anon_sym_uint176] = ACTIONS(721),
    [anon_sym_uint184] = ACTIONS(721),
    [anon_sym_uint192] = ACTIONS(721),
    [anon_sym_uint200] = ACTIONS(721),
    [anon_sym_uint208] = ACTIONS(721),
    [anon_sym_uint216] = ACTIONS(721),
    [anon_sym_uint224] = ACTIONS(721),
    [anon_sym_uint232] = ACTIONS(721),
    [anon_sym_uint240] = ACTIONS(721),
    [anon_sym_uint248] = ACTIONS(721),
    [anon_sym_uint256] = ACTIONS(721),
    [anon_sym_bytes] = ACTIONS(721),
    [anon_sym_bytes1] = ACTIONS(721),
    [anon_sym_bytes2] = ACTIONS(721),
    [anon_sym_bytes3] = ACTIONS(721),
    [anon_sym_bytes4] = ACTIONS(721),
    [anon_sym_bytes5] = ACTIONS(721),
    [anon_sym_bytes6] = ACTIONS(721),
    [anon_sym_bytes7] = ACTIONS(721),
    [anon_sym_bytes8] = ACTIONS(721),
    [anon_sym_bytes9] = ACTIONS(721),
    [anon_sym_bytes10] = ACTIONS(721),
    [anon_sym_bytes11] = ACTIONS(721),
    [anon_sym_bytes12] = ACTIONS(721),
    [anon_sym_bytes13] = ACTIONS(721),
    [anon_sym_bytes14] = ACTIONS(721),
    [anon_sym_bytes15] = ACTIONS(721),
    [anon_sym_bytes16] = ACTIONS(721),
    [anon_sym_bytes17] = ACTIONS(721),
    [anon_sym_bytes18] = ACTIONS(721),
    [anon_sym_bytes19] = ACTIONS(721),
    [anon_sym_bytes20] = ACTIONS(721),
    [anon_sym_bytes21] = ACTIONS(721),
    [anon_sym_bytes22] = ACTIONS(721),
    [anon_sym_bytes23] = ACTIONS(721),
    [anon_sym_bytes24] = ACTIONS(721),
    [anon_sym_bytes25] = ACTIONS(721),
    [anon_sym_bytes26] = ACTIONS(721),
    [anon_sym_bytes27] = ACTIONS(721),
    [anon_sym_bytes28] = ACTIONS(721),
    [anon_sym_bytes29] = ACTIONS(721),
    [anon_sym_bytes30] = ACTIONS(721),
    [anon_sym_bytes31] = ACTIONS(721),
    [anon_sym_bytes32] = ACTIONS(721),
    [anon_sym_fixed] = ACTIONS(721),
    [aux_sym__fixed_token1] = ACTIONS(721),
    [anon_sym_ufixed] = ACTIONS(721),
    [aux_sym__ufixed_token1] = ACTIONS(721),
    [sym_comment] = ACTIONS(3),
  },
  [185] = {
    [sym_identifier] = ACTIONS(747),
    [anon_sym_RBRACE] = ACTIONS(749),
    [anon_sym_type] = ACTIONS(747),
    [anon_sym_error] = ACTIONS(747),
    [anon_sym_struct] = ACTIONS(747),
    [anon_sym_enum] = ACTIONS(747),
    [anon_sym_event] = ACTIONS(747),
    [anon_sym_using] = ACTIONS(747),
    [anon_sym_function] = ACTIONS(747),
    [anon_sym_byte] = ACTIONS(747),
    [anon_sym_address] = ACTIONS(747),
    [anon_sym_var] = ACTIONS(747),
    [anon_sym_modifier] = ACTIONS(747),
    [anon_sym_constructor] = ACTIONS(747),
    [anon_sym_fallback] = ACTIONS(747),
    [anon_sym_receive] = ACTIONS(747),
    [anon_sym_mapping] = ACTIONS(747),
    [anon_sym_bool] = ACTIONS(747),
    [anon_sym_string] = ACTIONS(747),
    [anon_sym_int] = ACTIONS(747),
    [anon_sym_int8] = ACTIONS(747),
    [anon_sym_int16] = ACTIONS(747),
    [anon_sym_int24] = ACTIONS(747),
    [anon_sym_int32] = ACTIONS(747),
    [anon_sym_int40] = ACTIONS(747),
    [anon_sym_int48] = ACTIONS(747),
    [anon_sym_int56] = ACTIONS(747),
    [anon_sym_int64] = ACTIONS(747),
    [anon_sym_int72] = ACTIONS(747),
    [anon_sym_int80] = ACTIONS(747),
    [anon_sym_int88] = ACTIONS(747),
    [anon_sym_int96] = ACTIONS(747),
    [anon_sym_int104] = ACTIONS(747),
    [anon_sym_int112] = ACTIONS(747),
    [anon_sym_int120] = ACTIONS(747),
    [anon_sym_int128] = ACTIONS(747),
    [anon_sym_int136] = ACTIONS(747),
    [anon_sym_int144] = ACTIONS(747),
    [anon_sym_int152] = ACTIONS(747),
    [anon_sym_int160] = ACTIONS(747),
    [anon_sym_int168] = ACTIONS(747),
    [anon_sym_int176] = ACTIONS(747),
    [anon_sym_int184] = ACTIONS(747),
    [anon_sym_int192] = ACTIONS(747),
    [anon_sym_int200] = ACTIONS(747),
    [anon_sym_int208] = ACTIONS(747),
    [anon_sym_int216] = ACTIONS(747),
    [anon_sym_int224] = ACTIONS(747),
    [anon_sym_int232] = ACTIONS(747),
    [anon_sym_int240] = ACTIONS(747),
    [anon_sym_int248] = ACTIONS(747),
    [anon_sym_int256] = ACTIONS(747),
    [anon_sym_uint] = ACTIONS(747),
    [anon_sym_uint8] = ACTIONS(747),
    [anon_sym_uint16] = ACTIONS(747),
    [anon_sym_uint24] = ACTIONS(747),
    [anon_sym_uint32] = ACTIONS(747),
    [anon_sym_uint40] = ACTIONS(747),
    [anon_sym_uint48] = ACTIONS(747),
    [anon_sym_uint56] = ACTIONS(747),
    [anon_sym_uint64] = ACTIONS(747),
    [anon_sym_uint72] = ACTIONS(747),
    [anon_sym_uint80] = ACTIONS(747),
    [anon_sym_uint88] = ACTIONS(747),
    [anon_sym_uint96] = ACTIONS(747),
    [anon_sym_uint104] = ACTIONS(747),
    [anon_sym_uint112] = ACTIONS(747),
    [anon_sym_uint120] = ACTIONS(747),
    [anon_sym_uint128] = ACTIONS(747),
    [anon_sym_uint136] = ACTIONS(747),
    [anon_sym_uint144] = ACTIONS(747),
    [anon_sym_uint152] = ACTIONS(747),
    [anon_sym_uint160] = ACTIONS(747),
    [anon_sym_uint168] = ACTIONS(747),
    [anon_sym_uint176] = ACTIONS(747),
    [anon_sym_uint184] = ACTIONS(747),
    [anon_sym_uint192] = ACTIONS(747),
    [anon_sym_uint200] = ACTIONS(747),
    [anon_sym_uint208] = ACTIONS(747),
    [anon_sym_uint216] = ACTIONS(747),
    [anon_sym_uint224] = ACTIONS(747),
    [anon_sym_uint232] = ACTIONS(747),
    [anon_sym_uint240] = ACTIONS(747),
    [anon_sym_uint248] = ACTIONS(747),
    [anon_sym_uint256] = ACTIONS(747),
    [anon_sym_bytes] = ACTIONS(747),
    [anon_sym_bytes1] = ACTIONS(747),
    [anon_sym_bytes2] = ACTIONS(747),
    [anon_sym_bytes3] = ACTIONS(747),
    [anon_sym_bytes4] = ACTIONS(747),
    [anon_sym_bytes5] = ACTIONS(747),
    [anon_sym_bytes6] = ACTIONS(747),
    [anon_sym_bytes7] = ACTIONS(747),
    [anon_sym_bytes8] = ACTIONS(747),
    [anon_sym_bytes9] = ACTIONS(747),
    [anon_sym_bytes10] = ACTIONS(747),
    [anon_sym_bytes11] = ACTIONS(747),
    [anon_sym_bytes12] = ACTIONS(747),
    [anon_sym_bytes13] = ACTIONS(747),
    [anon_sym_bytes14] = ACTIONS(747),
    [anon_sym_bytes15] = ACTIONS(747),
    [anon_sym_bytes16] = ACTIONS(747),
    [anon_sym_bytes17] = ACTIONS(747),
    [anon_sym_bytes18] = ACTIONS(747),
    [anon_sym_bytes19] = ACTIONS(747),
    [anon_sym_bytes20] = ACTIONS(747),
    [anon_sym_bytes21] = ACTIONS(747),
    [anon_sym_bytes22] = ACTIONS(747),
    [anon_sym_bytes23] = ACTIONS(747),
    [anon_sym_bytes24] = ACTIONS(747),
    [anon_sym_bytes25] = ACTIONS(747),
    [anon_sym_bytes26] = ACTIONS(747),
    [anon_sym_bytes27] = ACTIONS(747),
    [anon_sym_bytes28] = ACTIONS(747),
    [anon_sym_bytes29] = ACTIONS(747),
    [anon_sym_bytes30] = ACTIONS(747),
    [anon_sym_bytes31] = ACTIONS(747),
    [anon_sym_bytes32] = ACTIONS(747),
    [anon_sym_fixed] = ACTIONS(747),
    [aux_sym__fixed_token1] = ACTIONS(747),
    [anon_sym_ufixed] = ACTIONS(747),
    [aux_sym__ufixed_token1] = ACTIONS(747),
    [sym_comment] = ACTIONS(3),
  },
  [186] = {
    [sym_identifier] = ACTIONS(751),
    [anon_sym_RBRACE] = ACTIONS(753),
    [anon_sym_type] = ACTIONS(751),
    [anon_sym_error] = ACTIONS(751),
    [anon_sym_struct] = ACTIONS(751),
    [anon_sym_enum] = ACTIONS(751),
    [anon_sym_event] = ACTIONS(751),
    [anon_sym_using] = ACTIONS(751),
    [anon_sym_function] = ACTIONS(751),
    [anon_sym_byte] = ACTIONS(751),
    [anon_sym_address] = ACTIONS(751),
    [anon_sym_var] = ACTIONS(751),
    [anon_sym_modifier] = ACTIONS(751),
    [anon_sym_constructor] = ACTIONS(751),
    [anon_sym_fallback] = ACTIONS(751),
    [anon_sym_receive] = ACTIONS(751),
    [anon_sym_mapping] = ACTIONS(751),
    [anon_sym_bool] = ACTIONS(751),
    [anon_sym_string] = ACTIONS(751),
    [anon_sym_int] = ACTIONS(751),
    [anon_sym_int8] = ACTIONS(751),
    [anon_sym_int16] = ACTIONS(751),
    [anon_sym_int24] = ACTIONS(751),
    [anon_sym_int32] = ACTIONS(751),
    [anon_sym_int40] = ACTIONS(751),
    [anon_sym_int48] = ACTIONS(751),
    [anon_sym_int56] = ACTIONS(751),
    [anon_sym_int64] = ACTIONS(751),
    [anon_sym_int72] = ACTIONS(751),
    [anon_sym_int80] = ACTIONS(751),
    [anon_sym_int88] = ACTIONS(751),
    [anon_sym_int96] = ACTIONS(751),
    [anon_sym_int104] = ACTIONS(751),
    [anon_sym_int112] = ACTIONS(751),
    [anon_sym_int120] = ACTIONS(751),
    [anon_sym_int128] = ACTIONS(751),
    [anon_sym_int136] = ACTIONS(751),
    [anon_sym_int144] = ACTIONS(751),
    [anon_sym_int152] = ACTIONS(751),
    [anon_sym_int160] = ACTIONS(751),
    [anon_sym_int168] = ACTIONS(751),
    [anon_sym_int176] = ACTIONS(751),
    [anon_sym_int184] = ACTIONS(751),
    [anon_sym_int192] = ACTIONS(751),
    [anon_sym_int200] = ACTIONS(751),
    [anon_sym_int208] = ACTIONS(751),
    [anon_sym_int216] = ACTIONS(751),
    [anon_sym_int224] = ACTIONS(751),
    [anon_sym_int232] = ACTIONS(751),
    [anon_sym_int240] = ACTIONS(751),
    [anon_sym_int248] = ACTIONS(751),
    [anon_sym_int256] = ACTIONS(751),
    [anon_sym_uint] = ACTIONS(751),
    [anon_sym_uint8] = ACTIONS(751),
    [anon_sym_uint16] = ACTIONS(751),
    [anon_sym_uint24] = ACTIONS(751),
    [anon_sym_uint32] = ACTIONS(751),
    [anon_sym_uint40] = ACTIONS(751),
    [anon_sym_uint48] = ACTIONS(751),
    [anon_sym_uint56] = ACTIONS(751),
    [anon_sym_uint64] = ACTIONS(751),
    [anon_sym_uint72] = ACTIONS(751),
    [anon_sym_uint80] = ACTIONS(751),
    [anon_sym_uint88] = ACTIONS(751),
    [anon_sym_uint96] = ACTIONS(751),
    [anon_sym_uint104] = ACTIONS(751),
    [anon_sym_uint112] = ACTIONS(751),
    [anon_sym_uint120] = ACTIONS(751),
    [anon_sym_uint128] = ACTIONS(751),
    [anon_sym_uint136] = ACTIONS(751),
    [anon_sym_uint144] = ACTIONS(751),
    [anon_sym_uint152] = ACTIONS(751),
    [anon_sym_uint160] = ACTIONS(751),
    [anon_sym_uint168] = ACTIONS(751),
    [anon_sym_uint176] = ACTIONS(751),
    [anon_sym_uint184] = ACTIONS(751),
    [anon_sym_uint192] = ACTIONS(751),
    [anon_sym_uint200] = ACTIONS(751),
    [anon_sym_uint208] = ACTIONS(751),
    [anon_sym_uint216] = ACTIONS(751),
    [anon_sym_uint224] = ACTIONS(751),
    [anon_sym_uint232] = ACTIONS(751),
    [anon_sym_uint240] = ACTIONS(751),
    [anon_sym_uint248] = ACTIONS(751),
    [anon_sym_uint256] = ACTIONS(751),
    [anon_sym_bytes] = ACTIONS(751),
    [anon_sym_bytes1] = ACTIONS(751),
    [anon_sym_bytes2] = ACTIONS(751),
    [anon_sym_bytes3] = ACTIONS(751),
    [anon_sym_bytes4] = ACTIONS(751),
    [anon_sym_bytes5] = ACTIONS(751),
    [anon_sym_bytes6] = ACTIONS(751),
    [anon_sym_bytes7] = ACTIONS(751),
    [anon_sym_bytes8] = ACTIONS(751),
    [anon_sym_bytes9] = ACTIONS(751),
    [anon_sym_bytes10] = ACTIONS(751),
    [anon_sym_bytes11] = ACTIONS(751),
    [anon_sym_bytes12] = ACTIONS(751),
    [anon_sym_bytes13] = ACTIONS(751),
    [anon_sym_bytes14] = ACTIONS(751),
    [anon_sym_bytes15] = ACTIONS(751),
    [anon_sym_bytes16] = ACTIONS(751),
    [anon_sym_bytes17] = ACTIONS(751),
    [anon_sym_bytes18] = ACTIONS(751),
    [anon_sym_bytes19] = ACTIONS(751),
    [anon_sym_bytes20] = ACTIONS(751),
    [anon_sym_bytes21] = ACTIONS(751),
    [anon_sym_bytes22] = ACTIONS(751),
    [anon_sym_bytes23] = ACTIONS(751),
    [anon_sym_bytes24] = ACTIONS(751),
    [anon_sym_bytes25] = ACTIONS(751),
    [anon_sym_bytes26] = ACTIONS(751),
    [anon_sym_bytes27] = ACTIONS(751),
    [anon_sym_bytes28] = ACTIONS(751),
    [anon_sym_bytes29] = ACTIONS(751),
    [anon_sym_bytes30] = ACTIONS(751),
    [anon_sym_bytes31] = ACTIONS(751),
    [anon_sym_bytes32] = ACTIONS(751),
    [anon_sym_fixed] = ACTIONS(751),
    [aux_sym__fixed_token1] = ACTIONS(751),
    [anon_sym_ufixed] = ACTIONS(751),
    [aux_sym__ufixed_token1] = ACTIONS(751),
    [sym_comment] = ACTIONS(3),
  },
  [187] = {
    [sym_identifier] = ACTIONS(755),
    [anon_sym_RBRACE] = ACTIONS(757),
    [anon_sym_type] = ACTIONS(755),
    [anon_sym_error] = ACTIONS(755),
    [anon_sym_struct] = ACTIONS(755),
    [anon_sym_enum] = ACTIONS(755),
    [anon_sym_event] = ACTIONS(755),
    [anon_sym_using] = ACTIONS(755),
    [anon_sym_function] = ACTIONS(755),
    [anon_sym_byte] = ACTIONS(755),
    [anon_sym_address] = ACTIONS(755),
    [anon_sym_var] = ACTIONS(755),
    [anon_sym_modifier] = ACTIONS(755),
    [anon_sym_constructor] = ACTIONS(755),
    [anon_sym_fallback] = ACTIONS(755),
    [anon_sym_receive] = ACTIONS(755),
    [anon_sym_mapping] = ACTIONS(755),
    [anon_sym_bool] = ACTIONS(755),
    [anon_sym_string] = ACTIONS(755),
    [anon_sym_int] = ACTIONS(755),
    [anon_sym_int8] = ACTIONS(755),
    [anon_sym_int16] = ACTIONS(755),
    [anon_sym_int24] = ACTIONS(755),
    [anon_sym_int32] = ACTIONS(755),
    [anon_sym_int40] = ACTIONS(755),
    [anon_sym_int48] = ACTIONS(755),
    [anon_sym_int56] = ACTIONS(755),
    [anon_sym_int64] = ACTIONS(755),
    [anon_sym_int72] = ACTIONS(755),
    [anon_sym_int80] = ACTIONS(755),
    [anon_sym_int88] = ACTIONS(755),
    [anon_sym_int96] = ACTIONS(755),
    [anon_sym_int104] = ACTIONS(755),
    [anon_sym_int112] = ACTIONS(755),
    [anon_sym_int120] = ACTIONS(755),
    [anon_sym_int128] = ACTIONS(755),
    [anon_sym_int136] = ACTIONS(755),
    [anon_sym_int144] = ACTIONS(755),
    [anon_sym_int152] = ACTIONS(755),
    [anon_sym_int160] = ACTIONS(755),
    [anon_sym_int168] = ACTIONS(755),
    [anon_sym_int176] = ACTIONS(755),
    [anon_sym_int184] = ACTIONS(755),
    [anon_sym_int192] = ACTIONS(755),
    [anon_sym_int200] = ACTIONS(755),
    [anon_sym_int208] = ACTIONS(755),
    [anon_sym_int216] = ACTIONS(755),
    [anon_sym_int224] = ACTIONS(755),
    [anon_sym_int232] = ACTIONS(755),
    [anon_sym_int240] = ACTIONS(755),
    [anon_sym_int248] = ACTIONS(755),
    [anon_sym_int256] = ACTIONS(755),
    [anon_sym_uint] = ACTIONS(755),
    [anon_sym_uint8] = ACTIONS(755),
    [anon_sym_uint16] = ACTIONS(755),
    [anon_sym_uint24] = ACTIONS(755),
    [anon_sym_uint32] = ACTIONS(755),
    [anon_sym_uint40] = ACTIONS(755),
    [anon_sym_uint48] = ACTIONS(755),
    [anon_sym_uint56] = ACTIONS(755),
    [anon_sym_uint64] = ACTIONS(755),
    [anon_sym_uint72] = ACTIONS(755),
    [anon_sym_uint80] = ACTIONS(755),
    [anon_sym_uint88] = ACTIONS(755),
    [anon_sym_uint96] = ACTIONS(755),
    [anon_sym_uint104] = ACTIONS(755),
    [anon_sym_uint112] = ACTIONS(755),
    [anon_sym_uint120] = ACTIONS(755),
    [anon_sym_uint128] = ACTIONS(755),
    [anon_sym_uint136] = ACTIONS(755),
    [anon_sym_uint144] = ACTIONS(755),
    [anon_sym_uint152] = ACTIONS(755),
    [anon_sym_uint160] = ACTIONS(755),
    [anon_sym_uint168] = ACTIONS(755),
    [anon_sym_uint176] = ACTIONS(755),
    [anon_sym_uint184] = ACTIONS(755),
    [anon_sym_uint192] = ACTIONS(755),
    [anon_sym_uint200] = ACTIONS(755),
    [anon_sym_uint208] = ACTIONS(755),
    [anon_sym_uint216] = ACTIONS(755),
    [anon_sym_uint224] = ACTIONS(755),
    [anon_sym_uint232] = ACTIONS(755),
    [anon_sym_uint240] = ACTIONS(755),
    [anon_sym_uint248] = ACTIONS(755),
    [anon_sym_uint256] = ACTIONS(755),
    [anon_sym_bytes] = ACTIONS(755),
    [anon_sym_bytes1] = ACTIONS(755),
    [anon_sym_bytes2] = ACTIONS(755),
    [anon_sym_bytes3] = ACTIONS(755),
    [anon_sym_bytes4] = ACTIONS(755),
    [anon_sym_bytes5] = ACTIONS(755),
    [anon_sym_bytes6] = ACTIONS(755),
    [anon_sym_bytes7] = ACTIONS(755),
    [anon_sym_bytes8] = ACTIONS(755),
    [anon_sym_bytes9] = ACTIONS(755),
    [anon_sym_bytes10] = ACTIONS(755),
    [anon_sym_bytes11] = ACTIONS(755),
    [anon_sym_bytes12] = ACTIONS(755),
    [anon_sym_bytes13] = ACTIONS(755),
    [anon_sym_bytes14] = ACTIONS(755),
    [anon_sym_bytes15] = ACTIONS(755),
    [anon_sym_bytes16] = ACTIONS(755),
    [anon_sym_bytes17] = ACTIONS(755),
    [anon_sym_bytes18] = ACTIONS(755),
    [anon_sym_bytes19] = ACTIONS(755),
    [anon_sym_bytes20] = ACTIONS(755),
    [anon_sym_bytes21] = ACTIONS(755),
    [anon_sym_bytes22] = ACTIONS(755),
    [anon_sym_bytes23] = ACTIONS(755),
    [anon_sym_bytes24] = ACTIONS(755),
    [anon_sym_bytes25] = ACTIONS(755),
    [anon_sym_bytes26] = ACTIONS(755),
    [anon_sym_bytes27] = ACTIONS(755),
    [anon_sym_bytes28] = ACTIONS(755),
    [anon_sym_bytes29] = ACTIONS(755),
    [anon_sym_bytes30] = ACTIONS(755),
    [anon_sym_bytes31] = ACTIONS(755),
    [anon_sym_bytes32] = ACTIONS(755),
    [anon_sym_fixed] = ACTIONS(755),
    [aux_sym__fixed_token1] = ACTIONS(755),
    [anon_sym_ufixed] = ACTIONS(755),
    [aux_sym__ufixed_token1] = ACTIONS(755),
    [sym_comment] = ACTIONS(3),
  },
  [188] = {
    [sym_identifier] = ACTIONS(759),
    [anon_sym_RBRACE] = ACTIONS(761),
    [anon_sym_type] = ACTIONS(759),
    [anon_sym_error] = ACTIONS(759),
    [anon_sym_struct] = ACTIONS(759),
    [anon_sym_enum] = ACTIONS(759),
    [anon_sym_event] = ACTIONS(759),
    [anon_sym_using] = ACTIONS(759),
    [anon_sym_function] = ACTIONS(759),
    [anon_sym_byte] = ACTIONS(759),
    [anon_sym_address] = ACTIONS(759),
    [anon_sym_var] = ACTIONS(759),
    [anon_sym_modifier] = ACTIONS(759),
    [anon_sym_constructor] = ACTIONS(759),
    [anon_sym_fallback] = ACTIONS(759),
    [anon_sym_receive] = ACTIONS(759),
    [anon_sym_mapping] = ACTIONS(759),
    [anon_sym_bool] = ACTIONS(759),
    [anon_sym_string] = ACTIONS(759),
    [anon_sym_int] = ACTIONS(759),
    [anon_sym_int8] = ACTIONS(759),
    [anon_sym_int16] = ACTIONS(759),
    [anon_sym_int24] = ACTIONS(759),
    [anon_sym_int32] = ACTIONS(759),
    [anon_sym_int40] = ACTIONS(759),
    [anon_sym_int48] = ACTIONS(759),
    [anon_sym_int56] = ACTIONS(759),
    [anon_sym_int64] = ACTIONS(759),
    [anon_sym_int72] = ACTIONS(759),
    [anon_sym_int80] = ACTIONS(759),
    [anon_sym_int88] = ACTIONS(759),
    [anon_sym_int96] = ACTIONS(759),
    [anon_sym_int104] = ACTIONS(759),
    [anon_sym_int112] = ACTIONS(759),
    [anon_sym_int120] = ACTIONS(759),
    [anon_sym_int128] = ACTIONS(759),
    [anon_sym_int136] = ACTIONS(759),
    [anon_sym_int144] = ACTIONS(759),
    [anon_sym_int152] = ACTIONS(759),
    [anon_sym_int160] = ACTIONS(759),
    [anon_sym_int168] = ACTIONS(759),
    [anon_sym_int176] = ACTIONS(759),
    [anon_sym_int184] = ACTIONS(759),
    [anon_sym_int192] = ACTIONS(759),
    [anon_sym_int200] = ACTIONS(759),
    [anon_sym_int208] = ACTIONS(759),
    [anon_sym_int216] = ACTIONS(759),
    [anon_sym_int224] = ACTIONS(759),
    [anon_sym_int232] = ACTIONS(759),
    [anon_sym_int240] = ACTIONS(759),
    [anon_sym_int248] = ACTIONS(759),
    [anon_sym_int256] = ACTIONS(759),
    [anon_sym_uint] = ACTIONS(759),
    [anon_sym_uint8] = ACTIONS(759),
    [anon_sym_uint16] = ACTIONS(759),
    [anon_sym_uint24] = ACTIONS(759),
    [anon_sym_uint32] = ACTIONS(759),
    [anon_sym_uint40] = ACTIONS(759),
    [anon_sym_uint48] = ACTIONS(759),
    [anon_sym_uint56] = ACTIONS(759),
    [anon_sym_uint64] = ACTIONS(759),
    [anon_sym_uint72] = ACTIONS(759),
    [anon_sym_uint80] = ACTIONS(759),
    [anon_sym_uint88] = ACTIONS(759),
    [anon_sym_uint96] = ACTIONS(759),
    [anon_sym_uint104] = ACTIONS(759),
    [anon_sym_uint112] = ACTIONS(759),
    [anon_sym_uint120] = ACTIONS(759),
    [anon_sym_uint128] = ACTIONS(759),
    [anon_sym_uint136] = ACTIONS(759),
    [anon_sym_uint144] = ACTIONS(759),
    [anon_sym_uint152] = ACTIONS(759),
    [anon_sym_uint160] = ACTIONS(759),
    [anon_sym_uint168] = ACTIONS(759),
    [anon_sym_uint176] = ACTIONS(759),
    [anon_sym_uint184] = ACTIONS(759),
    [anon_sym_uint192] = ACTIONS(759),
    [anon_sym_uint200] = ACTIONS(759),
    [anon_sym_uint208] = ACTIONS(759),
    [anon_sym_uint216] = ACTIONS(759),
    [anon_sym_uint224] = ACTIONS(759),
    [anon_sym_uint232] = ACTIONS(759),
    [anon_sym_uint240] = ACTIONS(759),
    [anon_sym_uint248] = ACTIONS(759),
    [anon_sym_uint256] = ACTIONS(759),
    [anon_sym_bytes] = ACTIONS(759),
    [anon_sym_bytes1] = ACTIONS(759),
    [anon_sym_bytes2] = ACTIONS(759),
    [anon_sym_bytes3] = ACTIONS(759),
    [anon_sym_bytes4] = ACTIONS(759),
    [anon_sym_bytes5] = ACTIONS(759),
    [anon_sym_bytes6] = ACTIONS(759),
    [anon_sym_bytes7] = ACTIONS(759),
    [anon_sym_bytes8] = ACTIONS(759),
    [anon_sym_bytes9] = ACTIONS(759),
    [anon_sym_bytes10] = ACTIONS(759),
    [anon_sym_bytes11] = ACTIONS(759),
    [anon_sym_bytes12] = ACTIONS(759),
    [anon_sym_bytes13] = ACTIONS(759),
    [anon_sym_bytes14] = ACTIONS(759),
    [anon_sym_bytes15] = ACTIONS(759),
    [anon_sym_bytes16] = ACTIONS(759),
    [anon_sym_bytes17] = ACTIONS(759),
    [anon_sym_bytes18] = ACTIONS(759),
    [anon_sym_bytes19] = ACTIONS(759),
    [anon_sym_bytes20] = ACTIONS(759),
    [anon_sym_bytes21] = ACTIONS(759),
    [anon_sym_bytes22] = ACTIONS(759),
    [anon_sym_bytes23] = ACTIONS(759),
    [anon_sym_bytes24] = ACTIONS(759),
    [anon_sym_bytes25] = ACTIONS(759),
    [anon_sym_bytes26] = ACTIONS(759),
    [anon_sym_bytes27] = ACTIONS(759),
    [anon_sym_bytes28] = ACTIONS(759),
    [anon_sym_bytes29] = ACTIONS(759),
    [anon_sym_bytes30] = ACTIONS(759),
    [anon_sym_bytes31] = ACTIONS(759),
    [anon_sym_bytes32] = ACTIONS(759),
    [anon_sym_fixed] = ACTIONS(759),
    [aux_sym__fixed_token1] = ACTIONS(759),
    [anon_sym_ufixed] = ACTIONS(759),
    [aux_sym__ufixed_token1] = ACTIONS(759),
    [sym_comment] = ACTIONS(3),
  },
  [189] = {
    [sym_identifier] = ACTIONS(763),
    [anon_sym_RBRACE] = ACTIONS(765),
    [anon_sym_type] = ACTIONS(763),
    [anon_sym_error] = ACTIONS(763),
    [anon_sym_struct] = ACTIONS(763),
    [anon_sym_enum] = ACTIONS(763),
    [anon_sym_event] = ACTIONS(763),
    [anon_sym_using] = ACTIONS(763),
    [anon_sym_function] = ACTIONS(763),
    [anon_sym_byte] = ACTIONS(763),
    [anon_sym_address] = ACTIONS(763),
    [anon_sym_var] = ACTIONS(763),
    [anon_sym_modifier] = ACTIONS(763),
    [anon_sym_constructor] = ACTIONS(763),
    [anon_sym_fallback] = ACTIONS(763),
    [anon_sym_receive] = ACTIONS(763),
    [anon_sym_mapping] = ACTIONS(763),
    [anon_sym_bool] = ACTIONS(763),
    [anon_sym_string] = ACTIONS(763),
    [anon_sym_int] = ACTIONS(763),
    [anon_sym_int8] = ACTIONS(763),
    [anon_sym_int16] = ACTIONS(763),
    [anon_sym_int24] = ACTIONS(763),
    [anon_sym_int32] = ACTIONS(763),
    [anon_sym_int40] = ACTIONS(763),
    [anon_sym_int48] = ACTIONS(763),
    [anon_sym_int56] = ACTIONS(763),
    [anon_sym_int64] = ACTIONS(763),
    [anon_sym_int72] = ACTIONS(763),
    [anon_sym_int80] = ACTIONS(763),
    [anon_sym_int88] = ACTIONS(763),
    [anon_sym_int96] = ACTIONS(763),
    [anon_sym_int104] = ACTIONS(763),
    [anon_sym_int112] = ACTIONS(763),
    [anon_sym_int120] = ACTIONS(763),
    [anon_sym_int128] = ACTIONS(763),
    [anon_sym_int136] = ACTIONS(763),
    [anon_sym_int144] = ACTIONS(763),
    [anon_sym_int152] = ACTIONS(763),
    [anon_sym_int160] = ACTIONS(763),
    [anon_sym_int168] = ACTIONS(763),
    [anon_sym_int176] = ACTIONS(763),
    [anon_sym_int184] = ACTIONS(763),
    [anon_sym_int192] = ACTIONS(763),
    [anon_sym_int200] = ACTIONS(763),
    [anon_sym_int208] = ACTIONS(763),
    [anon_sym_int216] = ACTIONS(763),
    [anon_sym_int224] = ACTIONS(763),
    [anon_sym_int232] = ACTIONS(763),
    [anon_sym_int240] = ACTIONS(763),
    [anon_sym_int248] = ACTIONS(763),
    [anon_sym_int256] = ACTIONS(763),
    [anon_sym_uint] = ACTIONS(763),
    [anon_sym_uint8] = ACTIONS(763),
    [anon_sym_uint16] = ACTIONS(763),
    [anon_sym_uint24] = ACTIONS(763),
    [anon_sym_uint32] = ACTIONS(763),
    [anon_sym_uint40] = ACTIONS(763),
    [anon_sym_uint48] = ACTIONS(763),
    [anon_sym_uint56] = ACTIONS(763),
    [anon_sym_uint64] = ACTIONS(763),
    [anon_sym_uint72] = ACTIONS(763),
    [anon_sym_uint80] = ACTIONS(763),
    [anon_sym_uint88] = ACTIONS(763),
    [anon_sym_uint96] = ACTIONS(763),
    [anon_sym_uint104] = ACTIONS(763),
    [anon_sym_uint112] = ACTIONS(763),
    [anon_sym_uint120] = ACTIONS(763),
    [anon_sym_uint128] = ACTIONS(763),
    [anon_sym_uint136] = ACTIONS(763),
    [anon_sym_uint144] = ACTIONS(763),
    [anon_sym_uint152] = ACTIONS(763),
    [anon_sym_uint160] = ACTIONS(763),
    [anon_sym_uint168] = ACTIONS(763),
    [anon_sym_uint176] = ACTIONS(763),
    [anon_sym_uint184] = ACTIONS(763),
    [anon_sym_uint192] = ACTIONS(763),
    [anon_sym_uint200] = ACTIONS(763),
    [anon_sym_uint208] = ACTIONS(763),
    [anon_sym_uint216] = ACTIONS(763),
    [anon_sym_uint224] = ACTIONS(763),
    [anon_sym_uint232] = ACTIONS(763),
    [anon_sym_uint240] = ACTIONS(763),
    [anon_sym_uint248] = ACTIONS(763),
    [anon_sym_uint256] = ACTIONS(763),
    [anon_sym_bytes] = ACTIONS(763),
    [anon_sym_bytes1] = ACTIONS(763),
    [anon_sym_bytes2] = ACTIONS(763),
    [anon_sym_bytes3] = ACTIONS(763),
    [anon_sym_bytes4] = ACTIONS(763),
    [anon_sym_bytes5] = ACTIONS(763),
    [anon_sym_bytes6] = ACTIONS(763),
    [anon_sym_bytes7] = ACTIONS(763),
    [anon_sym_bytes8] = ACTIONS(763),
    [anon_sym_bytes9] = ACTIONS(763),
    [anon_sym_bytes10] = ACTIONS(763),
    [anon_sym_bytes11] = ACTIONS(763),
    [anon_sym_bytes12] = ACTIONS(763),
    [anon_sym_bytes13] = ACTIONS(763),
    [anon_sym_bytes14] = ACTIONS(763),
    [anon_sym_bytes15] = ACTIONS(763),
    [anon_sym_bytes16] = ACTIONS(763),
    [anon_sym_bytes17] = ACTIONS(763),
    [anon_sym_bytes18] = ACTIONS(763),
    [anon_sym_bytes19] = ACTIONS(763),
    [anon_sym_bytes20] = ACTIONS(763),
    [anon_sym_bytes21] = ACTIONS(763),
    [anon_sym_bytes22] = ACTIONS(763),
    [anon_sym_bytes23] = ACTIONS(763),
    [anon_sym_bytes24] = ACTIONS(763),
    [anon_sym_bytes25] = ACTIONS(763),
    [anon_sym_bytes26] = ACTIONS(763),
    [anon_sym_bytes27] = ACTIONS(763),
    [anon_sym_bytes28] = ACTIONS(763),
    [anon_sym_bytes29] = ACTIONS(763),
    [anon_sym_bytes30] = ACTIONS(763),
    [anon_sym_bytes31] = ACTIONS(763),
    [anon_sym_bytes32] = ACTIONS(763),
    [anon_sym_fixed] = ACTIONS(763),
    [aux_sym__fixed_token1] = ACTIONS(763),
    [anon_sym_ufixed] = ACTIONS(763),
    [aux_sym__ufixed_token1] = ACTIONS(763),
    [sym_comment] = ACTIONS(3),
  },
  [190] = {
    [sym_identifier] = ACTIONS(713),
    [anon_sym_RBRACE] = ACTIONS(711),
    [anon_sym_type] = ACTIONS(713),
    [anon_sym_error] = ACTIONS(713),
    [anon_sym_struct] = ACTIONS(713),
    [anon_sym_enum] = ACTIONS(713),
    [anon_sym_event] = ACTIONS(713),
    [anon_sym_using] = ACTIONS(713),
    [anon_sym_function] = ACTIONS(713),
    [anon_sym_byte] = ACTIONS(713),
    [anon_sym_address] = ACTIONS(713),
    [anon_sym_var] = ACTIONS(713),
    [anon_sym_modifier] = ACTIONS(713),
    [anon_sym_constructor] = ACTIONS(713),
    [anon_sym_fallback] = ACTIONS(713),
    [anon_sym_receive] = ACTIONS(713),
    [anon_sym_mapping] = ACTIONS(713),
    [anon_sym_bool] = ACTIONS(713),
    [anon_sym_string] = ACTIONS(713),
    [anon_sym_int] = ACTIONS(713),
    [anon_sym_int8] = ACTIONS(713),
    [anon_sym_int16] = ACTIONS(713),
    [anon_sym_int24] = ACTIONS(713),
    [anon_sym_int32] = ACTIONS(713),
    [anon_sym_int40] = ACTIONS(713),
    [anon_sym_int48] = ACTIONS(713),
    [anon_sym_int56] = ACTIONS(713),
    [anon_sym_int64] = ACTIONS(713),
    [anon_sym_int72] = ACTIONS(713),
    [anon_sym_int80] = ACTIONS(713),
    [anon_sym_int88] = ACTIONS(713),
    [anon_sym_int96] = ACTIONS(713),
    [anon_sym_int104] = ACTIONS(713),
    [anon_sym_int112] = ACTIONS(713),
    [anon_sym_int120] = ACTIONS(713),
    [anon_sym_int128] = ACTIONS(713),
    [anon_sym_int136] = ACTIONS(713),
    [anon_sym_int144] = ACTIONS(713),
    [anon_sym_int152] = ACTIONS(713),
    [anon_sym_int160] = ACTIONS(713),
    [anon_sym_int168] = ACTIONS(713),
    [anon_sym_int176] = ACTIONS(713),
    [anon_sym_int184] = ACTIONS(713),
    [anon_sym_int192] = ACTIONS(713),
    [anon_sym_int200] = ACTIONS(713),
    [anon_sym_int208] = ACTIONS(713),
    [anon_sym_int216] = ACTIONS(713),
    [anon_sym_int224] = ACTIONS(713),
    [anon_sym_int232] = ACTIONS(713),
    [anon_sym_int240] = ACTIONS(713),
    [anon_sym_int248] = ACTIONS(713),
    [anon_sym_int256] = ACTIONS(713),
    [anon_sym_uint] = ACTIONS(713),
    [anon_sym_uint8] = ACTIONS(713),
    [anon_sym_uint16] = ACTIONS(713),
    [anon_sym_uint24] = ACTIONS(713),
    [anon_sym_uint32] = ACTIONS(713),
    [anon_sym_uint40] = ACTIONS(713),
    [anon_sym_uint48] = ACTIONS(713),
    [anon_sym_uint56] = ACTIONS(713),
    [anon_sym_uint64] = ACTIONS(713),
    [anon_sym_uint72] = ACTIONS(713),
    [anon_sym_uint80] = ACTIONS(713),
    [anon_sym_uint88] = ACTIONS(713),
    [anon_sym_uint96] = ACTIONS(713),
    [anon_sym_uint104] = ACTIONS(713),
    [anon_sym_uint112] = ACTIONS(713),
    [anon_sym_uint120] = ACTIONS(713),
    [anon_sym_uint128] = ACTIONS(713),
    [anon_sym_uint136] = ACTIONS(713),
    [anon_sym_uint144] = ACTIONS(713),
    [anon_sym_uint152] = ACTIONS(713),
    [anon_sym_uint160] = ACTIONS(713),
    [anon_sym_uint168] = ACTIONS(713),
    [anon_sym_uint176] = ACTIONS(713),
    [anon_sym_uint184] = ACTIONS(713),
    [anon_sym_uint192] = ACTIONS(713),
    [anon_sym_uint200] = ACTIONS(713),
    [anon_sym_uint208] = ACTIONS(713),
    [anon_sym_uint216] = ACTIONS(713),
    [anon_sym_uint224] = ACTIONS(713),
    [anon_sym_uint232] = ACTIONS(713),
    [anon_sym_uint240] = ACTIONS(713),
    [anon_sym_uint248] = ACTIONS(713),
    [anon_sym_uint256] = ACTIONS(713),
    [anon_sym_bytes] = ACTIONS(713),
    [anon_sym_bytes1] = ACTIONS(713),
    [anon_sym_bytes2] = ACTIONS(713),
    [anon_sym_bytes3] = ACTIONS(713),
    [anon_sym_bytes4] = ACTIONS(713),
    [anon_sym_bytes5] = ACTIONS(713),
    [anon_sym_bytes6] = ACTIONS(713),
    [anon_sym_bytes7] = ACTIONS(713),
    [anon_sym_bytes8] = ACTIONS(713),
    [anon_sym_bytes9] = ACTIONS(713),
    [anon_sym_bytes10] = ACTIONS(713),
    [anon_sym_bytes11] = ACTIONS(713),
    [anon_sym_bytes12] = ACTIONS(713),
    [anon_sym_bytes13] = ACTIONS(713),
    [anon_sym_bytes14] = ACTIONS(713),
    [anon_sym_bytes15] = ACTIONS(713),
    [anon_sym_bytes16] = ACTIONS(713),
    [anon_sym_bytes17] = ACTIONS(713),
    [anon_sym_bytes18] = ACTIONS(713),
    [anon_sym_bytes19] = ACTIONS(713),
    [anon_sym_bytes20] = ACTIONS(713),
    [anon_sym_bytes21] = ACTIONS(713),
    [anon_sym_bytes22] = ACTIONS(713),
    [anon_sym_bytes23] = ACTIONS(713),
    [anon_sym_bytes24] = ACTIONS(713),
    [anon_sym_bytes25] = ACTIONS(713),
    [anon_sym_bytes26] = ACTIONS(713),
    [anon_sym_bytes27] = ACTIONS(713),
    [anon_sym_bytes28] = ACTIONS(713),
    [anon_sym_bytes29] = ACTIONS(713),
    [anon_sym_bytes30] = ACTIONS(713),
    [anon_sym_bytes31] = ACTIONS(713),
    [anon_sym_bytes32] = ACTIONS(713),
    [anon_sym_fixed] = ACTIONS(713),
    [aux_sym__fixed_token1] = ACTIONS(713),
    [anon_sym_ufixed] = ACTIONS(713),
    [aux_sym__ufixed_token1] = ACTIONS(713),
    [sym_comment] = ACTIONS(3),
  },
  [191] = {
    [sym_identifier] = ACTIONS(681),
    [anon_sym_RBRACE] = ACTIONS(679),
    [anon_sym_type] = ACTIONS(681),
    [anon_sym_error] = ACTIONS(681),
    [anon_sym_struct] = ACTIONS(681),
    [anon_sym_enum] = ACTIONS(681),
    [anon_sym_event] = ACTIONS(681),
    [anon_sym_using] = ACTIONS(681),
    [anon_sym_function] = ACTIONS(681),
    [anon_sym_byte] = ACTIONS(681),
    [anon_sym_address] = ACTIONS(681),
    [anon_sym_var] = ACTIONS(681),
    [anon_sym_modifier] = ACTIONS(681),
    [anon_sym_constructor] = ACTIONS(681),
    [anon_sym_fallback] = ACTIONS(681),
    [anon_sym_receive] = ACTIONS(681),
    [anon_sym_mapping] = ACTIONS(681),
    [anon_sym_bool] = ACTIONS(681),
    [anon_sym_string] = ACTIONS(681),
    [anon_sym_int] = ACTIONS(681),
    [anon_sym_int8] = ACTIONS(681),
    [anon_sym_int16] = ACTIONS(681),
    [anon_sym_int24] = ACTIONS(681),
    [anon_sym_int32] = ACTIONS(681),
    [anon_sym_int40] = ACTIONS(681),
    [anon_sym_int48] = ACTIONS(681),
    [anon_sym_int56] = ACTIONS(681),
    [anon_sym_int64] = ACTIONS(681),
    [anon_sym_int72] = ACTIONS(681),
    [anon_sym_int80] = ACTIONS(681),
    [anon_sym_int88] = ACTIONS(681),
    [anon_sym_int96] = ACTIONS(681),
    [anon_sym_int104] = ACTIONS(681),
    [anon_sym_int112] = ACTIONS(681),
    [anon_sym_int120] = ACTIONS(681),
    [anon_sym_int128] = ACTIONS(681),
    [anon_sym_int136] = ACTIONS(681),
    [anon_sym_int144] = ACTIONS(681),
    [anon_sym_int152] = ACTIONS(681),
    [anon_sym_int160] = ACTIONS(681),
    [anon_sym_int168] = ACTIONS(681),
    [anon_sym_int176] = ACTIONS(681),
    [anon_sym_int184] = ACTIONS(681),
    [anon_sym_int192] = ACTIONS(681),
    [anon_sym_int200] = ACTIONS(681),
    [anon_sym_int208] = ACTIONS(681),
    [anon_sym_int216] = ACTIONS(681),
    [anon_sym_int224] = ACTIONS(681),
    [anon_sym_int232] = ACTIONS(681),
    [anon_sym_int240] = ACTIONS(681),
    [anon_sym_int248] = ACTIONS(681),
    [anon_sym_int256] = ACTIONS(681),
    [anon_sym_uint] = ACTIONS(681),
    [anon_sym_uint8] = ACTIONS(681),
    [anon_sym_uint16] = ACTIONS(681),
    [anon_sym_uint24] = ACTIONS(681),
    [anon_sym_uint32] = ACTIONS(681),
    [anon_sym_uint40] = ACTIONS(681),
    [anon_sym_uint48] = ACTIONS(681),
    [anon_sym_uint56] = ACTIONS(681),
    [anon_sym_uint64] = ACTIONS(681),
    [anon_sym_uint72] = ACTIONS(681),
    [anon_sym_uint80] = ACTIONS(681),
    [anon_sym_uint88] = ACTIONS(681),
    [anon_sym_uint96] = ACTIONS(681),
    [anon_sym_uint104] = ACTIONS(681),
    [anon_sym_uint112] = ACTIONS(681),
    [anon_sym_uint120] = ACTIONS(681),
    [anon_sym_uint128] = ACTIONS(681),
    [anon_sym_uint136] = ACTIONS(681),
    [anon_sym_uint144] = ACTIONS(681),
    [anon_sym_uint152] = ACTIONS(681),
    [anon_sym_uint160] = ACTIONS(681),
    [anon_sym_uint168] = ACTIONS(681),
    [anon_sym_uint176] = ACTIONS(681),
    [anon_sym_uint184] = ACTIONS(681),
    [anon_sym_uint192] = ACTIONS(681),
    [anon_sym_uint200] = ACTIONS(681),
    [anon_sym_uint208] = ACTIONS(681),
    [anon_sym_uint216] = ACTIONS(681),
    [anon_sym_uint224] = ACTIONS(681),
    [anon_sym_uint232] = ACTIONS(681),
    [anon_sym_uint240] = ACTIONS(681),
    [anon_sym_uint248] = ACTIONS(681),
    [anon_sym_uint256] = ACTIONS(681),
    [anon_sym_bytes] = ACTIONS(681),
    [anon_sym_bytes1] = ACTIONS(681),
    [anon_sym_bytes2] = ACTIONS(681),
    [anon_sym_bytes3] = ACTIONS(681),
    [anon_sym_bytes4] = ACTIONS(681),
    [anon_sym_bytes5] = ACTIONS(681),
    [anon_sym_bytes6] = ACTIONS(681),
    [anon_sym_bytes7] = ACTIONS(681),
    [anon_sym_bytes8] = ACTIONS(681),
    [anon_sym_bytes9] = ACTIONS(681),
    [anon_sym_bytes10] = ACTIONS(681),
    [anon_sym_bytes11] = ACTIONS(681),
    [anon_sym_bytes12] = ACTIONS(681),
    [anon_sym_bytes13] = ACTIONS(681),
    [anon_sym_bytes14] = ACTIONS(681),
    [anon_sym_bytes15] = ACTIONS(681),
    [anon_sym_bytes16] = ACTIONS(681),
    [anon_sym_bytes17] = ACTIONS(681),
    [anon_sym_bytes18] = ACTIONS(681),
    [anon_sym_bytes19] = ACTIONS(681),
    [anon_sym_bytes20] = ACTIONS(681),
    [anon_sym_bytes21] = ACTIONS(681),
    [anon_sym_bytes22] = ACTIONS(681),
    [anon_sym_bytes23] = ACTIONS(681),
    [anon_sym_bytes24] = ACTIONS(681),
    [anon_sym_bytes25] = ACTIONS(681),
    [anon_sym_bytes26] = ACTIONS(681),
    [anon_sym_bytes27] = ACTIONS(681),
    [anon_sym_bytes28] = ACTIONS(681),
    [anon_sym_bytes29] = ACTIONS(681),
    [anon_sym_bytes30] = ACTIONS(681),
    [anon_sym_bytes31] = ACTIONS(681),
    [anon_sym_bytes32] = ACTIONS(681),
    [anon_sym_fixed] = ACTIONS(681),
    [aux_sym__fixed_token1] = ACTIONS(681),
    [anon_sym_ufixed] = ACTIONS(681),
    [aux_sym__ufixed_token1] = ACTIONS(681),
    [sym_comment] = ACTIONS(3),
  },
  [192] = {
    [ts_builtin_sym_end] = ACTIONS(657),
    [sym_identifier] = ACTIONS(655),
    [anon_sym_pragma] = ACTIONS(655),
    [anon_sym_import] = ACTIONS(655),
    [anon_sym_type] = ACTIONS(655),
    [anon_sym_abstract] = ACTIONS(655),
    [anon_sym_contract] = ACTIONS(655),
    [anon_sym_error] = ACTIONS(655),
    [anon_sym_interface] = ACTIONS(655),
    [anon_sym_library] = ACTIONS(655),
    [anon_sym_struct] = ACTIONS(655),
    [anon_sym_enum] = ACTIONS(655),
    [anon_sym_function] = ACTIONS(655),
    [anon_sym_byte] = ACTIONS(655),
    [anon_sym_address] = ACTIONS(655),
    [anon_sym_var] = ACTIONS(655),
    [anon_sym_mapping] = ACTIONS(655),
    [anon_sym_bool] = ACTIONS(655),
    [anon_sym_string] = ACTIONS(655),
    [anon_sym_int] = ACTIONS(655),
    [anon_sym_int8] = ACTIONS(655),
    [anon_sym_int16] = ACTIONS(655),
    [anon_sym_int24] = ACTIONS(655),
    [anon_sym_int32] = ACTIONS(655),
    [anon_sym_int40] = ACTIONS(655),
    [anon_sym_int48] = ACTIONS(655),
    [anon_sym_int56] = ACTIONS(655),
    [anon_sym_int64] = ACTIONS(655),
    [anon_sym_int72] = ACTIONS(655),
    [anon_sym_int80] = ACTIONS(655),
    [anon_sym_int88] = ACTIONS(655),
    [anon_sym_int96] = ACTIONS(655),
    [anon_sym_int104] = ACTIONS(655),
    [anon_sym_int112] = ACTIONS(655),
    [anon_sym_int120] = ACTIONS(655),
    [anon_sym_int128] = ACTIONS(655),
    [anon_sym_int136] = ACTIONS(655),
    [anon_sym_int144] = ACTIONS(655),
    [anon_sym_int152] = ACTIONS(655),
    [anon_sym_int160] = ACTIONS(655),
    [anon_sym_int168] = ACTIONS(655),
    [anon_sym_int176] = ACTIONS(655),
    [anon_sym_int184] = ACTIONS(655),
    [anon_sym_int192] = ACTIONS(655),
    [anon_sym_int200] = ACTIONS(655),
    [anon_sym_int208] = ACTIONS(655),
    [anon_sym_int216] = ACTIONS(655),
    [anon_sym_int224] = ACTIONS(655),
    [anon_sym_int232] = ACTIONS(655),
    [anon_sym_int240] = ACTIONS(655),
    [anon_sym_int248] = ACTIONS(655),
    [anon_sym_int256] = ACTIONS(655),
    [anon_sym_uint] = ACTIONS(655),
    [anon_sym_uint8] = ACTIONS(655),
    [anon_sym_uint16] = ACTIONS(655),
    [anon_sym_uint24] = ACTIONS(655),
    [anon_sym_uint32] = ACTIONS(655),
    [anon_sym_uint40] = ACTIONS(655),
    [anon_sym_uint48] = ACTIONS(655),
    [anon_sym_uint56] = ACTIONS(655),
    [anon_sym_uint64] = ACTIONS(655),
    [anon_sym_uint72] = ACTIONS(655),
    [anon_sym_uint80] = ACTIONS(655),
    [anon_sym_uint88] = ACTIONS(655),
    [anon_sym_uint96] = ACTIONS(655),
    [anon_sym_uint104] = ACTIONS(655),
    [anon_sym_uint112] = ACTIONS(655),
    [anon_sym_uint120] = ACTIONS(655),
    [anon_sym_uint128] = ACTIONS(655),
    [anon_sym_uint136] = ACTIONS(655),
    [anon_sym_uint144] = ACTIONS(655),
    [anon_sym_uint152] = ACTIONS(655),
    [anon_sym_uint160] = ACTIONS(655),
    [anon_sym_uint168] = ACTIONS(655),
    [anon_sym_uint176] = ACTIONS(655),
    [anon_sym_uint184] = ACTIONS(655),
    [anon_sym_uint192] = ACTIONS(655),
    [anon_sym_uint200] = ACTIONS(655),
    [anon_sym_uint208] = ACTIONS(655),
    [anon_sym_uint216] = ACTIONS(655),
    [anon_sym_uint224] = ACTIONS(655),
    [anon_sym_uint232] = ACTIONS(655),
    [anon_sym_uint240] = ACTIONS(655),
    [anon_sym_uint248] = ACTIONS(655),
    [anon_sym_uint256] = ACTIONS(655),
    [anon_sym_bytes] = ACTIONS(655),
    [anon_sym_bytes1] = ACTIONS(655),
    [anon_sym_bytes2] = ACTIONS(655),
    [anon_sym_bytes3] = ACTIONS(655),
    [anon_sym_bytes4] = ACTIONS(655),
    [anon_sym_bytes5] = ACTIONS(655),
    [anon_sym_bytes6] = ACTIONS(655),
    [anon_sym_bytes7] = ACTIONS(655),
    [anon_sym_bytes8] = ACTIONS(655),
    [anon_sym_bytes9] = ACTIONS(655),
    [anon_sym_bytes10] = ACTIONS(655),
    [anon_sym_bytes11] = ACTIONS(655),
    [anon_sym_bytes12] = ACTIONS(655),
    [anon_sym_bytes13] = ACTIONS(655),
    [anon_sym_bytes14] = ACTIONS(655),
    [anon_sym_bytes15] = ACTIONS(655),
    [anon_sym_bytes16] = ACTIONS(655),
    [anon_sym_bytes17] = ACTIONS(655),
    [anon_sym_bytes18] = ACTIONS(655),
    [anon_sym_bytes19] = ACTIONS(655),
    [anon_sym_bytes20] = ACTIONS(655),
    [anon_sym_bytes21] = ACTIONS(655),
    [anon_sym_bytes22] = ACTIONS(655),
    [anon_sym_bytes23] = ACTIONS(655),
    [anon_sym_bytes24] = ACTIONS(655),
    [anon_sym_bytes25] = ACTIONS(655),
    [anon_sym_bytes26] = ACTIONS(655),
    [anon_sym_bytes27] = ACTIONS(655),
    [anon_sym_bytes28] = ACTIONS(655),
    [anon_sym_bytes29] = ACTIONS(655),
    [anon_sym_bytes30] = ACTIONS(655),
    [anon_sym_bytes31] = ACTIONS(655),
    [anon_sym_bytes32] = ACTIONS(655),
    [anon_sym_fixed] = ACTIONS(655),
    [aux_sym__fixed_token1] = ACTIONS(655),
    [anon_sym_ufixed] = ACTIONS(655),
    [aux_sym__ufixed_token1] = ACTIONS(655),
    [sym_comment] = ACTIONS(3),
  },
  [193] = {
    [ts_builtin_sym_end] = ACTIONS(653),
    [sym_identifier] = ACTIONS(651),
    [anon_sym_pragma] = ACTIONS(651),
    [anon_sym_import] = ACTIONS(651),
    [anon_sym_type] = ACTIONS(651),
    [anon_sym_abstract] = ACTIONS(651),
    [anon_sym_contract] = ACTIONS(651),
    [anon_sym_error] = ACTIONS(651),
    [anon_sym_interface] = ACTIONS(651),
    [anon_sym_library] = ACTIONS(651),
    [anon_sym_struct] = ACTIONS(651),
    [anon_sym_enum] = ACTIONS(651),
    [anon_sym_function] = ACTIONS(651),
    [anon_sym_byte] = ACTIONS(651),
    [anon_sym_address] = ACTIONS(651),
    [anon_sym_var] = ACTIONS(651),
    [anon_sym_mapping] = ACTIONS(651),
    [anon_sym_bool] = ACTIONS(651),
    [anon_sym_string] = ACTIONS(651),
    [anon_sym_int] = ACTIONS(651),
    [anon_sym_int8] = ACTIONS(651),
    [anon_sym_int16] = ACTIONS(651),
    [anon_sym_int24] = ACTIONS(651),
    [anon_sym_int32] = ACTIONS(651),
    [anon_sym_int40] = ACTIONS(651),
    [anon_sym_int48] = ACTIONS(651),
    [anon_sym_int56] = ACTIONS(651),
    [anon_sym_int64] = ACTIONS(651),
    [anon_sym_int72] = ACTIONS(651),
    [anon_sym_int80] = ACTIONS(651),
    [anon_sym_int88] = ACTIONS(651),
    [anon_sym_int96] = ACTIONS(651),
    [anon_sym_int104] = ACTIONS(651),
    [anon_sym_int112] = ACTIONS(651),
    [anon_sym_int120] = ACTIONS(651),
    [anon_sym_int128] = ACTIONS(651),
    [anon_sym_int136] = ACTIONS(651),
    [anon_sym_int144] = ACTIONS(651),
    [anon_sym_int152] = ACTIONS(651),
    [anon_sym_int160] = ACTIONS(651),
    [anon_sym_int168] = ACTIONS(651),
    [anon_sym_int176] = ACTIONS(651),
    [anon_sym_int184] = ACTIONS(651),
    [anon_sym_int192] = ACTIONS(651),
    [anon_sym_int200] = ACTIONS(651),
    [anon_sym_int208] = ACTIONS(651),
    [anon_sym_int216] = ACTIONS(651),
    [anon_sym_int224] = ACTIONS(651),
    [anon_sym_int232] = ACTIONS(651),
    [anon_sym_int240] = ACTIONS(651),
    [anon_sym_int248] = ACTIONS(651),
    [anon_sym_int256] = ACTIONS(651),
    [anon_sym_uint] = ACTIONS(651),
    [anon_sym_uint8] = ACTIONS(651),
    [anon_sym_uint16] = ACTIONS(651),
    [anon_sym_uint24] = ACTIONS(651),
    [anon_sym_uint32] = ACTIONS(651),
    [anon_sym_uint40] = ACTIONS(651),
    [anon_sym_uint48] = ACTIONS(651),
    [anon_sym_uint56] = ACTIONS(651),
    [anon_sym_uint64] = ACTIONS(651),
    [anon_sym_uint72] = ACTIONS(651),
    [anon_sym_uint80] = ACTIONS(651),
    [anon_sym_uint88] = ACTIONS(651),
    [anon_sym_uint96] = ACTIONS(651),
    [anon_sym_uint104] = ACTIONS(651),
    [anon_sym_uint112] = ACTIONS(651),
    [anon_sym_uint120] = ACTIONS(651),
    [anon_sym_uint128] = ACTIONS(651),
    [anon_sym_uint136] = ACTIONS(651),
    [anon_sym_uint144] = ACTIONS(651),
    [anon_sym_uint152] = ACTIONS(651),
    [anon_sym_uint160] = ACTIONS(651),
    [anon_sym_uint168] = ACTIONS(651),
    [anon_sym_uint176] = ACTIONS(651),
    [anon_sym_uint184] = ACTIONS(651),
    [anon_sym_uint192] = ACTIONS(651),
    [anon_sym_uint200] = ACTIONS(651),
    [anon_sym_uint208] = ACTIONS(651),
    [anon_sym_uint216] = ACTIONS(651),
    [anon_sym_uint224] = ACTIONS(651),
    [anon_sym_uint232] = ACTIONS(651),
    [anon_sym_uint240] = ACTIONS(651),
    [anon_sym_uint248] = ACTIONS(651),
    [anon_sym_uint256] = ACTIONS(651),
    [anon_sym_bytes] = ACTIONS(651),
    [anon_sym_bytes1] = ACTIONS(651),
    [anon_sym_bytes2] = ACTIONS(651),
    [anon_sym_bytes3] = ACTIONS(651),
    [anon_sym_bytes4] = ACTIONS(651),
    [anon_sym_bytes5] = ACTIONS(651),
    [anon_sym_bytes6] = ACTIONS(651),
    [anon_sym_bytes7] = ACTIONS(651),
    [anon_sym_bytes8] = ACTIONS(651),
    [anon_sym_bytes9] = ACTIONS(651),
    [anon_sym_bytes10] = ACTIONS(651),
    [anon_sym_bytes11] = ACTIONS(651),
    [anon_sym_bytes12] = ACTIONS(651),
    [anon_sym_bytes13] = ACTIONS(651),
    [anon_sym_bytes14] = ACTIONS(651),
    [anon_sym_bytes15] = ACTIONS(651),
    [anon_sym_bytes16] = ACTIONS(651),
    [anon_sym_bytes17] = ACTIONS(651),
    [anon_sym_bytes18] = ACTIONS(651),
    [anon_sym_bytes19] = ACTIONS(651),
    [anon_sym_bytes20] = ACTIONS(651),
    [anon_sym_bytes21] = ACTIONS(651),
    [anon_sym_bytes22] = ACTIONS(651),
    [anon_sym_bytes23] = ACTIONS(651),
    [anon_sym_bytes24] = ACTIONS(651),
    [anon_sym_bytes25] = ACTIONS(651),
    [anon_sym_bytes26] = ACTIONS(651),
    [anon_sym_bytes27] = ACTIONS(651),
    [anon_sym_bytes28] = ACTIONS(651),
    [anon_sym_bytes29] = ACTIONS(651),
    [anon_sym_bytes30] = ACTIONS(651),
    [anon_sym_bytes31] = ACTIONS(651),
    [anon_sym_bytes32] = ACTIONS(651),
    [anon_sym_fixed] = ACTIONS(651),
    [aux_sym__fixed_token1] = ACTIONS(651),
    [anon_sym_ufixed] = ACTIONS(651),
    [aux_sym__ufixed_token1] = ACTIONS(651),
    [sym_comment] = ACTIONS(3),
  },
  [194] = {
    [ts_builtin_sym_end] = ACTIONS(641),
    [sym_identifier] = ACTIONS(639),
    [anon_sym_pragma] = ACTIONS(639),
    [anon_sym_import] = ACTIONS(639),
    [anon_sym_type] = ACTIONS(639),
    [anon_sym_abstract] = ACTIONS(639),
    [anon_sym_contract] = ACTIONS(639),
    [anon_sym_error] = ACTIONS(639),
    [anon_sym_interface] = ACTIONS(639),
    [anon_sym_library] = ACTIONS(639),
    [anon_sym_struct] = ACTIONS(639),
    [anon_sym_enum] = ACTIONS(639),
    [anon_sym_function] = ACTIONS(639),
    [anon_sym_byte] = ACTIONS(639),
    [anon_sym_address] = ACTIONS(639),
    [anon_sym_var] = ACTIONS(639),
    [anon_sym_mapping] = ACTIONS(639),
    [anon_sym_bool] = ACTIONS(639),
    [anon_sym_string] = ACTIONS(639),
    [anon_sym_int] = ACTIONS(639),
    [anon_sym_int8] = ACTIONS(639),
    [anon_sym_int16] = ACTIONS(639),
    [anon_sym_int24] = ACTIONS(639),
    [anon_sym_int32] = ACTIONS(639),
    [anon_sym_int40] = ACTIONS(639),
    [anon_sym_int48] = ACTIONS(639),
    [anon_sym_int56] = ACTIONS(639),
    [anon_sym_int64] = ACTIONS(639),
    [anon_sym_int72] = ACTIONS(639),
    [anon_sym_int80] = ACTIONS(639),
    [anon_sym_int88] = ACTIONS(639),
    [anon_sym_int96] = ACTIONS(639),
    [anon_sym_int104] = ACTIONS(639),
    [anon_sym_int112] = ACTIONS(639),
    [anon_sym_int120] = ACTIONS(639),
    [anon_sym_int128] = ACTIONS(639),
    [anon_sym_int136] = ACTIONS(639),
    [anon_sym_int144] = ACTIONS(639),
    [anon_sym_int152] = ACTIONS(639),
    [anon_sym_int160] = ACTIONS(639),
    [anon_sym_int168] = ACTIONS(639),
    [anon_sym_int176] = ACTIONS(639),
    [anon_sym_int184] = ACTIONS(639),
    [anon_sym_int192] = ACTIONS(639),
    [anon_sym_int200] = ACTIONS(639),
    [anon_sym_int208] = ACTIONS(639),
    [anon_sym_int216] = ACTIONS(639),
    [anon_sym_int224] = ACTIONS(639),
    [anon_sym_int232] = ACTIONS(639),
    [anon_sym_int240] = ACTIONS(639),
    [anon_sym_int248] = ACTIONS(639),
    [anon_sym_int256] = ACTIONS(639),
    [anon_sym_uint] = ACTIONS(639),
    [anon_sym_uint8] = ACTIONS(639),
    [anon_sym_uint16] = ACTIONS(639),
    [anon_sym_uint24] = ACTIONS(639),
    [anon_sym_uint32] = ACTIONS(639),
    [anon_sym_uint40] = ACTIONS(639),
    [anon_sym_uint48] = ACTIONS(639),
    [anon_sym_uint56] = ACTIONS(639),
    [anon_sym_uint64] = ACTIONS(639),
    [anon_sym_uint72] = ACTIONS(639),
    [anon_sym_uint80] = ACTIONS(639),
    [anon_sym_uint88] = ACTIONS(639),
    [anon_sym_uint96] = ACTIONS(639),
    [anon_sym_uint104] = ACTIONS(639),
    [anon_sym_uint112] = ACTIONS(639),
    [anon_sym_uint120] = ACTIONS(639),
    [anon_sym_uint128] = ACTIONS(639),
    [anon_sym_uint136] = ACTIONS(639),
    [anon_sym_uint144] = ACTIONS(639),
    [anon_sym_uint152] = ACTIONS(639),
    [anon_sym_uint160] = ACTIONS(639),
    [anon_sym_uint168] = ACTIONS(639),
    [anon_sym_uint176] = ACTIONS(639),
    [anon_sym_uint184] = ACTIONS(639),
    [anon_sym_uint192] = ACTIONS(639),
    [anon_sym_uint200] = ACTIONS(639),
    [anon_sym_uint208] = ACTIONS(639),
    [anon_sym_uint216] = ACTIONS(639),
    [anon_sym_uint224] = ACTIONS(639),
    [anon_sym_uint232] = ACTIONS(639),
    [anon_sym_uint240] = ACTIONS(639),
    [anon_sym_uint248] = ACTIONS(639),
    [anon_sym_uint256] = ACTIONS(639),
    [anon_sym_bytes] = ACTIONS(639),
    [anon_sym_bytes1] = ACTIONS(639),
    [anon_sym_bytes2] = ACTIONS(639),
    [anon_sym_bytes3] = ACTIONS(639),
    [anon_sym_bytes4] = ACTIONS(639),
    [anon_sym_bytes5] = ACTIONS(639),
    [anon_sym_bytes6] = ACTIONS(639),
    [anon_sym_bytes7] = ACTIONS(639),
    [anon_sym_bytes8] = ACTIONS(639),
    [anon_sym_bytes9] = ACTIONS(639),
    [anon_sym_bytes10] = ACTIONS(639),
    [anon_sym_bytes11] = ACTIONS(639),
    [anon_sym_bytes12] = ACTIONS(639),
    [anon_sym_bytes13] = ACTIONS(639),
    [anon_sym_bytes14] = ACTIONS(639),
    [anon_sym_bytes15] = ACTIONS(639),
    [anon_sym_bytes16] = ACTIONS(639),
    [anon_sym_bytes17] = ACTIONS(639),
    [anon_sym_bytes18] = ACTIONS(639),
    [anon_sym_bytes19] = ACTIONS(639),
    [anon_sym_bytes20] = ACTIONS(639),
    [anon_sym_bytes21] = ACTIONS(639),
    [anon_sym_bytes22] = ACTIONS(639),
    [anon_sym_bytes23] = ACTIONS(639),
    [anon_sym_bytes24] = ACTIONS(639),
    [anon_sym_bytes25] = ACTIONS(639),
    [anon_sym_bytes26] = ACTIONS(639),
    [anon_sym_bytes27] = ACTIONS(639),
    [anon_sym_bytes28] = ACTIONS(639),
    [anon_sym_bytes29] = ACTIONS(639),
    [anon_sym_bytes30] = ACTIONS(639),
    [anon_sym_bytes31] = ACTIONS(639),
    [anon_sym_bytes32] = ACTIONS(639),
    [anon_sym_fixed] = ACTIONS(639),
    [aux_sym__fixed_token1] = ACTIONS(639),
    [anon_sym_ufixed] = ACTIONS(639),
    [aux_sym__ufixed_token1] = ACTIONS(639),
    [sym_comment] = ACTIONS(3),
  },
  [195] = {
    [ts_builtin_sym_end] = ACTIONS(767),
    [sym_identifier] = ACTIONS(769),
    [anon_sym_pragma] = ACTIONS(769),
    [anon_sym_import] = ACTIONS(769),
    [anon_sym_type] = ACTIONS(769),
    [anon_sym_abstract] = ACTIONS(769),
    [anon_sym_contract] = ACTIONS(769),
    [anon_sym_error] = ACTIONS(769),
    [anon_sym_interface] = ACTIONS(769),
    [anon_sym_library] = ACTIONS(769),
    [anon_sym_struct] = ACTIONS(769),
    [anon_sym_enum] = ACTIONS(769),
    [anon_sym_function] = ACTIONS(769),
    [anon_sym_byte] = ACTIONS(769),
    [anon_sym_address] = ACTIONS(769),
    [anon_sym_var] = ACTIONS(769),
    [anon_sym_mapping] = ACTIONS(769),
    [anon_sym_bool] = ACTIONS(769),
    [anon_sym_string] = ACTIONS(769),
    [anon_sym_int] = ACTIONS(769),
    [anon_sym_int8] = ACTIONS(769),
    [anon_sym_int16] = ACTIONS(769),
    [anon_sym_int24] = ACTIONS(769),
    [anon_sym_int32] = ACTIONS(769),
    [anon_sym_int40] = ACTIONS(769),
    [anon_sym_int48] = ACTIONS(769),
    [anon_sym_int56] = ACTIONS(769),
    [anon_sym_int64] = ACTIONS(769),
    [anon_sym_int72] = ACTIONS(769),
    [anon_sym_int80] = ACTIONS(769),
    [anon_sym_int88] = ACTIONS(769),
    [anon_sym_int96] = ACTIONS(769),
    [anon_sym_int104] = ACTIONS(769),
    [anon_sym_int112] = ACTIONS(769),
    [anon_sym_int120] = ACTIONS(769),
    [anon_sym_int128] = ACTIONS(769),
    [anon_sym_int136] = ACTIONS(769),
    [anon_sym_int144] = ACTIONS(769),
    [anon_sym_int152] = ACTIONS(769),
    [anon_sym_int160] = ACTIONS(769),
    [anon_sym_int168] = ACTIONS(769),
    [anon_sym_int176] = ACTIONS(769),
    [anon_sym_int184] = ACTIONS(769),
    [anon_sym_int192] = ACTIONS(769),
    [anon_sym_int200] = ACTIONS(769),
    [anon_sym_int208] = ACTIONS(769),
    [anon_sym_int216] = ACTIONS(769),
    [anon_sym_int224] = ACTIONS(769),
    [anon_sym_int232] = ACTIONS(769),
    [anon_sym_int240] = ACTIONS(769),
    [anon_sym_int248] = ACTIONS(769),
    [anon_sym_int256] = ACTIONS(769),
    [anon_sym_uint] = ACTIONS(769),
    [anon_sym_uint8] = ACTIONS(769),
    [anon_sym_uint16] = ACTIONS(769),
    [anon_sym_uint24] = ACTIONS(769),
    [anon_sym_uint32] = ACTIONS(769),
    [anon_sym_uint40] = ACTIONS(769),
    [anon_sym_uint48] = ACTIONS(769),
    [anon_sym_uint56] = ACTIONS(769),
    [anon_sym_uint64] = ACTIONS(769),
    [anon_sym_uint72] = ACTIONS(769),
    [anon_sym_uint80] = ACTIONS(769),
    [anon_sym_uint88] = ACTIONS(769),
    [anon_sym_uint96] = ACTIONS(769),
    [anon_sym_uint104] = ACTIONS(769),
    [anon_sym_uint112] = ACTIONS(769),
    [anon_sym_uint120] = ACTIONS(769),
    [anon_sym_uint128] = ACTIONS(769),
    [anon_sym_uint136] = ACTIONS(769),
    [anon_sym_uint144] = ACTIONS(769),
    [anon_sym_uint152] = ACTIONS(769),
    [anon_sym_uint160] = ACTIONS(769),
    [anon_sym_uint168] = ACTIONS(769),
    [anon_sym_uint176] = ACTIONS(769),
    [anon_sym_uint184] = ACTIONS(769),
    [anon_sym_uint192] = ACTIONS(769),
    [anon_sym_uint200] = ACTIONS(769),
    [anon_sym_uint208] = ACTIONS(769),
    [anon_sym_uint216] = ACTIONS(769),
    [anon_sym_uint224] = ACTIONS(769),
    [anon_sym_uint232] = ACTIONS(769),
    [anon_sym_uint240] = ACTIONS(769),
    [anon_sym_uint248] = ACTIONS(769),
    [anon_sym_uint256] = ACTIONS(769),
    [anon_sym_bytes] = ACTIONS(769),
    [anon_sym_bytes1] = ACTIONS(769),
    [anon_sym_bytes2] = ACTIONS(769),
    [anon_sym_bytes3] = ACTIONS(769),
    [anon_sym_bytes4] = ACTIONS(769),
    [anon_sym_bytes5] = ACTIONS(769),
    [anon_sym_bytes6] = ACTIONS(769),
    [anon_sym_bytes7] = ACTIONS(769),
    [anon_sym_bytes8] = ACTIONS(769),
    [anon_sym_bytes9] = ACTIONS(769),
    [anon_sym_bytes10] = ACTIONS(769),
    [anon_sym_bytes11] = ACTIONS(769),
    [anon_sym_bytes12] = ACTIONS(769),
    [anon_sym_bytes13] = ACTIONS(769),
    [anon_sym_bytes14] = ACTIONS(769),
    [anon_sym_bytes15] = ACTIONS(769),
    [anon_sym_bytes16] = ACTIONS(769),
    [anon_sym_bytes17] = ACTIONS(769),
    [anon_sym_bytes18] = ACTIONS(769),
    [anon_sym_bytes19] = ACTIONS(769),
    [anon_sym_bytes20] = ACTIONS(769),
    [anon_sym_bytes21] = ACTIONS(769),
    [anon_sym_bytes22] = ACTIONS(769),
    [anon_sym_bytes23] = ACTIONS(769),
    [anon_sym_bytes24] = ACTIONS(769),
    [anon_sym_bytes25] = ACTIONS(769),
    [anon_sym_bytes26] = ACTIONS(769),
    [anon_sym_bytes27] = ACTIONS(769),
    [anon_sym_bytes28] = ACTIONS(769),
    [anon_sym_bytes29] = ACTIONS(769),
    [anon_sym_bytes30] = ACTIONS(769),
    [anon_sym_bytes31] = ACTIONS(769),
    [anon_sym_bytes32] = ACTIONS(769),
    [anon_sym_fixed] = ACTIONS(769),
    [aux_sym__fixed_token1] = ACTIONS(769),
    [anon_sym_ufixed] = ACTIONS(769),
    [aux_sym__ufixed_token1] = ACTIONS(769),
    [sym_comment] = ACTIONS(3),
  },
  [196] = {
    [ts_builtin_sym_end] = ACTIONS(701),
    [sym_identifier] = ACTIONS(699),
    [anon_sym_pragma] = ACTIONS(699),
    [anon_sym_import] = ACTIONS(699),
    [anon_sym_type] = ACTIONS(699),
    [anon_sym_abstract] = ACTIONS(699),
    [anon_sym_contract] = ACTIONS(699),
    [anon_sym_error] = ACTIONS(699),
    [anon_sym_interface] = ACTIONS(699),
    [anon_sym_library] = ACTIONS(699),
    [anon_sym_struct] = ACTIONS(699),
    [anon_sym_enum] = ACTIONS(699),
    [anon_sym_function] = ACTIONS(699),
    [anon_sym_byte] = ACTIONS(699),
    [anon_sym_address] = ACTIONS(699),
    [anon_sym_var] = ACTIONS(699),
    [anon_sym_mapping] = ACTIONS(699),
    [anon_sym_bool] = ACTIONS(699),
    [anon_sym_string] = ACTIONS(699),
    [anon_sym_int] = ACTIONS(699),
    [anon_sym_int8] = ACTIONS(699),
    [anon_sym_int16] = ACTIONS(699),
    [anon_sym_int24] = ACTIONS(699),
    [anon_sym_int32] = ACTIONS(699),
    [anon_sym_int40] = ACTIONS(699),
    [anon_sym_int48] = ACTIONS(699),
    [anon_sym_int56] = ACTIONS(699),
    [anon_sym_int64] = ACTIONS(699),
    [anon_sym_int72] = ACTIONS(699),
    [anon_sym_int80] = ACTIONS(699),
    [anon_sym_int88] = ACTIONS(699),
    [anon_sym_int96] = ACTIONS(699),
    [anon_sym_int104] = ACTIONS(699),
    [anon_sym_int112] = ACTIONS(699),
    [anon_sym_int120] = ACTIONS(699),
    [anon_sym_int128] = ACTIONS(699),
    [anon_sym_int136] = ACTIONS(699),
    [anon_sym_int144] = ACTIONS(699),
    [anon_sym_int152] = ACTIONS(699),
    [anon_sym_int160] = ACTIONS(699),
    [anon_sym_int168] = ACTIONS(699),
    [anon_sym_int176] = ACTIONS(699),
    [anon_sym_int184] = ACTIONS(699),
    [anon_sym_int192] = ACTIONS(699),
    [anon_sym_int200] = ACTIONS(699),
    [anon_sym_int208] = ACTIONS(699),
    [anon_sym_int216] = ACTIONS(699),
    [anon_sym_int224] = ACTIONS(699),
    [anon_sym_int232] = ACTIONS(699),
    [anon_sym_int240] = ACTIONS(699),
    [anon_sym_int248] = ACTIONS(699),
    [anon_sym_int256] = ACTIONS(699),
    [anon_sym_uint] = ACTIONS(699),
    [anon_sym_uint8] = ACTIONS(699),
    [anon_sym_uint16] = ACTIONS(699),
    [anon_sym_uint24] = ACTIONS(699),
    [anon_sym_uint32] = ACTIONS(699),
    [anon_sym_uint40] = ACTIONS(699),
    [anon_sym_uint48] = ACTIONS(699),
    [anon_sym_uint56] = ACTIONS(699),
    [anon_sym_uint64] = ACTIONS(699),
    [anon_sym_uint72] = ACTIONS(699),
    [anon_sym_uint80] = ACTIONS(699),
    [anon_sym_uint88] = ACTIONS(699),
    [anon_sym_uint96] = ACTIONS(699),
    [anon_sym_uint104] = ACTIONS(699),
    [anon_sym_uint112] = ACTIONS(699),
    [anon_sym_uint120] = ACTIONS(699),
    [anon_sym_uint128] = ACTIONS(699),
    [anon_sym_uint136] = ACTIONS(699),
    [anon_sym_uint144] = ACTIONS(699),
    [anon_sym_uint152] = ACTIONS(699),
    [anon_sym_uint160] = ACTIONS(699),
    [anon_sym_uint168] = ACTIONS(699),
    [anon_sym_uint176] = ACTIONS(699),
    [anon_sym_uint184] = ACTIONS(699),
    [anon_sym_uint192] = ACTIONS(699),
    [anon_sym_uint200] = ACTIONS(699),
    [anon_sym_uint208] = ACTIONS(699),
    [anon_sym_uint216] = ACTIONS(699),
    [anon_sym_uint224] = ACTIONS(699),
    [anon_sym_uint232] = ACTIONS(699),
    [anon_sym_uint240] = ACTIONS(699),
    [anon_sym_uint248] = ACTIONS(699),
    [anon_sym_uint256] = ACTIONS(699),
    [anon_sym_bytes] = ACTIONS(699),
    [anon_sym_bytes1] = ACTIONS(699),
    [anon_sym_bytes2] = ACTIONS(699),
    [anon_sym_bytes3] = ACTIONS(699),
    [anon_sym_bytes4] = ACTIONS(699),
    [anon_sym_bytes5] = ACTIONS(699),
    [anon_sym_bytes6] = ACTIONS(699),
    [anon_sym_bytes7] = ACTIONS(699),
    [anon_sym_bytes8] = ACTIONS(699),
    [anon_sym_bytes9] = ACTIONS(699),
    [anon_sym_bytes10] = ACTIONS(699),
    [anon_sym_bytes11] = ACTIONS(699),
    [anon_sym_bytes12] = ACTIONS(699),
    [anon_sym_bytes13] = ACTIONS(699),
    [anon_sym_bytes14] = ACTIONS(699),
    [anon_sym_bytes15] = ACTIONS(699),
    [anon_sym_bytes16] = ACTIONS(699),
    [anon_sym_bytes17] = ACTIONS(699),
    [anon_sym_bytes18] = ACTIONS(699),
    [anon_sym_bytes19] = ACTIONS(699),
    [anon_sym_bytes20] = ACTIONS(699),
    [anon_sym_bytes21] = ACTIONS(699),
    [anon_sym_bytes22] = ACTIONS(699),
    [anon_sym_bytes23] = ACTIONS(699),
    [anon_sym_bytes24] = ACTIONS(699),
    [anon_sym_bytes25] = ACTIONS(699),
    [anon_sym_bytes26] = ACTIONS(699),
    [anon_sym_bytes27] = ACTIONS(699),
    [anon_sym_bytes28] = ACTIONS(699),
    [anon_sym_bytes29] = ACTIONS(699),
    [anon_sym_bytes30] = ACTIONS(699),
    [anon_sym_bytes31] = ACTIONS(699),
    [anon_sym_bytes32] = ACTIONS(699),
    [anon_sym_fixed] = ACTIONS(699),
    [aux_sym__fixed_token1] = ACTIONS(699),
    [anon_sym_ufixed] = ACTIONS(699),
    [aux_sym__ufixed_token1] = ACTIONS(699),
    [sym_comment] = ACTIONS(3),
  },
  [197] = {
    [sym_identifier] = ACTIONS(771),
    [anon_sym_RBRACE] = ACTIONS(773),
    [anon_sym_type] = ACTIONS(771),
    [anon_sym_error] = ACTIONS(771),
    [anon_sym_struct] = ACTIONS(771),
    [anon_sym_enum] = ACTIONS(771),
    [anon_sym_event] = ACTIONS(771),
    [anon_sym_using] = ACTIONS(771),
    [anon_sym_function] = ACTIONS(771),
    [anon_sym_byte] = ACTIONS(771),
    [anon_sym_address] = ACTIONS(771),
    [anon_sym_var] = ACTIONS(771),
    [anon_sym_modifier] = ACTIONS(771),
    [anon_sym_constructor] = ACTIONS(771),
    [anon_sym_fallback] = ACTIONS(771),
    [anon_sym_receive] = ACTIONS(771),
    [anon_sym_mapping] = ACTIONS(771),
    [anon_sym_bool] = ACTIONS(771),
    [anon_sym_string] = ACTIONS(771),
    [anon_sym_int] = ACTIONS(771),
    [anon_sym_int8] = ACTIONS(771),
    [anon_sym_int16] = ACTIONS(771),
    [anon_sym_int24] = ACTIONS(771),
    [anon_sym_int32] = ACTIONS(771),
    [anon_sym_int40] = ACTIONS(771),
    [anon_sym_int48] = ACTIONS(771),
    [anon_sym_int56] = ACTIONS(771),
    [anon_sym_int64] = ACTIONS(771),
    [anon_sym_int72] = ACTIONS(771),
    [anon_sym_int80] = ACTIONS(771),
    [anon_sym_int88] = ACTIONS(771),
    [anon_sym_int96] = ACTIONS(771),
    [anon_sym_int104] = ACTIONS(771),
    [anon_sym_int112] = ACTIONS(771),
    [anon_sym_int120] = ACTIONS(771),
    [anon_sym_int128] = ACTIONS(771),
    [anon_sym_int136] = ACTIONS(771),
    [anon_sym_int144] = ACTIONS(771),
    [anon_sym_int152] = ACTIONS(771),
    [anon_sym_int160] = ACTIONS(771),
    [anon_sym_int168] = ACTIONS(771),
    [anon_sym_int176] = ACTIONS(771),
    [anon_sym_int184] = ACTIONS(771),
    [anon_sym_int192] = ACTIONS(771),
    [anon_sym_int200] = ACTIONS(771),
    [anon_sym_int208] = ACTIONS(771),
    [anon_sym_int216] = ACTIONS(771),
    [anon_sym_int224] = ACTIONS(771),
    [anon_sym_int232] = ACTIONS(771),
    [anon_sym_int240] = ACTIONS(771),
    [anon_sym_int248] = ACTIONS(771),
    [anon_sym_int256] = ACTIONS(771),
    [anon_sym_uint] = ACTIONS(771),
    [anon_sym_uint8] = ACTIONS(771),
    [anon_sym_uint16] = ACTIONS(771),
    [anon_sym_uint24] = ACTIONS(771),
    [anon_sym_uint32] = ACTIONS(771),
    [anon_sym_uint40] = ACTIONS(771),
    [anon_sym_uint48] = ACTIONS(771),
    [anon_sym_uint56] = ACTIONS(771),
    [anon_sym_uint64] = ACTIONS(771),
    [anon_sym_uint72] = ACTIONS(771),
    [anon_sym_uint80] = ACTIONS(771),
    [anon_sym_uint88] = ACTIONS(771),
    [anon_sym_uint96] = ACTIONS(771),
    [anon_sym_uint104] = ACTIONS(771),
    [anon_sym_uint112] = ACTIONS(771),
    [anon_sym_uint120] = ACTIONS(771),
    [anon_sym_uint128] = ACTIONS(771),
    [anon_sym_uint136] = ACTIONS(771),
    [anon_sym_uint144] = ACTIONS(771),
    [anon_sym_uint152] = ACTIONS(771),
    [anon_sym_uint160] = ACTIONS(771),
    [anon_sym_uint168] = ACTIONS(771),
    [anon_sym_uint176] = ACTIONS(771),
    [anon_sym_uint184] = ACTIONS(771),
    [anon_sym_uint192] = ACTIONS(771),
    [anon_sym_uint200] = ACTIONS(771),
    [anon_sym_uint208] = ACTIONS(771),
    [anon_sym_uint216] = ACTIONS(771),
    [anon_sym_uint224] = ACTIONS(771),
    [anon_sym_uint232] = ACTIONS(771),
    [anon_sym_uint240] = ACTIONS(771),
    [anon_sym_uint248] = ACTIONS(771),
    [anon_sym_uint256] = ACTIONS(771),
    [anon_sym_bytes] = ACTIONS(771),
    [anon_sym_bytes1] = ACTIONS(771),
    [anon_sym_bytes2] = ACTIONS(771),
    [anon_sym_bytes3] = ACTIONS(771),
    [anon_sym_bytes4] = ACTIONS(771),
    [anon_sym_bytes5] = ACTIONS(771),
    [anon_sym_bytes6] = ACTIONS(771),
    [anon_sym_bytes7] = ACTIONS(771),
    [anon_sym_bytes8] = ACTIONS(771),
    [anon_sym_bytes9] = ACTIONS(771),
    [anon_sym_bytes10] = ACTIONS(771),
    [anon_sym_bytes11] = ACTIONS(771),
    [anon_sym_bytes12] = ACTIONS(771),
    [anon_sym_bytes13] = ACTIONS(771),
    [anon_sym_bytes14] = ACTIONS(771),
    [anon_sym_bytes15] = ACTIONS(771),
    [anon_sym_bytes16] = ACTIONS(771),
    [anon_sym_bytes17] = ACTIONS(771),
    [anon_sym_bytes18] = ACTIONS(771),
    [anon_sym_bytes19] = ACTIONS(771),
    [anon_sym_bytes20] = ACTIONS(771),
    [anon_sym_bytes21] = ACTIONS(771),
    [anon_sym_bytes22] = ACTIONS(771),
    [anon_sym_bytes23] = ACTIONS(771),
    [anon_sym_bytes24] = ACTIONS(771),
    [anon_sym_bytes25] = ACTIONS(771),
    [anon_sym_bytes26] = ACTIONS(771),
    [anon_sym_bytes27] = ACTIONS(771),
    [anon_sym_bytes28] = ACTIONS(771),
    [anon_sym_bytes29] = ACTIONS(771),
    [anon_sym_bytes30] = ACTIONS(771),
    [anon_sym_bytes31] = ACTIONS(771),
    [anon_sym_bytes32] = ACTIONS(771),
    [anon_sym_fixed] = ACTIONS(771),
    [aux_sym__fixed_token1] = ACTIONS(771),
    [anon_sym_ufixed] = ACTIONS(771),
    [aux_sym__ufixed_token1] = ACTIONS(771),
    [sym_comment] = ACTIONS(3),
  },
  [198] = {
    [ts_builtin_sym_end] = ACTIONS(775),
    [sym_identifier] = ACTIONS(777),
    [anon_sym_pragma] = ACTIONS(777),
    [anon_sym_import] = ACTIONS(777),
    [anon_sym_type] = ACTIONS(777),
    [anon_sym_abstract] = ACTIONS(777),
    [anon_sym_contract] = ACTIONS(777),
    [anon_sym_error] = ACTIONS(777),
    [anon_sym_interface] = ACTIONS(777),
    [anon_sym_library] = ACTIONS(777),
    [anon_sym_struct] = ACTIONS(777),
    [anon_sym_enum] = ACTIONS(777),
    [anon_sym_function] = ACTIONS(777),
    [anon_sym_byte] = ACTIONS(777),
    [anon_sym_address] = ACTIONS(777),
    [anon_sym_var] = ACTIONS(777),
    [anon_sym_mapping] = ACTIONS(777),
    [anon_sym_bool] = ACTIONS(777),
    [anon_sym_string] = ACTIONS(777),
    [anon_sym_int] = ACTIONS(777),
    [anon_sym_int8] = ACTIONS(777),
    [anon_sym_int16] = ACTIONS(777),
    [anon_sym_int24] = ACTIONS(777),
    [anon_sym_int32] = ACTIONS(777),
    [anon_sym_int40] = ACTIONS(777),
    [anon_sym_int48] = ACTIONS(777),
    [anon_sym_int56] = ACTIONS(777),
    [anon_sym_int64] = ACTIONS(777),
    [anon_sym_int72] = ACTIONS(777),
    [anon_sym_int80] = ACTIONS(777),
    [anon_sym_int88] = ACTIONS(777),
    [anon_sym_int96] = ACTIONS(777),
    [anon_sym_int104] = ACTIONS(777),
    [anon_sym_int112] = ACTIONS(777),
    [anon_sym_int120] = ACTIONS(777),
    [anon_sym_int128] = ACTIONS(777),
    [anon_sym_int136] = ACTIONS(777),
    [anon_sym_int144] = ACTIONS(777),
    [anon_sym_int152] = ACTIONS(777),
    [anon_sym_int160] = ACTIONS(777),
    [anon_sym_int168] = ACTIONS(777),
    [anon_sym_int176] = ACTIONS(777),
    [anon_sym_int184] = ACTIONS(777),
    [anon_sym_int192] = ACTIONS(777),
    [anon_sym_int200] = ACTIONS(777),
    [anon_sym_int208] = ACTIONS(777),
    [anon_sym_int216] = ACTIONS(777),
    [anon_sym_int224] = ACTIONS(777),
    [anon_sym_int232] = ACTIONS(777),
    [anon_sym_int240] = ACTIONS(777),
    [anon_sym_int248] = ACTIONS(777),
    [anon_sym_int256] = ACTIONS(777),
    [anon_sym_uint] = ACTIONS(777),
    [anon_sym_uint8] = ACTIONS(777),
    [anon_sym_uint16] = ACTIONS(777),
    [anon_sym_uint24] = ACTIONS(777),
    [anon_sym_uint32] = ACTIONS(777),
    [anon_sym_uint40] = ACTIONS(777),
    [anon_sym_uint48] = ACTIONS(777),
    [anon_sym_uint56] = ACTIONS(777),
    [anon_sym_uint64] = ACTIONS(777),
    [anon_sym_uint72] = ACTIONS(777),
    [anon_sym_uint80] = ACTIONS(777),
    [anon_sym_uint88] = ACTIONS(777),
    [anon_sym_uint96] = ACTIONS(777),
    [anon_sym_uint104] = ACTIONS(777),
    [anon_sym_uint112] = ACTIONS(777),
    [anon_sym_uint120] = ACTIONS(777),
    [anon_sym_uint128] = ACTIONS(777),
    [anon_sym_uint136] = ACTIONS(777),
    [anon_sym_uint144] = ACTIONS(777),
    [anon_sym_uint152] = ACTIONS(777),
    [anon_sym_uint160] = ACTIONS(777),
    [anon_sym_uint168] = ACTIONS(777),
    [anon_sym_uint176] = ACTIONS(777),
    [anon_sym_uint184] = ACTIONS(777),
    [anon_sym_uint192] = ACTIONS(777),
    [anon_sym_uint200] = ACTIONS(777),
    [anon_sym_uint208] = ACTIONS(777),
    [anon_sym_uint216] = ACTIONS(777),
    [anon_sym_uint224] = ACTIONS(777),
    [anon_sym_uint232] = ACTIONS(777),
    [anon_sym_uint240] = ACTIONS(777),
    [anon_sym_uint248] = ACTIONS(777),
    [anon_sym_uint256] = ACTIONS(777),
    [anon_sym_bytes] = ACTIONS(777),
    [anon_sym_bytes1] = ACTIONS(777),
    [anon_sym_bytes2] = ACTIONS(777),
    [anon_sym_bytes3] = ACTIONS(777),
    [anon_sym_bytes4] = ACTIONS(777),
    [anon_sym_bytes5] = ACTIONS(777),
    [anon_sym_bytes6] = ACTIONS(777),
    [anon_sym_bytes7] = ACTIONS(777),
    [anon_sym_bytes8] = ACTIONS(777),
    [anon_sym_bytes9] = ACTIONS(777),
    [anon_sym_bytes10] = ACTIONS(777),
    [anon_sym_bytes11] = ACTIONS(777),
    [anon_sym_bytes12] = ACTIONS(777),
    [anon_sym_bytes13] = ACTIONS(777),
    [anon_sym_bytes14] = ACTIONS(777),
    [anon_sym_bytes15] = ACTIONS(777),
    [anon_sym_bytes16] = ACTIONS(777),
    [anon_sym_bytes17] = ACTIONS(777),
    [anon_sym_bytes18] = ACTIONS(777),
    [anon_sym_bytes19] = ACTIONS(777),
    [anon_sym_bytes20] = ACTIONS(777),
    [anon_sym_bytes21] = ACTIONS(777),
    [anon_sym_bytes22] = ACTIONS(777),
    [anon_sym_bytes23] = ACTIONS(777),
    [anon_sym_bytes24] = ACTIONS(777),
    [anon_sym_bytes25] = ACTIONS(777),
    [anon_sym_bytes26] = ACTIONS(777),
    [anon_sym_bytes27] = ACTIONS(777),
    [anon_sym_bytes28] = ACTIONS(777),
    [anon_sym_bytes29] = ACTIONS(777),
    [anon_sym_bytes30] = ACTIONS(777),
    [anon_sym_bytes31] = ACTIONS(777),
    [anon_sym_bytes32] = ACTIONS(777),
    [anon_sym_fixed] = ACTIONS(777),
    [aux_sym__fixed_token1] = ACTIONS(777),
    [anon_sym_ufixed] = ACTIONS(777),
    [aux_sym__ufixed_token1] = ACTIONS(777),
    [sym_comment] = ACTIONS(3),
  },
  [199] = {
    [ts_builtin_sym_end] = ACTIONS(779),
    [sym_identifier] = ACTIONS(781),
    [anon_sym_pragma] = ACTIONS(781),
    [anon_sym_import] = ACTIONS(781),
    [anon_sym_type] = ACTIONS(781),
    [anon_sym_abstract] = ACTIONS(781),
    [anon_sym_contract] = ACTIONS(781),
    [anon_sym_error] = ACTIONS(781),
    [anon_sym_interface] = ACTIONS(781),
    [anon_sym_library] = ACTIONS(781),
    [anon_sym_struct] = ACTIONS(781),
    [anon_sym_enum] = ACTIONS(781),
    [anon_sym_function] = ACTIONS(781),
    [anon_sym_byte] = ACTIONS(781),
    [anon_sym_address] = ACTIONS(781),
    [anon_sym_var] = ACTIONS(781),
    [anon_sym_mapping] = ACTIONS(781),
    [anon_sym_bool] = ACTIONS(781),
    [anon_sym_string] = ACTIONS(781),
    [anon_sym_int] = ACTIONS(781),
    [anon_sym_int8] = ACTIONS(781),
    [anon_sym_int16] = ACTIONS(781),
    [anon_sym_int24] = ACTIONS(781),
    [anon_sym_int32] = ACTIONS(781),
    [anon_sym_int40] = ACTIONS(781),
    [anon_sym_int48] = ACTIONS(781),
    [anon_sym_int56] = ACTIONS(781),
    [anon_sym_int64] = ACTIONS(781),
    [anon_sym_int72] = ACTIONS(781),
    [anon_sym_int80] = ACTIONS(781),
    [anon_sym_int88] = ACTIONS(781),
    [anon_sym_int96] = ACTIONS(781),
    [anon_sym_int104] = ACTIONS(781),
    [anon_sym_int112] = ACTIONS(781),
    [anon_sym_int120] = ACTIONS(781),
    [anon_sym_int128] = ACTIONS(781),
    [anon_sym_int136] = ACTIONS(781),
    [anon_sym_int144] = ACTIONS(781),
    [anon_sym_int152] = ACTIONS(781),
    [anon_sym_int160] = ACTIONS(781),
    [anon_sym_int168] = ACTIONS(781),
    [anon_sym_int176] = ACTIONS(781),
    [anon_sym_int184] = ACTIONS(781),
    [anon_sym_int192] = ACTIONS(781),
    [anon_sym_int200] = ACTIONS(781),
    [anon_sym_int208] = ACTIONS(781),
    [anon_sym_int216] = ACTIONS(781),
    [anon_sym_int224] = ACTIONS(781),
    [anon_sym_int232] = ACTIONS(781),
    [anon_sym_int240] = ACTIONS(781),
    [anon_sym_int248] = ACTIONS(781),
    [anon_sym_int256] = ACTIONS(781),
    [anon_sym_uint] = ACTIONS(781),
    [anon_sym_uint8] = ACTIONS(781),
    [anon_sym_uint16] = ACTIONS(781),
    [anon_sym_uint24] = ACTIONS(781),
    [anon_sym_uint32] = ACTIONS(781),
    [anon_sym_uint40] = ACTIONS(781),
    [anon_sym_uint48] = ACTIONS(781),
    [anon_sym_uint56] = ACTIONS(781),
    [anon_sym_uint64] = ACTIONS(781),
    [anon_sym_uint72] = ACTIONS(781),
    [anon_sym_uint80] = ACTIONS(781),
    [anon_sym_uint88] = ACTIONS(781),
    [anon_sym_uint96] = ACTIONS(781),
    [anon_sym_uint104] = ACTIONS(781),
    [anon_sym_uint112] = ACTIONS(781),
    [anon_sym_uint120] = ACTIONS(781),
    [anon_sym_uint128] = ACTIONS(781),
    [anon_sym_uint136] = ACTIONS(781),
    [anon_sym_uint144] = ACTIONS(781),
    [anon_sym_uint152] = ACTIONS(781),
    [anon_sym_uint160] = ACTIONS(781),
    [anon_sym_uint168] = ACTIONS(781),
    [anon_sym_uint176] = ACTIONS(781),
    [anon_sym_uint184] = ACTIONS(781),
    [anon_sym_uint192] = ACTIONS(781),
    [anon_sym_uint200] = ACTIONS(781),
    [anon_sym_uint208] = ACTIONS(781),
    [anon_sym_uint216] = ACTIONS(781),
    [anon_sym_uint224] = ACTIONS(781),
    [anon_sym_uint232] = ACTIONS(781),
    [anon_sym_uint240] = ACTIONS(781),
    [anon_sym_uint248] = ACTIONS(781),
    [anon_sym_uint256] = ACTIONS(781),
    [anon_sym_bytes] = ACTIONS(781),
    [anon_sym_bytes1] = ACTIONS(781),
    [anon_sym_bytes2] = ACTIONS(781),
    [anon_sym_bytes3] = ACTIONS(781),
    [anon_sym_bytes4] = ACTIONS(781),
    [anon_sym_bytes5] = ACTIONS(781),
    [anon_sym_bytes6] = ACTIONS(781),
    [anon_sym_bytes7] = ACTIONS(781),
    [anon_sym_bytes8] = ACTIONS(781),
    [anon_sym_bytes9] = ACTIONS(781),
    [anon_sym_bytes10] = ACTIONS(781),
    [anon_sym_bytes11] = ACTIONS(781),
    [anon_sym_bytes12] = ACTIONS(781),
    [anon_sym_bytes13] = ACTIONS(781),
    [anon_sym_bytes14] = ACTIONS(781),
    [anon_sym_bytes15] = ACTIONS(781),
    [anon_sym_bytes16] = ACTIONS(781),
    [anon_sym_bytes17] = ACTIONS(781),
    [anon_sym_bytes18] = ACTIONS(781),
    [anon_sym_bytes19] = ACTIONS(781),
    [anon_sym_bytes20] = ACTIONS(781),
    [anon_sym_bytes21] = ACTIONS(781),
    [anon_sym_bytes22] = ACTIONS(781),
    [anon_sym_bytes23] = ACTIONS(781),
    [anon_sym_bytes24] = ACTIONS(781),
    [anon_sym_bytes25] = ACTIONS(781),
    [anon_sym_bytes26] = ACTIONS(781),
    [anon_sym_bytes27] = ACTIONS(781),
    [anon_sym_bytes28] = ACTIONS(781),
    [anon_sym_bytes29] = ACTIONS(781),
    [anon_sym_bytes30] = ACTIONS(781),
    [anon_sym_bytes31] = ACTIONS(781),
    [anon_sym_bytes32] = ACTIONS(781),
    [anon_sym_fixed] = ACTIONS(781),
    [aux_sym__fixed_token1] = ACTIONS(781),
    [anon_sym_ufixed] = ACTIONS(781),
    [aux_sym__ufixed_token1] = ACTIONS(781),
    [sym_comment] = ACTIONS(3),
  },
  [200] = {
    [sym_identifier] = ACTIONS(783),
    [anon_sym_RBRACE] = ACTIONS(785),
    [anon_sym_type] = ACTIONS(783),
    [anon_sym_error] = ACTIONS(783),
    [anon_sym_struct] = ACTIONS(783),
    [anon_sym_enum] = ACTIONS(783),
    [anon_sym_event] = ACTIONS(783),
    [anon_sym_using] = ACTIONS(783),
    [anon_sym_function] = ACTIONS(783),
    [anon_sym_byte] = ACTIONS(783),
    [anon_sym_address] = ACTIONS(783),
    [anon_sym_var] = ACTIONS(783),
    [anon_sym_modifier] = ACTIONS(783),
    [anon_sym_constructor] = ACTIONS(783),
    [anon_sym_fallback] = ACTIONS(783),
    [anon_sym_receive] = ACTIONS(783),
    [anon_sym_mapping] = ACTIONS(783),
    [anon_sym_bool] = ACTIONS(783),
    [anon_sym_string] = ACTIONS(783),
    [anon_sym_int] = ACTIONS(783),
    [anon_sym_int8] = ACTIONS(783),
    [anon_sym_int16] = ACTIONS(783),
    [anon_sym_int24] = ACTIONS(783),
    [anon_sym_int32] = ACTIONS(783),
    [anon_sym_int40] = ACTIONS(783),
    [anon_sym_int48] = ACTIONS(783),
    [anon_sym_int56] = ACTIONS(783),
    [anon_sym_int64] = ACTIONS(783),
    [anon_sym_int72] = ACTIONS(783),
    [anon_sym_int80] = ACTIONS(783),
    [anon_sym_int88] = ACTIONS(783),
    [anon_sym_int96] = ACTIONS(783),
    [anon_sym_int104] = ACTIONS(783),
    [anon_sym_int112] = ACTIONS(783),
    [anon_sym_int120] = ACTIONS(783),
    [anon_sym_int128] = ACTIONS(783),
    [anon_sym_int136] = ACTIONS(783),
    [anon_sym_int144] = ACTIONS(783),
    [anon_sym_int152] = ACTIONS(783),
    [anon_sym_int160] = ACTIONS(783),
    [anon_sym_int168] = ACTIONS(783),
    [anon_sym_int176] = ACTIONS(783),
    [anon_sym_int184] = ACTIONS(783),
    [anon_sym_int192] = ACTIONS(783),
    [anon_sym_int200] = ACTIONS(783),
    [anon_sym_int208] = ACTIONS(783),
    [anon_sym_int216] = ACTIONS(783),
    [anon_sym_int224] = ACTIONS(783),
    [anon_sym_int232] = ACTIONS(783),
    [anon_sym_int240] = ACTIONS(783),
    [anon_sym_int248] = ACTIONS(783),
    [anon_sym_int256] = ACTIONS(783),
    [anon_sym_uint] = ACTIONS(783),
    [anon_sym_uint8] = ACTIONS(783),
    [anon_sym_uint16] = ACTIONS(783),
    [anon_sym_uint24] = ACTIONS(783),
    [anon_sym_uint32] = ACTIONS(783),
    [anon_sym_uint40] = ACTIONS(783),
    [anon_sym_uint48] = ACTIONS(783),
    [anon_sym_uint56] = ACTIONS(783),
    [anon_sym_uint64] = ACTIONS(783),
    [anon_sym_uint72] = ACTIONS(783),
    [anon_sym_uint80] = ACTIONS(783),
    [anon_sym_uint88] = ACTIONS(783),
    [anon_sym_uint96] = ACTIONS(783),
    [anon_sym_uint104] = ACTIONS(783),
    [anon_sym_uint112] = ACTIONS(783),
    [anon_sym_uint120] = ACTIONS(783),
    [anon_sym_uint128] = ACTIONS(783),
    [anon_sym_uint136] = ACTIONS(783),
    [anon_sym_uint144] = ACTIONS(783),
    [anon_sym_uint152] = ACTIONS(783),
    [anon_sym_uint160] = ACTIONS(783),
    [anon_sym_uint168] = ACTIONS(783),
    [anon_sym_uint176] = ACTIONS(783),
    [anon_sym_uint184] = ACTIONS(783),
    [anon_sym_uint192] = ACTIONS(783),
    [anon_sym_uint200] = ACTIONS(783),
    [anon_sym_uint208] = ACTIONS(783),
    [anon_sym_uint216] = ACTIONS(783),
    [anon_sym_uint224] = ACTIONS(783),
    [anon_sym_uint232] = ACTIONS(783),
    [anon_sym_uint240] = ACTIONS(783),
    [anon_sym_uint248] = ACTIONS(783),
    [anon_sym_uint256] = ACTIONS(783),
    [anon_sym_bytes] = ACTIONS(783),
    [anon_sym_bytes1] = ACTIONS(783),
    [anon_sym_bytes2] = ACTIONS(783),
    [anon_sym_bytes3] = ACTIONS(783),
    [anon_sym_bytes4] = ACTIONS(783),
    [anon_sym_bytes5] = ACTIONS(783),
    [anon_sym_bytes6] = ACTIONS(783),
    [anon_sym_bytes7] = ACTIONS(783),
    [anon_sym_bytes8] = ACTIONS(783),
    [anon_sym_bytes9] = ACTIONS(783),
    [anon_sym_bytes10] = ACTIONS(783),
    [anon_sym_bytes11] = ACTIONS(783),
    [anon_sym_bytes12] = ACTIONS(783),
    [anon_sym_bytes13] = ACTIONS(783),
    [anon_sym_bytes14] = ACTIONS(783),
    [anon_sym_bytes15] = ACTIONS(783),
    [anon_sym_bytes16] = ACTIONS(783),
    [anon_sym_bytes17] = ACTIONS(783),
    [anon_sym_bytes18] = ACTIONS(783),
    [anon_sym_bytes19] = ACTIONS(783),
    [anon_sym_bytes20] = ACTIONS(783),
    [anon_sym_bytes21] = ACTIONS(783),
    [anon_sym_bytes22] = ACTIONS(783),
    [anon_sym_bytes23] = ACTIONS(783),
    [anon_sym_bytes24] = ACTIONS(783),
    [anon_sym_bytes25] = ACTIONS(783),
    [anon_sym_bytes26] = ACTIONS(783),
    [anon_sym_bytes27] = ACTIONS(783),
    [anon_sym_bytes28] = ACTIONS(783),
    [anon_sym_bytes29] = ACTIONS(783),
    [anon_sym_bytes30] = ACTIONS(783),
    [anon_sym_bytes31] = ACTIONS(783),
    [anon_sym_bytes32] = ACTIONS(783),
    [anon_sym_fixed] = ACTIONS(783),
    [aux_sym__fixed_token1] = ACTIONS(783),
    [anon_sym_ufixed] = ACTIONS(783),
    [aux_sym__ufixed_token1] = ACTIONS(783),
    [sym_comment] = ACTIONS(3),
  },
  [201] = {
    [ts_builtin_sym_end] = ACTIONS(787),
    [sym_identifier] = ACTIONS(789),
    [anon_sym_pragma] = ACTIONS(789),
    [anon_sym_import] = ACTIONS(789),
    [anon_sym_type] = ACTIONS(789),
    [anon_sym_abstract] = ACTIONS(789),
    [anon_sym_contract] = ACTIONS(789),
    [anon_sym_error] = ACTIONS(789),
    [anon_sym_interface] = ACTIONS(789),
    [anon_sym_library] = ACTIONS(789),
    [anon_sym_struct] = ACTIONS(789),
    [anon_sym_enum] = ACTIONS(789),
    [anon_sym_function] = ACTIONS(789),
    [anon_sym_byte] = ACTIONS(789),
    [anon_sym_address] = ACTIONS(789),
    [anon_sym_var] = ACTIONS(789),
    [anon_sym_mapping] = ACTIONS(789),
    [anon_sym_bool] = ACTIONS(789),
    [anon_sym_string] = ACTIONS(789),
    [anon_sym_int] = ACTIONS(789),
    [anon_sym_int8] = ACTIONS(789),
    [anon_sym_int16] = ACTIONS(789),
    [anon_sym_int24] = ACTIONS(789),
    [anon_sym_int32] = ACTIONS(789),
    [anon_sym_int40] = ACTIONS(789),
    [anon_sym_int48] = ACTIONS(789),
    [anon_sym_int56] = ACTIONS(789),
    [anon_sym_int64] = ACTIONS(789),
    [anon_sym_int72] = ACTIONS(789),
    [anon_sym_int80] = ACTIONS(789),
    [anon_sym_int88] = ACTIONS(789),
    [anon_sym_int96] = ACTIONS(789),
    [anon_sym_int104] = ACTIONS(789),
    [anon_sym_int112] = ACTIONS(789),
    [anon_sym_int120] = ACTIONS(789),
    [anon_sym_int128] = ACTIONS(789),
    [anon_sym_int136] = ACTIONS(789),
    [anon_sym_int144] = ACTIONS(789),
    [anon_sym_int152] = ACTIONS(789),
    [anon_sym_int160] = ACTIONS(789),
    [anon_sym_int168] = ACTIONS(789),
    [anon_sym_int176] = ACTIONS(789),
    [anon_sym_int184] = ACTIONS(789),
    [anon_sym_int192] = ACTIONS(789),
    [anon_sym_int200] = ACTIONS(789),
    [anon_sym_int208] = ACTIONS(789),
    [anon_sym_int216] = ACTIONS(789),
    [anon_sym_int224] = ACTIONS(789),
    [anon_sym_int232] = ACTIONS(789),
    [anon_sym_int240] = ACTIONS(789),
    [anon_sym_int248] = ACTIONS(789),
    [anon_sym_int256] = ACTIONS(789),
    [anon_sym_uint] = ACTIONS(789),
    [anon_sym_uint8] = ACTIONS(789),
    [anon_sym_uint16] = ACTIONS(789),
    [anon_sym_uint24] = ACTIONS(789),
    [anon_sym_uint32] = ACTIONS(789),
    [anon_sym_uint40] = ACTIONS(789),
    [anon_sym_uint48] = ACTIONS(789),
    [anon_sym_uint56] = ACTIONS(789),
    [anon_sym_uint64] = ACTIONS(789),
    [anon_sym_uint72] = ACTIONS(789),
    [anon_sym_uint80] = ACTIONS(789),
    [anon_sym_uint88] = ACTIONS(789),
    [anon_sym_uint96] = ACTIONS(789),
    [anon_sym_uint104] = ACTIONS(789),
    [anon_sym_uint112] = ACTIONS(789),
    [anon_sym_uint120] = ACTIONS(789),
    [anon_sym_uint128] = ACTIONS(789),
    [anon_sym_uint136] = ACTIONS(789),
    [anon_sym_uint144] = ACTIONS(789),
    [anon_sym_uint152] = ACTIONS(789),
    [anon_sym_uint160] = ACTIONS(789),
    [anon_sym_uint168] = ACTIONS(789),
    [anon_sym_uint176] = ACTIONS(789),
    [anon_sym_uint184] = ACTIONS(789),
    [anon_sym_uint192] = ACTIONS(789),
    [anon_sym_uint200] = ACTIONS(789),
    [anon_sym_uint208] = ACTIONS(789),
    [anon_sym_uint216] = ACTIONS(789),
    [anon_sym_uint224] = ACTIONS(789),
    [anon_sym_uint232] = ACTIONS(789),
    [anon_sym_uint240] = ACTIONS(789),
    [anon_sym_uint248] = ACTIONS(789),
    [anon_sym_uint256] = ACTIONS(789),
    [anon_sym_bytes] = ACTIONS(789),
    [anon_sym_bytes1] = ACTIONS(789),
    [anon_sym_bytes2] = ACTIONS(789),
    [anon_sym_bytes3] = ACTIONS(789),
    [anon_sym_bytes4] = ACTIONS(789),
    [anon_sym_bytes5] = ACTIONS(789),
    [anon_sym_bytes6] = ACTIONS(789),
    [anon_sym_bytes7] = ACTIONS(789),
    [anon_sym_bytes8] = ACTIONS(789),
    [anon_sym_bytes9] = ACTIONS(789),
    [anon_sym_bytes10] = ACTIONS(789),
    [anon_sym_bytes11] = ACTIONS(789),
    [anon_sym_bytes12] = ACTIONS(789),
    [anon_sym_bytes13] = ACTIONS(789),
    [anon_sym_bytes14] = ACTIONS(789),
    [anon_sym_bytes15] = ACTIONS(789),
    [anon_sym_bytes16] = ACTIONS(789),
    [anon_sym_bytes17] = ACTIONS(789),
    [anon_sym_bytes18] = ACTIONS(789),
    [anon_sym_bytes19] = ACTIONS(789),
    [anon_sym_bytes20] = ACTIONS(789),
    [anon_sym_bytes21] = ACTIONS(789),
    [anon_sym_bytes22] = ACTIONS(789),
    [anon_sym_bytes23] = ACTIONS(789),
    [anon_sym_bytes24] = ACTIONS(789),
    [anon_sym_bytes25] = ACTIONS(789),
    [anon_sym_bytes26] = ACTIONS(789),
    [anon_sym_bytes27] = ACTIONS(789),
    [anon_sym_bytes28] = ACTIONS(789),
    [anon_sym_bytes29] = ACTIONS(789),
    [anon_sym_bytes30] = ACTIONS(789),
    [anon_sym_bytes31] = ACTIONS(789),
    [anon_sym_bytes32] = ACTIONS(789),
    [anon_sym_fixed] = ACTIONS(789),
    [aux_sym__fixed_token1] = ACTIONS(789),
    [anon_sym_ufixed] = ACTIONS(789),
    [aux_sym__ufixed_token1] = ACTIONS(789),
    [sym_comment] = ACTIONS(3),
  },
  [202] = {
    [ts_builtin_sym_end] = ACTIONS(717),
    [sym_identifier] = ACTIONS(715),
    [anon_sym_pragma] = ACTIONS(715),
    [anon_sym_import] = ACTIONS(715),
    [anon_sym_type] = ACTIONS(715),
    [anon_sym_abstract] = ACTIONS(715),
    [anon_sym_contract] = ACTIONS(715),
    [anon_sym_error] = ACTIONS(715),
    [anon_sym_interface] = ACTIONS(715),
    [anon_sym_library] = ACTIONS(715),
    [anon_sym_struct] = ACTIONS(715),
    [anon_sym_enum] = ACTIONS(715),
    [anon_sym_function] = ACTIONS(715),
    [anon_sym_byte] = ACTIONS(715),
    [anon_sym_address] = ACTIONS(715),
    [anon_sym_var] = ACTIONS(715),
    [anon_sym_mapping] = ACTIONS(715),
    [anon_sym_bool] = ACTIONS(715),
    [anon_sym_string] = ACTIONS(715),
    [anon_sym_int] = ACTIONS(715),
    [anon_sym_int8] = ACTIONS(715),
    [anon_sym_int16] = ACTIONS(715),
    [anon_sym_int24] = ACTIONS(715),
    [anon_sym_int32] = ACTIONS(715),
    [anon_sym_int40] = ACTIONS(715),
    [anon_sym_int48] = ACTIONS(715),
    [anon_sym_int56] = ACTIONS(715),
    [anon_sym_int64] = ACTIONS(715),
    [anon_sym_int72] = ACTIONS(715),
    [anon_sym_int80] = ACTIONS(715),
    [anon_sym_int88] = ACTIONS(715),
    [anon_sym_int96] = ACTIONS(715),
    [anon_sym_int104] = ACTIONS(715),
    [anon_sym_int112] = ACTIONS(715),
    [anon_sym_int120] = ACTIONS(715),
    [anon_sym_int128] = ACTIONS(715),
    [anon_sym_int136] = ACTIONS(715),
    [anon_sym_int144] = ACTIONS(715),
    [anon_sym_int152] = ACTIONS(715),
    [anon_sym_int160] = ACTIONS(715),
    [anon_sym_int168] = ACTIONS(715),
    [anon_sym_int176] = ACTIONS(715),
    [anon_sym_int184] = ACTIONS(715),
    [anon_sym_int192] = ACTIONS(715),
    [anon_sym_int200] = ACTIONS(715),
    [anon_sym_int208] = ACTIONS(715),
    [anon_sym_int216] = ACTIONS(715),
    [anon_sym_int224] = ACTIONS(715),
    [anon_sym_int232] = ACTIONS(715),
    [anon_sym_int240] = ACTIONS(715),
    [anon_sym_int248] = ACTIONS(715),
    [anon_sym_int256] = ACTIONS(715),
    [anon_sym_uint] = ACTIONS(715),
    [anon_sym_uint8] = ACTIONS(715),
    [anon_sym_uint16] = ACTIONS(715),
    [anon_sym_uint24] = ACTIONS(715),
    [anon_sym_uint32] = ACTIONS(715),
    [anon_sym_uint40] = ACTIONS(715),
    [anon_sym_uint48] = ACTIONS(715),
    [anon_sym_uint56] = ACTIONS(715),
    [anon_sym_uint64] = ACTIONS(715),
    [anon_sym_uint72] = ACTIONS(715),
    [anon_sym_uint80] = ACTIONS(715),
    [anon_sym_uint88] = ACTIONS(715),
    [anon_sym_uint96] = ACTIONS(715),
    [anon_sym_uint104] = ACTIONS(715),
    [anon_sym_uint112] = ACTIONS(715),
    [anon_sym_uint120] = ACTIONS(715),
    [anon_sym_uint128] = ACTIONS(715),
    [anon_sym_uint136] = ACTIONS(715),
    [anon_sym_uint144] = ACTIONS(715),
    [anon_sym_uint152] = ACTIONS(715),
    [anon_sym_uint160] = ACTIONS(715),
    [anon_sym_uint168] = ACTIONS(715),
    [anon_sym_uint176] = ACTIONS(715),
    [anon_sym_uint184] = ACTIONS(715),
    [anon_sym_uint192] = ACTIONS(715),
    [anon_sym_uint200] = ACTIONS(715),
    [anon_sym_uint208] = ACTIONS(715),
    [anon_sym_uint216] = ACTIONS(715),
    [anon_sym_uint224] = ACTIONS(715),
    [anon_sym_uint232] = ACTIONS(715),
    [anon_sym_uint240] = ACTIONS(715),
    [anon_sym_uint248] = ACTIONS(715),
    [anon_sym_uint256] = ACTIONS(715),
    [anon_sym_bytes] = ACTIONS(715),
    [anon_sym_bytes1] = ACTIONS(715),
    [anon_sym_bytes2] = ACTIONS(715),
    [anon_sym_bytes3] = ACTIONS(715),
    [anon_sym_bytes4] = ACTIONS(715),
    [anon_sym_bytes5] = ACTIONS(715),
    [anon_sym_bytes6] = ACTIONS(715),
    [anon_sym_bytes7] = ACTIONS(715),
    [anon_sym_bytes8] = ACTIONS(715),
    [anon_sym_bytes9] = ACTIONS(715),
    [anon_sym_bytes10] = ACTIONS(715),
    [anon_sym_bytes11] = ACTIONS(715),
    [anon_sym_bytes12] = ACTIONS(715),
    [anon_sym_bytes13] = ACTIONS(715),
    [anon_sym_bytes14] = ACTIONS(715),
    [anon_sym_bytes15] = ACTIONS(715),
    [anon_sym_bytes16] = ACTIONS(715),
    [anon_sym_bytes17] = ACTIONS(715),
    [anon_sym_bytes18] = ACTIONS(715),
    [anon_sym_bytes19] = ACTIONS(715),
    [anon_sym_bytes20] = ACTIONS(715),
    [anon_sym_bytes21] = ACTIONS(715),
    [anon_sym_bytes22] = ACTIONS(715),
    [anon_sym_bytes23] = ACTIONS(715),
    [anon_sym_bytes24] = ACTIONS(715),
    [anon_sym_bytes25] = ACTIONS(715),
    [anon_sym_bytes26] = ACTIONS(715),
    [anon_sym_bytes27] = ACTIONS(715),
    [anon_sym_bytes28] = ACTIONS(715),
    [anon_sym_bytes29] = ACTIONS(715),
    [anon_sym_bytes30] = ACTIONS(715),
    [anon_sym_bytes31] = ACTIONS(715),
    [anon_sym_bytes32] = ACTIONS(715),
    [anon_sym_fixed] = ACTIONS(715),
    [aux_sym__fixed_token1] = ACTIONS(715),
    [anon_sym_ufixed] = ACTIONS(715),
    [aux_sym__ufixed_token1] = ACTIONS(715),
    [sym_comment] = ACTIONS(3),
  },
  [203] = {
    [sym_identifier] = ACTIONS(791),
    [anon_sym_RBRACE] = ACTIONS(793),
    [anon_sym_type] = ACTIONS(791),
    [anon_sym_error] = ACTIONS(791),
    [anon_sym_struct] = ACTIONS(791),
    [anon_sym_enum] = ACTIONS(791),
    [anon_sym_event] = ACTIONS(791),
    [anon_sym_using] = ACTIONS(791),
    [anon_sym_function] = ACTIONS(791),
    [anon_sym_byte] = ACTIONS(791),
    [anon_sym_address] = ACTIONS(791),
    [anon_sym_var] = ACTIONS(791),
    [anon_sym_modifier] = ACTIONS(791),
    [anon_sym_constructor] = ACTIONS(791),
    [anon_sym_fallback] = ACTIONS(791),
    [anon_sym_receive] = ACTIONS(791),
    [anon_sym_mapping] = ACTIONS(791),
    [anon_sym_bool] = ACTIONS(791),
    [anon_sym_string] = ACTIONS(791),
    [anon_sym_int] = ACTIONS(791),
    [anon_sym_int8] = ACTIONS(791),
    [anon_sym_int16] = ACTIONS(791),
    [anon_sym_int24] = ACTIONS(791),
    [anon_sym_int32] = ACTIONS(791),
    [anon_sym_int40] = ACTIONS(791),
    [anon_sym_int48] = ACTIONS(791),
    [anon_sym_int56] = ACTIONS(791),
    [anon_sym_int64] = ACTIONS(791),
    [anon_sym_int72] = ACTIONS(791),
    [anon_sym_int80] = ACTIONS(791),
    [anon_sym_int88] = ACTIONS(791),
    [anon_sym_int96] = ACTIONS(791),
    [anon_sym_int104] = ACTIONS(791),
    [anon_sym_int112] = ACTIONS(791),
    [anon_sym_int120] = ACTIONS(791),
    [anon_sym_int128] = ACTIONS(791),
    [anon_sym_int136] = ACTIONS(791),
    [anon_sym_int144] = ACTIONS(791),
    [anon_sym_int152] = ACTIONS(791),
    [anon_sym_int160] = ACTIONS(791),
    [anon_sym_int168] = ACTIONS(791),
    [anon_sym_int176] = ACTIONS(791),
    [anon_sym_int184] = ACTIONS(791),
    [anon_sym_int192] = ACTIONS(791),
    [anon_sym_int200] = ACTIONS(791),
    [anon_sym_int208] = ACTIONS(791),
    [anon_sym_int216] = ACTIONS(791),
    [anon_sym_int224] = ACTIONS(791),
    [anon_sym_int232] = ACTIONS(791),
    [anon_sym_int240] = ACTIONS(791),
    [anon_sym_int248] = ACTIONS(791),
    [anon_sym_int256] = ACTIONS(791),
    [anon_sym_uint] = ACTIONS(791),
    [anon_sym_uint8] = ACTIONS(791),
    [anon_sym_uint16] = ACTIONS(791),
    [anon_sym_uint24] = ACTIONS(791),
    [anon_sym_uint32] = ACTIONS(791),
    [anon_sym_uint40] = ACTIONS(791),
    [anon_sym_uint48] = ACTIONS(791),
    [anon_sym_uint56] = ACTIONS(791),
    [anon_sym_uint64] = ACTIONS(791),
    [anon_sym_uint72] = ACTIONS(791),
    [anon_sym_uint80] = ACTIONS(791),
    [anon_sym_uint88] = ACTIONS(791),
    [anon_sym_uint96] = ACTIONS(791),
    [anon_sym_uint104] = ACTIONS(791),
    [anon_sym_uint112] = ACTIONS(791),
    [anon_sym_uint120] = ACTIONS(791),
    [anon_sym_uint128] = ACTIONS(791),
    [anon_sym_uint136] = ACTIONS(791),
    [anon_sym_uint144] = ACTIONS(791),
    [anon_sym_uint152] = ACTIONS(791),
    [anon_sym_uint160] = ACTIONS(791),
    [anon_sym_uint168] = ACTIONS(791),
    [anon_sym_uint176] = ACTIONS(791),
    [anon_sym_uint184] = ACTIONS(791),
    [anon_sym_uint192] = ACTIONS(791),
    [anon_sym_uint200] = ACTIONS(791),
    [anon_sym_uint208] = ACTIONS(791),
    [anon_sym_uint216] = ACTIONS(791),
    [anon_sym_uint224] = ACTIONS(791),
    [anon_sym_uint232] = ACTIONS(791),
    [anon_sym_uint240] = ACTIONS(791),
    [anon_sym_uint248] = ACTIONS(791),
    [anon_sym_uint256] = ACTIONS(791),
    [anon_sym_bytes] = ACTIONS(791),
    [anon_sym_bytes1] = ACTIONS(791),
    [anon_sym_bytes2] = ACTIONS(791),
    [anon_sym_bytes3] = ACTIONS(791),
    [anon_sym_bytes4] = ACTIONS(791),
    [anon_sym_bytes5] = ACTIONS(791),
    [anon_sym_bytes6] = ACTIONS(791),
    [anon_sym_bytes7] = ACTIONS(791),
    [anon_sym_bytes8] = ACTIONS(791),
    [anon_sym_bytes9] = ACTIONS(791),
    [anon_sym_bytes10] = ACTIONS(791),
    [anon_sym_bytes11] = ACTIONS(791),
    [anon_sym_bytes12] = ACTIONS(791),
    [anon_sym_bytes13] = ACTIONS(791),
    [anon_sym_bytes14] = ACTIONS(791),
    [anon_sym_bytes15] = ACTIONS(791),
    [anon_sym_bytes16] = ACTIONS(791),
    [anon_sym_bytes17] = ACTIONS(791),
    [anon_sym_bytes18] = ACTIONS(791),
    [anon_sym_bytes19] = ACTIONS(791),
    [anon_sym_bytes20] = ACTIONS(791),
    [anon_sym_bytes21] = ACTIONS(791),
    [anon_sym_bytes22] = ACTIONS(791),
    [anon_sym_bytes23] = ACTIONS(791),
    [anon_sym_bytes24] = ACTIONS(791),
    [anon_sym_bytes25] = ACTIONS(791),
    [anon_sym_bytes26] = ACTIONS(791),
    [anon_sym_bytes27] = ACTIONS(791),
    [anon_sym_bytes28] = ACTIONS(791),
    [anon_sym_bytes29] = ACTIONS(791),
    [anon_sym_bytes30] = ACTIONS(791),
    [anon_sym_bytes31] = ACTIONS(791),
    [anon_sym_bytes32] = ACTIONS(791),
    [anon_sym_fixed] = ACTIONS(791),
    [aux_sym__fixed_token1] = ACTIONS(791),
    [anon_sym_ufixed] = ACTIONS(791),
    [aux_sym__ufixed_token1] = ACTIONS(791),
    [sym_comment] = ACTIONS(3),
  },
  [204] = {
    [sym_identifier] = ACTIONS(795),
    [anon_sym_RBRACE] = ACTIONS(797),
    [anon_sym_type] = ACTIONS(795),
    [anon_sym_error] = ACTIONS(795),
    [anon_sym_struct] = ACTIONS(795),
    [anon_sym_enum] = ACTIONS(795),
    [anon_sym_event] = ACTIONS(795),
    [anon_sym_using] = ACTIONS(795),
    [anon_sym_function] = ACTIONS(795),
    [anon_sym_byte] = ACTIONS(795),
    [anon_sym_address] = ACTIONS(795),
    [anon_sym_var] = ACTIONS(795),
    [anon_sym_modifier] = ACTIONS(795),
    [anon_sym_constructor] = ACTIONS(795),
    [anon_sym_fallback] = ACTIONS(795),
    [anon_sym_receive] = ACTIONS(795),
    [anon_sym_mapping] = ACTIONS(795),
    [anon_sym_bool] = ACTIONS(795),
    [anon_sym_string] = ACTIONS(795),
    [anon_sym_int] = ACTIONS(795),
    [anon_sym_int8] = ACTIONS(795),
    [anon_sym_int16] = ACTIONS(795),
    [anon_sym_int24] = ACTIONS(795),
    [anon_sym_int32] = ACTIONS(795),
    [anon_sym_int40] = ACTIONS(795),
    [anon_sym_int48] = ACTIONS(795),
    [anon_sym_int56] = ACTIONS(795),
    [anon_sym_int64] = ACTIONS(795),
    [anon_sym_int72] = ACTIONS(795),
    [anon_sym_int80] = ACTIONS(795),
    [anon_sym_int88] = ACTIONS(795),
    [anon_sym_int96] = ACTIONS(795),
    [anon_sym_int104] = ACTIONS(795),
    [anon_sym_int112] = ACTIONS(795),
    [anon_sym_int120] = ACTIONS(795),
    [anon_sym_int128] = ACTIONS(795),
    [anon_sym_int136] = ACTIONS(795),
    [anon_sym_int144] = ACTIONS(795),
    [anon_sym_int152] = ACTIONS(795),
    [anon_sym_int160] = ACTIONS(795),
    [anon_sym_int168] = ACTIONS(795),
    [anon_sym_int176] = ACTIONS(795),
    [anon_sym_int184] = ACTIONS(795),
    [anon_sym_int192] = ACTIONS(795),
    [anon_sym_int200] = ACTIONS(795),
    [anon_sym_int208] = ACTIONS(795),
    [anon_sym_int216] = ACTIONS(795),
    [anon_sym_int224] = ACTIONS(795),
    [anon_sym_int232] = ACTIONS(795),
    [anon_sym_int240] = ACTIONS(795),
    [anon_sym_int248] = ACTIONS(795),
    [anon_sym_int256] = ACTIONS(795),
    [anon_sym_uint] = ACTIONS(795),
    [anon_sym_uint8] = ACTIONS(795),
    [anon_sym_uint16] = ACTIONS(795),
    [anon_sym_uint24] = ACTIONS(795),
    [anon_sym_uint32] = ACTIONS(795),
    [anon_sym_uint40] = ACTIONS(795),
    [anon_sym_uint48] = ACTIONS(795),
    [anon_sym_uint56] = ACTIONS(795),
    [anon_sym_uint64] = ACTIONS(795),
    [anon_sym_uint72] = ACTIONS(795),
    [anon_sym_uint80] = ACTIONS(795),
    [anon_sym_uint88] = ACTIONS(795),
    [anon_sym_uint96] = ACTIONS(795),
    [anon_sym_uint104] = ACTIONS(795),
    [anon_sym_uint112] = ACTIONS(795),
    [anon_sym_uint120] = ACTIONS(795),
    [anon_sym_uint128] = ACTIONS(795),
    [anon_sym_uint136] = ACTIONS(795),
    [anon_sym_uint144] = ACTIONS(795),
    [anon_sym_uint152] = ACTIONS(795),
    [anon_sym_uint160] = ACTIONS(795),
    [anon_sym_uint168] = ACTIONS(795),
    [anon_sym_uint176] = ACTIONS(795),
    [anon_sym_uint184] = ACTIONS(795),
    [anon_sym_uint192] = ACTIONS(795),
    [anon_sym_uint200] = ACTIONS(795),
    [anon_sym_uint208] = ACTIONS(795),
    [anon_sym_uint216] = ACTIONS(795),
    [anon_sym_uint224] = ACTIONS(795),
    [anon_sym_uint232] = ACTIONS(795),
    [anon_sym_uint240] = ACTIONS(795),
    [anon_sym_uint248] = ACTIONS(795),
    [anon_sym_uint256] = ACTIONS(795),
    [anon_sym_bytes] = ACTIONS(795),
    [anon_sym_bytes1] = ACTIONS(795),
    [anon_sym_bytes2] = ACTIONS(795),
    [anon_sym_bytes3] = ACTIONS(795),
    [anon_sym_bytes4] = ACTIONS(795),
    [anon_sym_bytes5] = ACTIONS(795),
    [anon_sym_bytes6] = ACTIONS(795),
    [anon_sym_bytes7] = ACTIONS(795),
    [anon_sym_bytes8] = ACTIONS(795),
    [anon_sym_bytes9] = ACTIONS(795),
    [anon_sym_bytes10] = ACTIONS(795),
    [anon_sym_bytes11] = ACTIONS(795),
    [anon_sym_bytes12] = ACTIONS(795),
    [anon_sym_bytes13] = ACTIONS(795),
    [anon_sym_bytes14] = ACTIONS(795),
    [anon_sym_bytes15] = ACTIONS(795),
    [anon_sym_bytes16] = ACTIONS(795),
    [anon_sym_bytes17] = ACTIONS(795),
    [anon_sym_bytes18] = ACTIONS(795),
    [anon_sym_bytes19] = ACTIONS(795),
    [anon_sym_bytes20] = ACTIONS(795),
    [anon_sym_bytes21] = ACTIONS(795),
    [anon_sym_bytes22] = ACTIONS(795),
    [anon_sym_bytes23] = ACTIONS(795),
    [anon_sym_bytes24] = ACTIONS(795),
    [anon_sym_bytes25] = ACTIONS(795),
    [anon_sym_bytes26] = ACTIONS(795),
    [anon_sym_bytes27] = ACTIONS(795),
    [anon_sym_bytes28] = ACTIONS(795),
    [anon_sym_bytes29] = ACTIONS(795),
    [anon_sym_bytes30] = ACTIONS(795),
    [anon_sym_bytes31] = ACTIONS(795),
    [anon_sym_bytes32] = ACTIONS(795),
    [anon_sym_fixed] = ACTIONS(795),
    [aux_sym__fixed_token1] = ACTIONS(795),
    [anon_sym_ufixed] = ACTIONS(795),
    [aux_sym__ufixed_token1] = ACTIONS(795),
    [sym_comment] = ACTIONS(3),
  },
  [205] = {
    [ts_builtin_sym_end] = ACTIONS(799),
    [sym_identifier] = ACTIONS(801),
    [anon_sym_pragma] = ACTIONS(801),
    [anon_sym_import] = ACTIONS(801),
    [anon_sym_type] = ACTIONS(801),
    [anon_sym_abstract] = ACTIONS(801),
    [anon_sym_contract] = ACTIONS(801),
    [anon_sym_error] = ACTIONS(801),
    [anon_sym_interface] = ACTIONS(801),
    [anon_sym_library] = ACTIONS(801),
    [anon_sym_struct] = ACTIONS(801),
    [anon_sym_enum] = ACTIONS(801),
    [anon_sym_function] = ACTIONS(801),
    [anon_sym_byte] = ACTIONS(801),
    [anon_sym_address] = ACTIONS(801),
    [anon_sym_var] = ACTIONS(801),
    [anon_sym_mapping] = ACTIONS(801),
    [anon_sym_bool] = ACTIONS(801),
    [anon_sym_string] = ACTIONS(801),
    [anon_sym_int] = ACTIONS(801),
    [anon_sym_int8] = ACTIONS(801),
    [anon_sym_int16] = ACTIONS(801),
    [anon_sym_int24] = ACTIONS(801),
    [anon_sym_int32] = ACTIONS(801),
    [anon_sym_int40] = ACTIONS(801),
    [anon_sym_int48] = ACTIONS(801),
    [anon_sym_int56] = ACTIONS(801),
    [anon_sym_int64] = ACTIONS(801),
    [anon_sym_int72] = ACTIONS(801),
    [anon_sym_int80] = ACTIONS(801),
    [anon_sym_int88] = ACTIONS(801),
    [anon_sym_int96] = ACTIONS(801),
    [anon_sym_int104] = ACTIONS(801),
    [anon_sym_int112] = ACTIONS(801),
    [anon_sym_int120] = ACTIONS(801),
    [anon_sym_int128] = ACTIONS(801),
    [anon_sym_int136] = ACTIONS(801),
    [anon_sym_int144] = ACTIONS(801),
    [anon_sym_int152] = ACTIONS(801),
    [anon_sym_int160] = ACTIONS(801),
    [anon_sym_int168] = ACTIONS(801),
    [anon_sym_int176] = ACTIONS(801),
    [anon_sym_int184] = ACTIONS(801),
    [anon_sym_int192] = ACTIONS(801),
    [anon_sym_int200] = ACTIONS(801),
    [anon_sym_int208] = ACTIONS(801),
    [anon_sym_int216] = ACTIONS(801),
    [anon_sym_int224] = ACTIONS(801),
    [anon_sym_int232] = ACTIONS(801),
    [anon_sym_int240] = ACTIONS(801),
    [anon_sym_int248] = ACTIONS(801),
    [anon_sym_int256] = ACTIONS(801),
    [anon_sym_uint] = ACTIONS(801),
    [anon_sym_uint8] = ACTIONS(801),
    [anon_sym_uint16] = ACTIONS(801),
    [anon_sym_uint24] = ACTIONS(801),
    [anon_sym_uint32] = ACTIONS(801),
    [anon_sym_uint40] = ACTIONS(801),
    [anon_sym_uint48] = ACTIONS(801),
    [anon_sym_uint56] = ACTIONS(801),
    [anon_sym_uint64] = ACTIONS(801),
    [anon_sym_uint72] = ACTIONS(801),
    [anon_sym_uint80] = ACTIONS(801),
    [anon_sym_uint88] = ACTIONS(801),
    [anon_sym_uint96] = ACTIONS(801),
    [anon_sym_uint104] = ACTIONS(801),
    [anon_sym_uint112] = ACTIONS(801),
    [anon_sym_uint120] = ACTIONS(801),
    [anon_sym_uint128] = ACTIONS(801),
    [anon_sym_uint136] = ACTIONS(801),
    [anon_sym_uint144] = ACTIONS(801),
    [anon_sym_uint152] = ACTIONS(801),
    [anon_sym_uint160] = ACTIONS(801),
    [anon_sym_uint168] = ACTIONS(801),
    [anon_sym_uint176] = ACTIONS(801),
    [anon_sym_uint184] = ACTIONS(801),
    [anon_sym_uint192] = ACTIONS(801),
    [anon_sym_uint200] = ACTIONS(801),
    [anon_sym_uint208] = ACTIONS(801),
    [anon_sym_uint216] = ACTIONS(801),
    [anon_sym_uint224] = ACTIONS(801),
    [anon_sym_uint232] = ACTIONS(801),
    [anon_sym_uint240] = ACTIONS(801),
    [anon_sym_uint248] = ACTIONS(801),
    [anon_sym_uint256] = ACTIONS(801),
    [anon_sym_bytes] = ACTIONS(801),
    [anon_sym_bytes1] = ACTIONS(801),
    [anon_sym_bytes2] = ACTIONS(801),
    [anon_sym_bytes3] = ACTIONS(801),
    [anon_sym_bytes4] = ACTIONS(801),
    [anon_sym_bytes5] = ACTIONS(801),
    [anon_sym_bytes6] = ACTIONS(801),
    [anon_sym_bytes7] = ACTIONS(801),
    [anon_sym_bytes8] = ACTIONS(801),
    [anon_sym_bytes9] = ACTIONS(801),
    [anon_sym_bytes10] = ACTIONS(801),
    [anon_sym_bytes11] = ACTIONS(801),
    [anon_sym_bytes12] = ACTIONS(801),
    [anon_sym_bytes13] = ACTIONS(801),
    [anon_sym_bytes14] = ACTIONS(801),
    [anon_sym_bytes15] = ACTIONS(801),
    [anon_sym_bytes16] = ACTIONS(801),
    [anon_sym_bytes17] = ACTIONS(801),
    [anon_sym_bytes18] = ACTIONS(801),
    [anon_sym_bytes19] = ACTIONS(801),
    [anon_sym_bytes20] = ACTIONS(801),
    [anon_sym_bytes21] = ACTIONS(801),
    [anon_sym_bytes22] = ACTIONS(801),
    [anon_sym_bytes23] = ACTIONS(801),
    [anon_sym_bytes24] = ACTIONS(801),
    [anon_sym_bytes25] = ACTIONS(801),
    [anon_sym_bytes26] = ACTIONS(801),
    [anon_sym_bytes27] = ACTIONS(801),
    [anon_sym_bytes28] = ACTIONS(801),
    [anon_sym_bytes29] = ACTIONS(801),
    [anon_sym_bytes30] = ACTIONS(801),
    [anon_sym_bytes31] = ACTIONS(801),
    [anon_sym_bytes32] = ACTIONS(801),
    [anon_sym_fixed] = ACTIONS(801),
    [aux_sym__fixed_token1] = ACTIONS(801),
    [anon_sym_ufixed] = ACTIONS(801),
    [aux_sym__ufixed_token1] = ACTIONS(801),
    [sym_comment] = ACTIONS(3),
  },
  [206] = {
    [ts_builtin_sym_end] = ACTIONS(597),
    [sym_identifier] = ACTIONS(595),
    [anon_sym_pragma] = ACTIONS(595),
    [anon_sym_import] = ACTIONS(595),
    [anon_sym_type] = ACTIONS(595),
    [anon_sym_abstract] = ACTIONS(595),
    [anon_sym_contract] = ACTIONS(595),
    [anon_sym_error] = ACTIONS(595),
    [anon_sym_interface] = ACTIONS(595),
    [anon_sym_library] = ACTIONS(595),
    [anon_sym_struct] = ACTIONS(595),
    [anon_sym_enum] = ACTIONS(595),
    [anon_sym_function] = ACTIONS(595),
    [anon_sym_byte] = ACTIONS(595),
    [anon_sym_address] = ACTIONS(595),
    [anon_sym_var] = ACTIONS(595),
    [anon_sym_mapping] = ACTIONS(595),
    [anon_sym_bool] = ACTIONS(595),
    [anon_sym_string] = ACTIONS(595),
    [anon_sym_int] = ACTIONS(595),
    [anon_sym_int8] = ACTIONS(595),
    [anon_sym_int16] = ACTIONS(595),
    [anon_sym_int24] = ACTIONS(595),
    [anon_sym_int32] = ACTIONS(595),
    [anon_sym_int40] = ACTIONS(595),
    [anon_sym_int48] = ACTIONS(595),
    [anon_sym_int56] = ACTIONS(595),
    [anon_sym_int64] = ACTIONS(595),
    [anon_sym_int72] = ACTIONS(595),
    [anon_sym_int80] = ACTIONS(595),
    [anon_sym_int88] = ACTIONS(595),
    [anon_sym_int96] = ACTIONS(595),
    [anon_sym_int104] = ACTIONS(595),
    [anon_sym_int112] = ACTIONS(595),
    [anon_sym_int120] = ACTIONS(595),
    [anon_sym_int128] = ACTIONS(595),
    [anon_sym_int136] = ACTIONS(595),
    [anon_sym_int144] = ACTIONS(595),
    [anon_sym_int152] = ACTIONS(595),
    [anon_sym_int160] = ACTIONS(595),
    [anon_sym_int168] = ACTIONS(595),
    [anon_sym_int176] = ACTIONS(595),
    [anon_sym_int184] = ACTIONS(595),
    [anon_sym_int192] = ACTIONS(595),
    [anon_sym_int200] = ACTIONS(595),
    [anon_sym_int208] = ACTIONS(595),
    [anon_sym_int216] = ACTIONS(595),
    [anon_sym_int224] = ACTIONS(595),
    [anon_sym_int232] = ACTIONS(595),
    [anon_sym_int240] = ACTIONS(595),
    [anon_sym_int248] = ACTIONS(595),
    [anon_sym_int256] = ACTIONS(595),
    [anon_sym_uint] = ACTIONS(595),
    [anon_sym_uint8] = ACTIONS(595),
    [anon_sym_uint16] = ACTIONS(595),
    [anon_sym_uint24] = ACTIONS(595),
    [anon_sym_uint32] = ACTIONS(595),
    [anon_sym_uint40] = ACTIONS(595),
    [anon_sym_uint48] = ACTIONS(595),
    [anon_sym_uint56] = ACTIONS(595),
    [anon_sym_uint64] = ACTIONS(595),
    [anon_sym_uint72] = ACTIONS(595),
    [anon_sym_uint80] = ACTIONS(595),
    [anon_sym_uint88] = ACTIONS(595),
    [anon_sym_uint96] = ACTIONS(595),
    [anon_sym_uint104] = ACTIONS(595),
    [anon_sym_uint112] = ACTIONS(595),
    [anon_sym_uint120] = ACTIONS(595),
    [anon_sym_uint128] = ACTIONS(595),
    [anon_sym_uint136] = ACTIONS(595),
    [anon_sym_uint144] = ACTIONS(595),
    [anon_sym_uint152] = ACTIONS(595),
    [anon_sym_uint160] = ACTIONS(595),
    [anon_sym_uint168] = ACTIONS(595),
    [anon_sym_uint176] = ACTIONS(595),
    [anon_sym_uint184] = ACTIONS(595),
    [anon_sym_uint192] = ACTIONS(595),
    [anon_sym_uint200] = ACTIONS(595),
    [anon_sym_uint208] = ACTIONS(595),
    [anon_sym_uint216] = ACTIONS(595),
    [anon_sym_uint224] = ACTIONS(595),
    [anon_sym_uint232] = ACTIONS(595),
    [anon_sym_uint240] = ACTIONS(595),
    [anon_sym_uint248] = ACTIONS(595),
    [anon_sym_uint256] = ACTIONS(595),
    [anon_sym_bytes] = ACTIONS(595),
    [anon_sym_bytes1] = ACTIONS(595),
    [anon_sym_bytes2] = ACTIONS(595),
    [anon_sym_bytes3] = ACTIONS(595),
    [anon_sym_bytes4] = ACTIONS(595),
    [anon_sym_bytes5] = ACTIONS(595),
    [anon_sym_bytes6] = ACTIONS(595),
    [anon_sym_bytes7] = ACTIONS(595),
    [anon_sym_bytes8] = ACTIONS(595),
    [anon_sym_bytes9] = ACTIONS(595),
    [anon_sym_bytes10] = ACTIONS(595),
    [anon_sym_bytes11] = ACTIONS(595),
    [anon_sym_bytes12] = ACTIONS(595),
    [anon_sym_bytes13] = ACTIONS(595),
    [anon_sym_bytes14] = ACTIONS(595),
    [anon_sym_bytes15] = ACTIONS(595),
    [anon_sym_bytes16] = ACTIONS(595),
    [anon_sym_bytes17] = ACTIONS(595),
    [anon_sym_bytes18] = ACTIONS(595),
    [anon_sym_bytes19] = ACTIONS(595),
    [anon_sym_bytes20] = ACTIONS(595),
    [anon_sym_bytes21] = ACTIONS(595),
    [anon_sym_bytes22] = ACTIONS(595),
    [anon_sym_bytes23] = ACTIONS(595),
    [anon_sym_bytes24] = ACTIONS(595),
    [anon_sym_bytes25] = ACTIONS(595),
    [anon_sym_bytes26] = ACTIONS(595),
    [anon_sym_bytes27] = ACTIONS(595),
    [anon_sym_bytes28] = ACTIONS(595),
    [anon_sym_bytes29] = ACTIONS(595),
    [anon_sym_bytes30] = ACTIONS(595),
    [anon_sym_bytes31] = ACTIONS(595),
    [anon_sym_bytes32] = ACTIONS(595),
    [anon_sym_fixed] = ACTIONS(595),
    [aux_sym__fixed_token1] = ACTIONS(595),
    [anon_sym_ufixed] = ACTIONS(595),
    [aux_sym__ufixed_token1] = ACTIONS(595),
    [sym_comment] = ACTIONS(3),
  },
  [207] = {
    [sym_user_defined_type] = STATE(764),
    [sym__identifier_path] = STATE(308),
    [sym__mapping_key] = STATE(764),
    [sym_primitive_type] = STATE(764),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [sym_identifier] = ACTIONS(7),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(33),
    [anon_sym_var] = ACTIONS(31),
    [anon_sym_bool] = ACTIONS(31),
    [anon_sym_string] = ACTIONS(31),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(31),
    [anon_sym_int40] = ACTIONS(31),
    [anon_sym_int48] = ACTIONS(31),
    [anon_sym_int56] = ACTIONS(31),
    [anon_sym_int64] = ACTIONS(31),
    [anon_sym_int72] = ACTIONS(31),
    [anon_sym_int80] = ACTIONS(31),
    [anon_sym_int88] = ACTIONS(31),
    [anon_sym_int96] = ACTIONS(31),
    [anon_sym_int104] = ACTIONS(31),
    [anon_sym_int112] = ACTIONS(31),
    [anon_sym_int120] = ACTIONS(31),
    [anon_sym_int128] = ACTIONS(31),
    [anon_sym_int136] = ACTIONS(31),
    [anon_sym_int144] = ACTIONS(31),
    [anon_sym_int152] = ACTIONS(31),
    [anon_sym_int160] = ACTIONS(31),
    [anon_sym_int168] = ACTIONS(31),
    [anon_sym_int176] = ACTIONS(31),
    [anon_sym_int184] = ACTIONS(31),
    [anon_sym_int192] = ACTIONS(31),
    [anon_sym_int200] = ACTIONS(31),
    [anon_sym_int208] = ACTIONS(31),
    [anon_sym_int216] = ACTIONS(31),
    [anon_sym_int224] = ACTIONS(31),
    [anon_sym_int232] = ACTIONS(31),
    [anon_sym_int240] = ACTIONS(31),
    [anon_sym_int248] = ACTIONS(31),
    [anon_sym_int256] = ACTIONS(31),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(31),
    [anon_sym_uint40] = ACTIONS(31),
    [anon_sym_uint48] = ACTIONS(31),
    [anon_sym_uint56] = ACTIONS(31),
    [anon_sym_uint64] = ACTIONS(31),
    [anon_sym_uint72] = ACTIONS(31),
    [anon_sym_uint80] = ACTIONS(31),
    [anon_sym_uint88] = ACTIONS(31),
    [anon_sym_uint96] = ACTIONS(31),
    [anon_sym_uint104] = ACTIONS(31),
    [anon_sym_uint112] = ACTIONS(31),
    [anon_sym_uint120] = ACTIONS(31),
    [anon_sym_uint128] = ACTIONS(31),
    [anon_sym_uint136] = ACTIONS(31),
    [anon_sym_uint144] = ACTIONS(31),
    [anon_sym_uint152] = ACTIONS(31),
    [anon_sym_uint160] = ACTIONS(31),
    [anon_sym_uint168] = ACTIONS(31),
    [anon_sym_uint176] = ACTIONS(31),
    [anon_sym_uint184] = ACTIONS(31),
    [anon_sym_uint192] = ACTIONS(31),
    [anon_sym_uint200] = ACTIONS(31),
    [anon_sym_uint208] = ACTIONS(31),
    [anon_sym_uint216] = ACTIONS(31),
    [anon_sym_uint224] = ACTIONS(31),
    [anon_sym_uint232] = ACTIONS(31),
    [anon_sym_uint240] = ACTIONS(31),
    [anon_sym_uint248] = ACTIONS(31),
    [anon_sym_uint256] = ACTIONS(31),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(31),
    [anon_sym_bytes5] = ACTIONS(31),
    [anon_sym_bytes6] = ACTIONS(31),
    [anon_sym_bytes7] = ACTIONS(31),
    [anon_sym_bytes8] = ACTIONS(31),
    [anon_sym_bytes9] = ACTIONS(31),
    [anon_sym_bytes10] = ACTIONS(31),
    [anon_sym_bytes11] = ACTIONS(31),
    [anon_sym_bytes12] = ACTIONS(31),
    [anon_sym_bytes13] = ACTIONS(31),
    [anon_sym_bytes14] = ACTIONS(31),
    [anon_sym_bytes15] = ACTIONS(31),
    [anon_sym_bytes16] = ACTIONS(31),
    [anon_sym_bytes17] = ACTIONS(31),
    [anon_sym_bytes18] = ACTIONS(31),
    [anon_sym_bytes19] = ACTIONS(31),
    [anon_sym_bytes20] = ACTIONS(31),
    [anon_sym_bytes21] = ACTIONS(31),
    [anon_sym_bytes22] = ACTIONS(31),
    [anon_sym_bytes23] = ACTIONS(31),
    [anon_sym_bytes24] = ACTIONS(31),
    [anon_sym_bytes25] = ACTIONS(31),
    [anon_sym_bytes26] = ACTIONS(31),
    [anon_sym_bytes27] = ACTIONS(31),
    [anon_sym_bytes28] = ACTIONS(31),
    [anon_sym_bytes29] = ACTIONS(31),
    [anon_sym_bytes30] = ACTIONS(31),
    [anon_sym_bytes31] = ACTIONS(31),
    [anon_sym_bytes32] = ACTIONS(31),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(31),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(31),
    [sym_comment] = ACTIONS(3),
  },
  [208] = {
    [sym_primitive_type] = STATE(792),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(803),
    [anon_sym_var] = ACTIONS(805),
    [anon_sym_bool] = ACTIONS(805),
    [anon_sym_string] = ACTIONS(805),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(805),
    [anon_sym_int40] = ACTIONS(805),
    [anon_sym_int48] = ACTIONS(805),
    [anon_sym_int56] = ACTIONS(805),
    [anon_sym_int64] = ACTIONS(805),
    [anon_sym_int72] = ACTIONS(805),
    [anon_sym_int80] = ACTIONS(805),
    [anon_sym_int88] = ACTIONS(805),
    [anon_sym_int96] = ACTIONS(805),
    [anon_sym_int104] = ACTIONS(805),
    [anon_sym_int112] = ACTIONS(805),
    [anon_sym_int120] = ACTIONS(805),
    [anon_sym_int128] = ACTIONS(805),
    [anon_sym_int136] = ACTIONS(805),
    [anon_sym_int144] = ACTIONS(805),
    [anon_sym_int152] = ACTIONS(805),
    [anon_sym_int160] = ACTIONS(805),
    [anon_sym_int168] = ACTIONS(805),
    [anon_sym_int176] = ACTIONS(805),
    [anon_sym_int184] = ACTIONS(805),
    [anon_sym_int192] = ACTIONS(805),
    [anon_sym_int200] = ACTIONS(805),
    [anon_sym_int208] = ACTIONS(805),
    [anon_sym_int216] = ACTIONS(805),
    [anon_sym_int224] = ACTIONS(805),
    [anon_sym_int232] = ACTIONS(805),
    [anon_sym_int240] = ACTIONS(805),
    [anon_sym_int248] = ACTIONS(805),
    [anon_sym_int256] = ACTIONS(805),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(805),
    [anon_sym_uint40] = ACTIONS(805),
    [anon_sym_uint48] = ACTIONS(805),
    [anon_sym_uint56] = ACTIONS(805),
    [anon_sym_uint64] = ACTIONS(805),
    [anon_sym_uint72] = ACTIONS(805),
    [anon_sym_uint80] = ACTIONS(805),
    [anon_sym_uint88] = ACTIONS(805),
    [anon_sym_uint96] = ACTIONS(805),
    [anon_sym_uint104] = ACTIONS(805),
    [anon_sym_uint112] = ACTIONS(805),
    [anon_sym_uint120] = ACTIONS(805),
    [anon_sym_uint128] = ACTIONS(805),
    [anon_sym_uint136] = ACTIONS(805),
    [anon_sym_uint144] = ACTIONS(805),
    [anon_sym_uint152] = ACTIONS(805),
    [anon_sym_uint160] = ACTIONS(805),
    [anon_sym_uint168] = ACTIONS(805),
    [anon_sym_uint176] = ACTIONS(805),
    [anon_sym_uint184] = ACTIONS(805),
    [anon_sym_uint192] = ACTIONS(805),
    [anon_sym_uint200] = ACTIONS(805),
    [anon_sym_uint208] = ACTIONS(805),
    [anon_sym_uint216] = ACTIONS(805),
    [anon_sym_uint224] = ACTIONS(805),
    [anon_sym_uint232] = ACTIONS(805),
    [anon_sym_uint240] = ACTIONS(805),
    [anon_sym_uint248] = ACTIONS(805),
    [anon_sym_uint256] = ACTIONS(805),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(805),
    [anon_sym_bytes5] = ACTIONS(805),
    [anon_sym_bytes6] = ACTIONS(805),
    [anon_sym_bytes7] = ACTIONS(805),
    [anon_sym_bytes8] = ACTIONS(805),
    [anon_sym_bytes9] = ACTIONS(805),
    [anon_sym_bytes10] = ACTIONS(805),
    [anon_sym_bytes11] = ACTIONS(805),
    [anon_sym_bytes12] = ACTIONS(805),
    [anon_sym_bytes13] = ACTIONS(805),
    [anon_sym_bytes14] = ACTIONS(805),
    [anon_sym_bytes15] = ACTIONS(805),
    [anon_sym_bytes16] = ACTIONS(805),
    [anon_sym_bytes17] = ACTIONS(805),
    [anon_sym_bytes18] = ACTIONS(805),
    [anon_sym_bytes19] = ACTIONS(805),
    [anon_sym_bytes20] = ACTIONS(805),
    [anon_sym_bytes21] = ACTIONS(805),
    [anon_sym_bytes22] = ACTIONS(805),
    [anon_sym_bytes23] = ACTIONS(805),
    [anon_sym_bytes24] = ACTIONS(805),
    [anon_sym_bytes25] = ACTIONS(805),
    [anon_sym_bytes26] = ACTIONS(805),
    [anon_sym_bytes27] = ACTIONS(805),
    [anon_sym_bytes28] = ACTIONS(805),
    [anon_sym_bytes29] = ACTIONS(805),
    [anon_sym_bytes30] = ACTIONS(805),
    [anon_sym_bytes31] = ACTIONS(805),
    [anon_sym_bytes32] = ACTIONS(805),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(805),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(805),
    [sym_comment] = ACTIONS(3),
  },
  [209] = {
    [sym_primitive_type] = STATE(769),
    [sym__int] = STATE(309),
    [sym__uint] = STATE(309),
    [sym__bytes] = STATE(309),
    [sym__fixed] = STATE(309),
    [sym__ufixed] = STATE(309),
    [anon_sym_byte] = ACTIONS(31),
    [anon_sym_address] = ACTIONS(803),
    [anon_sym_var] = ACTIONS(805),
    [anon_sym_bool] = ACTIONS(805),
    [anon_sym_string] = ACTIONS(805),
    [anon_sym_int] = ACTIONS(31),
    [anon_sym_int8] = ACTIONS(31),
    [anon_sym_int16] = ACTIONS(31),
    [anon_sym_int24] = ACTIONS(31),
    [anon_sym_int32] = ACTIONS(805),
    [anon_sym_int40] = ACTIONS(805),
    [anon_sym_int48] = ACTIONS(805),
    [anon_sym_int56] = ACTIONS(805),
    [anon_sym_int64] = ACTIONS(805),
    [anon_sym_int72] = ACTIONS(805),
    [anon_sym_int80] = ACTIONS(805),
    [anon_sym_int88] = ACTIONS(805),
    [anon_sym_int96] = ACTIONS(805),
    [anon_sym_int104] = ACTIONS(805),
    [anon_sym_int112] = ACTIONS(805),
    [anon_sym_int120] = ACTIONS(805),
    [anon_sym_int128] = ACTIONS(805),
    [anon_sym_int136] = ACTIONS(805),
    [anon_sym_int144] = ACTIONS(805),
    [anon_sym_int152] = ACTIONS(805),
    [anon_sym_int160] = ACTIONS(805),
    [anon_sym_int168] = ACTIONS(805),
    [anon_sym_int176] = ACTIONS(805),
    [anon_sym_int184] = ACTIONS(805),
    [anon_sym_int192] = ACTIONS(805),
    [anon_sym_int200] = ACTIONS(805),
    [anon_sym_int208] = ACTIONS(805),
    [anon_sym_int216] = ACTIONS(805),
    [anon_sym_int224] = ACTIONS(805),
    [anon_sym_int232] = ACTIONS(805),
    [anon_sym_int240] = ACTIONS(805),
    [anon_sym_int248] = ACTIONS(805),
    [anon_sym_int256] = ACTIONS(805),
    [anon_sym_uint] = ACTIONS(31),
    [anon_sym_uint8] = ACTIONS(31),
    [anon_sym_uint16] = ACTIONS(31),
    [anon_sym_uint24] = ACTIONS(31),
    [anon_sym_uint32] = ACTIONS(805),
    [anon_sym_uint40] = ACTIONS(805),
    [anon_sym_uint48] = ACTIONS(805),
    [anon_sym_uint56] = ACTIONS(805),
    [anon_sym_uint64] = ACTIONS(805),
    [anon_sym_uint72] = ACTIONS(805),
    [anon_sym_uint80] = ACTIONS(805),
    [anon_sym_uint88] = ACTIONS(805),
    [anon_sym_uint96] = ACTIONS(805),
    [anon_sym_uint104] = ACTIONS(805),
    [anon_sym_uint112] = ACTIONS(805),
    [anon_sym_uint120] = ACTIONS(805),
    [anon_sym_uint128] = ACTIONS(805),
    [anon_sym_uint136] = ACTIONS(805),
    [anon_sym_uint144] = ACTIONS(805),
    [anon_sym_uint152] = ACTIONS(805),
    [anon_sym_uint160] = ACTIONS(805),
    [anon_sym_uint168] = ACTIONS(805),
    [anon_sym_uint176] = ACTIONS(805),
    [anon_sym_uint184] = ACTIONS(805),
    [anon_sym_uint192] = ACTIONS(805),
    [anon_sym_uint200] = ACTIONS(805),
    [anon_sym_uint208] = ACTIONS(805),
    [anon_sym_uint216] = ACTIONS(805),
    [anon_sym_uint224] = ACTIONS(805),
    [anon_sym_uint232] = ACTIONS(805),
    [anon_sym_uint240] = ACTIONS(805),
    [anon_sym_uint248] = ACTIONS(805),
    [anon_sym_uint256] = ACTIONS(805),
    [anon_sym_bytes] = ACTIONS(31),
    [anon_sym_bytes1] = ACTIONS(31),
    [anon_sym_bytes2] = ACTIONS(31),
    [anon_sym_bytes3] = ACTIONS(31),
    [anon_sym_bytes4] = ACTIONS(805),
    [anon_sym_bytes5] = ACTIONS(805),
    [anon_sym_bytes6] = ACTIONS(805),
    [anon_sym_bytes7] = ACTIONS(805),
    [anon_sym_bytes8] = ACTIONS(805),
    [anon_sym_bytes9] = ACTIONS(805),
    [anon_sym_bytes10] = ACTIONS(805),
    [anon_sym_bytes11] = ACTIONS(805),
    [anon_sym_bytes12] = ACTIONS(805),
    [anon_sym_bytes13] = ACTIONS(805),
    [anon_sym_bytes14] = ACTIONS(805),
    [anon_sym_bytes15] = ACTIONS(805),
    [anon_sym_bytes16] = ACTIONS(805),
    [anon_sym_bytes17] = ACTIONS(805),
    [anon_sym_bytes18] = ACTIONS(805),
    [anon_sym_bytes19] = ACTIONS(805),
    [anon_sym_bytes20] = ACTIONS(805),
    [anon_sym_bytes21] = ACTIONS(805),
    [anon_sym_bytes22] = ACTIONS(805),
    [anon_sym_bytes23] = ACTIONS(805),
    [anon_sym_bytes24] = ACTIONS(805),
    [anon_sym_bytes25] = ACTIONS(805),
    [anon_sym_bytes26] = ACTIONS(805),
    [anon_sym_bytes27] = ACTIONS(805),
    [anon_sym_bytes28] = ACTIONS(805),
    [anon_sym_bytes29] = ACTIONS(805),
    [anon_sym_bytes30] = ACTIONS(805),
    [anon_sym_bytes31] = ACTIONS(805),
    [anon_sym_bytes32] = ACTIONS(805),
    [anon_sym_fixed] = ACTIONS(31),
    [aux_sym__fixed_token1] = ACTIONS(805),
    [anon_sym_ufixed] = ACTIONS(31),
    [aux_sym__ufixed_token1] = ACTIONS(805),
    [sym_comment] = ACTIONS(3),
  },
  [210] = {
    [sym_identifier] = ACTIONS(807),
    [anon_sym_RBRACE] = ACTIONS(809),
    [anon_sym_function] = ACTIONS(807),
    [anon_sym_byte] = ACTIONS(807),
    [anon_sym_address] = ACTIONS(807),
    [anon_sym_var] = ACTIONS(807),
    [anon_sym_mapping] = ACTIONS(807),
    [anon_sym_bool] = ACTIONS(807),
    [anon_sym_string] = ACTIONS(807),
    [anon_sym_int] = ACTIONS(807),
    [anon_sym_int8] = ACTIONS(807),
    [anon_sym_int16] = ACTIONS(807),
    [anon_sym_int24] = ACTIONS(807),
    [anon_sym_int32] = ACTIONS(807),
    [anon_sym_int40] = ACTIONS(807),
    [anon_sym_int48] = ACTIONS(807),
    [anon_sym_int56] = ACTIONS(807),
    [anon_sym_int64] = ACTIONS(807),
    [anon_sym_int72] = ACTIONS(807),
    [anon_sym_int80] = ACTIONS(807),
    [anon_sym_int88] = ACTIONS(807),
    [anon_sym_int96] = ACTIONS(807),
    [anon_sym_int104] = ACTIONS(807),
    [anon_sym_int112] = ACTIONS(807),
    [anon_sym_int120] = ACTIONS(807),
    [anon_sym_int128] = ACTIONS(807),
    [anon_sym_int136] = ACTIONS(807),
    [anon_sym_int144] = ACTIONS(807),
    [anon_sym_int152] = ACTIONS(807),
    [anon_sym_int160] = ACTIONS(807),
    [anon_sym_int168] = ACTIONS(807),
    [anon_sym_int176] = ACTIONS(807),
    [anon_sym_int184] = ACTIONS(807),
    [anon_sym_int192] = ACTIONS(807),
    [anon_sym_int200] = ACTIONS(807),
    [anon_sym_int208] = ACTIONS(807),
    [anon_sym_int216] = ACTIONS(807),
    [anon_sym_int224] = ACTIONS(807),
    [anon_sym_int232] = ACTIONS(807),
    [anon_sym_int240] = ACTIONS(807),
    [anon_sym_int248] = ACTIONS(807),
    [anon_sym_int256] = ACTIONS(807),
    [anon_sym_uint] = ACTIONS(807),
    [anon_sym_uint8] = ACTIONS(807),
    [anon_sym_uint16] = ACTIONS(807),
    [anon_sym_uint24] = ACTIONS(807),
    [anon_sym_uint32] = ACTIONS(807),
    [anon_sym_uint40] = ACTIONS(807),
    [anon_sym_uint48] = ACTIONS(807),
    [anon_sym_uint56] = ACTIONS(807),
    [anon_sym_uint64] = ACTIONS(807),
    [anon_sym_uint72] = ACTIONS(807),
    [anon_sym_uint80] = ACTIONS(807),
    [anon_sym_uint88] = ACTIONS(807),
    [anon_sym_uint96] = ACTIONS(807),
    [anon_sym_uint104] = ACTIONS(807),
    [anon_sym_uint112] = ACTIONS(807),
    [anon_sym_uint120] = ACTIONS(807),
    [anon_sym_uint128] = ACTIONS(807),
    [anon_sym_uint136] = ACTIONS(807),
    [anon_sym_uint144] = ACTIONS(807),
    [anon_sym_uint152] = ACTIONS(807),
    [anon_sym_uint160] = ACTIONS(807),
    [anon_sym_uint168] = ACTIONS(807),
    [anon_sym_uint176] = ACTIONS(807),
    [anon_sym_uint184] = ACTIONS(807),
    [anon_sym_uint192] = ACTIONS(807),
    [anon_sym_uint200] = ACTIONS(807),
    [anon_sym_uint208] = ACTIONS(807),
    [anon_sym_uint216] = ACTIONS(807),
    [anon_sym_uint224] = ACTIONS(807),
    [anon_sym_uint232] = ACTIONS(807),
    [anon_sym_uint240] = ACTIONS(807),
    [anon_sym_uint248] = ACTIONS(807),
    [anon_sym_uint256] = ACTIONS(807),
    [anon_sym_bytes] = ACTIONS(807),
    [anon_sym_bytes1] = ACTIONS(807),
    [anon_sym_bytes2] = ACTIONS(807),
    [anon_sym_bytes3] = ACTIONS(807),
    [anon_sym_bytes4] = ACTIONS(807),
    [anon_sym_bytes5] = ACTIONS(807),
    [anon_sym_bytes6] = ACTIONS(807),
    [anon_sym_bytes7] = ACTIONS(807),
    [anon_sym_bytes8] = ACTIONS(807),
    [anon_sym_bytes9] = ACTIONS(807),
    [anon_sym_bytes10] = ACTIONS(807),
    [anon_sym_bytes11] = ACTIONS(807),
    [anon_sym_bytes12] = ACTIONS(807),
    [anon_sym_bytes13] = ACTIONS(807),
    [anon_sym_bytes14] = ACTIONS(807),
    [anon_sym_bytes15] = ACTIONS(807),
    [anon_sym_bytes16] = ACTIONS(807),
    [anon_sym_bytes17] = ACTIONS(807),
    [anon_sym_bytes18] = ACTIONS(807),
    [anon_sym_bytes19] = ACTIONS(807),
    [anon_sym_bytes20] = ACTIONS(807),
    [anon_sym_bytes21] = ACTIONS(807),
    [anon_sym_bytes22] = ACTIONS(807),
    [anon_sym_bytes23] = ACTIONS(807),
    [anon_sym_bytes24] = ACTIONS(807),
    [anon_sym_bytes25] = ACTIONS(807),
    [anon_sym_bytes26] = ACTIONS(807),
    [anon_sym_bytes27] = ACTIONS(807),
    [anon_sym_bytes28] = ACTIONS(807),
    [anon_sym_bytes29] = ACTIONS(807),
    [anon_sym_bytes30] = ACTIONS(807),
    [anon_sym_bytes31] = ACTIONS(807),
    [anon_sym_bytes32] = ACTIONS(807),
    [anon_sym_fixed] = ACTIONS(807),
    [aux_sym__fixed_token1] = ACTIONS(807),
    [anon_sym_ufixed] = ACTIONS(807),
    [aux_sym__ufixed_token1] = ACTIONS(807),
    [sym_comment] = ACTIONS(3),
  },
  [211] = {
    [sym__yul_statement] = STATE(217),
    [sym_yul_label] = STATE(217),
    [sym_yul_break] = STATE(217),
    [sym_yul_continue] = STATE(217),
    [sym_yul_identifier] = STATE(218),
    [sym_yul_path] = STATE(228),
    [sym__yul_literal] = STATE(217),
    [sym_yul_string_literal] = STATE(217),
    [sym_yul_boolean] = STATE(217),
    [sym_yul_block] = STATE(217),
    [sym_yul_variable_declaration] = STATE(217),
    [sym_yul_assignment] = STATE(217),
    [sym_yul_function_call] = STATE(217),
    [sym_yul_if_statement] = STATE(217),
    [sym_yul_for_statement] = STATE(217),
    [sym_yul_switch_statement] = STATE(217),
    [sym_yul_function_definition] = STATE(217),
    [sym_yul_evm_builtin] = STATE(227),
    [sym_string] = STATE(235),
    [aux_sym_assembly_statement_repeat1] = STATE(217),
    [sym_identifier] = ACTIONS(811),
    [anon_sym_LBRACE] = ACTIONS(813),
    [anon_sym_RBRACE] = ACTIONS(815),
    [anon_sym_for] = ACTIONS(817),
    [sym_yul_leave] = ACTIONS(819),
    [anon_sym_break] = ACTIONS(821),
    [anon_sym_continue] = ACTIONS(823),
    [sym_yul_decimal_number] = ACTIONS(819),
    [sym_yul_hex_number] = ACTIONS(825),
    [anon_sym_true] = ACTIONS(827),
    [anon_sym_false] = ACTIONS(827),
    [anon_sym_let] = ACTIONS(829),
    [anon_sym_if] = ACTIONS(831),
    [anon_sym_switch] = ACTIONS(833),
    [anon_sym_function] = ACTIONS(835),
    [anon_sym_stop] = ACTIONS(837),
    [anon_sym_add] = ACTIONS(837),
    [anon_sym_sub] = ACTIONS(837),
    [anon_sym_mul] = ACTIONS(837),
    [anon_sym_div] = ACTIONS(837),
    [anon_sym_sdiv] = ACTIONS(837),
    [anon_sym_mod] = ACTIONS(837),
    [anon_sym_smod] = ACTIONS(837),
    [anon_sym_exp] = ACTIONS(837),
    [anon_sym_not] = ACTIONS(837),
    [anon_sym_lt] = ACTIONS(837),
    [anon_sym_gt] = ACTIONS(837),
    [anon_sym_slt] = ACTIONS(837),
    [anon_sym_sgt] = ACTIONS(837),
    [anon_sym_eq] = ACTIONS(837),
    [anon_sym_iszero] = ACTIONS(837),
    [anon_sym_and] = ACTIONS(837),
    [anon_sym_or] = ACTIONS(837),
    [anon_sym_xor] = ACTIONS(837),
    [anon_sym_byte] = ACTIONS(837),
    [anon_sym_shl] = ACTIONS(837),
    [anon_sym_shr] = ACTIONS(837),
    [anon_sym_sar] = ACTIONS(837),
    [anon_sym_addmod] = ACTIONS(837),
    [anon_sym_mulmod] = ACTIONS(837),
    [anon_sym_signextend] = ACTIONS(837),
    [anon_sym_keccak256] = ACTIONS(837),
    [anon_sym_pop] = ACTIONS(837),
    [anon_sym_mload] = ACTIONS(837),
    [anon_sym_mstore] = ACTIONS(837),
    [anon_sym_mstore8] = ACTIONS(837),
    [anon_sym_sload] = ACTIONS(837),
    [anon_sym_sstore] = ACTIONS(837),
    [anon_sym_msize] = ACTIONS(837),
    [anon_sym_gas] = ACTIONS(837),
    [anon_sym_address] = ACTIONS(837),
    [anon_sym_balance] = ACTIONS(837),
    [anon_sym_selfbalance] = ACTIONS(837),
    [anon_sym_caller] = ACTIONS(837),
    [anon_sym_callvalue] = ACTIONS(837),
    [anon_sym_calldataload] = ACTIONS(837),
    [anon_sym_calldatasize] = ACTIONS(837),
    [anon_sym_calldatacopy] = ACTIONS(837),
    [anon_sym_extcodesize] = ACTIONS(837),
    [anon_sym_extcodecopy] = ACTIONS(837),
    [anon_sym_returndatasize] = ACTIONS(837),
    [anon_sym_returndatacopy] = ACTIONS(837),
    [anon_sym_extcodehash] = ACTIONS(837),
    [anon_sym_create] = ACTIONS(837),
    [anon_sym_create2] = ACTIONS(837),
    [anon_sym_call] = ACTIONS(837),
    [anon_sym_callcode] = ACTIONS(837),
    [anon_sym_delegatecall] = ACTIONS(837),
    [anon_sym_staticcall] = ACTIONS(837),
    [anon_sym_return] = ACTIONS(837),
    [anon_sym_revert] = ACTIONS(837),
    [anon_sym_selfdestruct] = ACTIONS(837),
    [anon_sym_invalid] = ACTIONS(837),
    [anon_sym_log0] = ACTIONS(837),
    [anon_sym_log1] = ACTIONS(837),
    [anon_sym_log2] = ACTIONS(837),
    [anon_sym_log3] = ACTIONS(837),
    [anon_sym_log4] = ACTIONS(837),
    [anon_sym_chainid] = ACTIONS(837),
    [anon_sym_origin] = ACTIONS(837),
    [anon_sym_gasprice] = ACTIONS(837),
    [anon_sym_blockhash] = ACTIONS(837),
    [anon_sym_coinbase] = ACTIONS(837),
    [anon_sym_timestamp] = ACTIONS(837),
    [anon_sym_number] = ACTIONS(837),
    [anon_sym_difficulty] = ACTIONS(837),
    [anon_sym_gaslimit] = ACTIONS(837),
    [anon_sym_DQUOTE] = ACTIONS(839),
    [anon_sym_SQUOTE] = ACTIONS(841),
    [sym_comment] = ACTIONS(3),
  },
  [212] = {
    [sym__yul_statement] = STATE(214),
    [sym_yul_label] = STATE(214),
    [sym_yul_break] = STATE(214),
    [sym_yul_continue] = STATE(214),
    [sym_yul_identifier] = STATE(218),
    [sym_yul_path] = STATE(228),
    [sym__yul_literal] = STATE(214),
    [sym_yul_string_literal] = STATE(214),
    [sym_yul_boolean] = STATE(214),
    [sym_yul_block] = STATE(214),
    [sym_yul_variable_declaration] = STATE(214),
    [sym_yul_assignment] = STATE(214),
    [sym_yul_function_call] = STATE(214),
    [sym_yul_if_statement] = STATE(214),
    [sym_yul_for_statement] = STATE(214),
    [sym_yul_switch_statement] = STATE(214),
    [sym_yul_function_definition] = STATE(214),
    [sym_yul_evm_builtin] = STATE(227),
    [sym_string] = STATE(235),
    [aux_sym_assembly_statement_repeat1] = STATE(214),
    [sym_identifier] = ACTIONS(811),
    [anon_sym_LBRACE] = ACTIONS(813),
    [anon_sym_RBRACE] = ACTIONS(843),
    [anon_sym_for] = ACTIONS(817),
    [sym_yul_leave] = ACTIONS(845),
    [anon_sym_break] = ACTIONS(821),
    [anon_sym_continue] = ACTIONS(823),
    [sym_yul_decimal_number] = ACTIONS(845),
    [sym_yul_hex_number] = ACTIONS(847),
    [anon_sym_true] = ACTIONS(827),
    [anon_sym_false] = ACTIONS(827),
    [anon_sym_let] = ACTIONS(829),
    [anon_sym_if] = ACTIONS(831),
    [anon_sym_switch] = ACTIONS(833),
    [anon_sym_function] = ACTIONS(835),
    [anon_sym_stop] = ACTIONS(837),
    [anon_sym_add] = ACTIONS(837),
    [anon_sym_sub] = ACTIONS(837),
    [anon_sym_mul] = ACTIONS(837),
    [anon_sym_div] = ACTIONS(837),
    [anon_sym_sdiv] = ACTIONS(837),
    [anon_sym_mod] = ACTIONS(837),
    [anon_sym_smod] = ACTIONS(837),
    [anon_sym_exp] = ACTIONS(837),
    [anon_sym_not] = ACTIONS(837),
    [anon_sym_lt] = ACTIONS(837),
    [anon_sym_gt] = ACTIONS(837),
    [anon_sym_slt] = ACTIONS(837),
    [anon_sym_sgt] = ACTIONS(837),
    [anon_sym_eq] = ACTIONS(837),
    [anon_sym_iszero] = ACTIONS(837),
    [anon_sym_and] = ACTIONS(837),
    [anon_sym_or] = ACTIONS(837),
    [anon_sym_xor] = ACTIONS(837),
    [anon_sym_byte] = ACTIONS(837),
    [anon_sym_shl] = ACTIONS(837),
    [anon_sym_shr] = ACTIONS(837),
    [anon_sym_sar] = ACTIONS(837),
    [anon_sym_addmod] = ACTIONS(837),
    [anon_sym_mulmod] = ACTIONS(837),
    [anon_sym_signextend] = ACTIONS(837),
    [anon_sym_keccak256] = ACTIONS(837),
    [anon_sym_pop] = ACTIONS(837),
    [anon_sym_mload] = ACTIONS(837),
    [anon_sym_mstore] = ACTIONS(837),
    [anon_sym_mstore8] = ACTIONS(837),
    [anon_sym_sload] = ACTIONS(837),
    [anon_sym_sstore] = ACTIONS(837),
    [anon_sym_msize] = ACTIONS(837),
    [anon_sym_gas] = ACTIONS(837),
    [anon_sym_address] = ACTIONS(837),
    [anon_sym_balance] = ACTIONS(837),
    [anon_sym_selfbalance] = ACTIONS(837),
    [anon_sym_caller] = ACTIONS(837),
    [anon_sym_callvalue] = ACTIONS(837),
    [anon_sym_calldataload] = ACTIONS(837),
    [anon_sym_calldatasize] = ACTIONS(837),
    [anon_sym_calldatacopy] = ACTIONS(837),
    [anon_sym_extcodesize] = ACTIONS(837),
    [anon_sym_extcodecopy] = ACTIONS(837),
    [anon_sym_returndatasize] = ACTIONS(837),
    [anon_sym_returndatacopy] = ACTIONS(837),
    [anon_sym_extcodehash] = ACTIONS(837),
    [anon_sym_create] = ACTIONS(837),
    [anon_sym_create2] = ACTIONS(837),
    [anon_sym_call] = ACTIONS(837),
    [anon_sym_callcode] = ACTIONS(837),
    [anon_sym_delegatecall] = ACTIONS(837),
    [anon_sym_staticcall] = ACTIONS(837),
    [anon_sym_return] = ACTIONS(837),
    [anon_sym_revert] = ACTIONS(837),
    [anon_sym_selfdestruct] = ACTIONS(837),
    [anon_sym_invalid] = ACTIONS(837),
    [anon_sym_log0] = ACTIONS(837),
    [anon_sym_log1] = ACTIONS(837),
    [anon_sym_log2] = ACTIONS(837),
    [anon_sym_log3] = ACTIONS(837),
    [anon_sym_log4] = ACTIONS(837),
    [anon_sym_chainid] = ACTIONS(837),
    [anon_sym_origin] = ACTIONS(837),
    [anon_sym_gasprice] = ACTIONS(837),
    [anon_sym_blockhash] = ACTIONS(837),
    [anon_sym_coinbase] = ACTIONS(837),
    [anon_sym_timestamp] = ACTIONS(837),
    [anon_sym_number] = ACTIONS(837),
    [anon_sym_difficulty] = ACTIONS(837),
    [anon_sym_gaslimit] = ACTIONS(837),
    [anon_sym_DQUOTE] = ACTIONS(839),
    [anon_sym_SQUOTE] = ACTIONS(841),
    [sym_comment] = ACTIONS(3),
  },
  [213] = {
    [sym__yul_statement] = STATE(216),
    [sym_yul_label] = STATE(216),
    [sym_yul_break] = STATE(216),
    [sym_yul_continue] = STATE(216),
    [sym_yul_identifier] = STATE(218),
    [sym_yul_path] = STATE(228),
    [sym__yul_literal] = STATE(216),
    [sym_yul_string_literal] = STATE(216),
    [sym_yul_boolean] = STATE(216),
    [sym_yul_block] = STATE(216),
    [sym_yul_variable_declaration] = STATE(216),
    [sym_yul_assignment] = STATE(216),
    [sym_yul_function_call] = STATE(216),
    [sym_yul_if_statement] = STATE(216),
    [sym_yul_for_statement] = STATE(216),
    [sym_yul_switch_statement] = STATE(216),
    [sym_yul_function_definition] = STATE(216),
    [sym_yul_evm_builtin] = STATE(227),
    [sym_string] = STATE(235),
    [aux_sym_assembly_statement_repeat1] = STATE(216),
    [sym_identifier] = ACTIONS(811),
    [anon_sym_LBRACE] = ACTIONS(813),
    [anon_sym_RBRACE] = ACTIONS(815),
    [anon_sym_for] = ACTIONS(817),
    [sym_yul_leave] = ACTIONS(849),
    [anon_sym_break] = ACTIONS(821),
    [anon_sym_continue] = ACTIONS(823),
    [sym_yul_decimal_number] = ACTIONS(849),
    [sym_yul_hex_number] = ACTIONS(851),
    [anon_sym_true] = ACTIONS(827),
    [anon_sym_false] = ACTIONS(827),
    [anon_sym_let] = ACTIONS(829),
    [anon_sym_if] = ACTIONS(831),
    [anon_sym_switch] = ACTIONS(833),
    [anon_sym_function] = ACTIONS(835),
    [anon_sym_stop] = ACTIONS(837),
    [anon_sym_add] = ACTIONS(837),
    [anon_sym_sub] = ACTIONS(837),
    [anon_sym_mul] = ACTIONS(837),
    [anon_sym_div] = ACTIONS(837),
    [anon_sym_sdiv] = ACTIONS(837),
    [anon_sym_mod] = ACTIONS(837),
    [anon_sym_smod] = ACTIONS(837),
    [anon_sym_exp] = ACTIONS(837),
    [anon_sym_not] = ACTIONS(837),
    [anon_sym_lt] = ACTIONS(837),
    [anon_sym_gt] = ACTIONS(837),
    [anon_sym_slt] = ACTIONS(837),
    [anon_sym_sgt] = ACTIONS(837),
    [anon_sym_eq] = ACTIONS(837),
    [anon_sym_iszero] = ACTIONS(837),
    [anon_sym_and] = ACTIONS(837),
    [anon_sym_or] = ACTIONS(837),
    [anon_sym_xor] = ACTIONS(837),
    [anon_sym_byte] = ACTIONS(837),
    [anon_sym_shl] = ACTIONS(837),
    [anon_sym_shr] = ACTIONS(837),
    [anon_sym_sar] = ACTIONS(837),
    [anon_sym_addmod] = ACTIONS(837),
    [anon_sym_mulmod] = ACTIONS(837),
    [anon_sym_signextend] = ACTIONS(837),
    [anon_sym_keccak256] = ACTIONS(837),
    [anon_sym_pop] = ACTIONS(837),
    [anon_sym_mload] = ACTIONS(837),
    [anon_sym_mstore] = ACTIONS(837),
    [anon_sym_mstore8] = ACTIONS(837),
    [anon_sym_sload] = ACTIONS(837),
    [anon_sym_sstore] = ACTIONS(837),
    [anon_sym_msize] = ACTIONS(837),
    [anon_sym_gas] = ACTIONS(837),
    [anon_sym_address] = ACTIONS(837),
    [anon_sym_balance] = ACTIONS(837),
    [anon_sym_selfbalance] = ACTIONS(837),
    [anon_sym_caller] = ACTIONS(837),
    [anon_sym_callvalue] = ACTIONS(837),
    [anon_sym_calldataload] = ACTIONS(837),
    [anon_sym_calldatasize] = ACTIONS(837),
    [anon_sym_calldatacopy] = ACTIONS(837),
    [anon_sym_extcodesize] = ACTIONS(837),
    [anon_sym_extcodecopy] = ACTIONS(837),
    [anon_sym_returndatasize] = ACTIONS(837),
    [anon_sym_returndatacopy] = ACTIONS(837),
    [anon_sym_extcodehash] = ACTIONS(837),
    [anon_sym_create] = ACTIONS(837),
    [anon_sym_create2] = ACTIONS(837),
    [anon_sym_call] = ACTIONS(837),
    [anon_sym_callcode] = ACTIONS(837),
    [anon_sym_delegatecall] = ACTIONS(837),
    [anon_sym_staticcall] = ACTIONS(837),
    [anon_sym_return] = ACTIONS(837),
    [anon_sym_revert] = ACTIONS(837),
    [anon_sym_selfdestruct] = ACTIONS(837),
    [anon_sym_invalid] = ACTIONS(837),
    [anon_sym_log0] = ACTIONS(837),
    [anon_sym_log1] = ACTIONS(837),
    [anon_sym_log2] = ACTIONS(837),
    [anon_sym_log3] = ACTIONS(837),
    [anon_sym_log4] = ACTIONS(837),
    [anon_sym_chainid] = ACTIONS(837),
    [anon_sym_origin] = ACTIONS(837),
    [anon_sym_gasprice] = ACTIONS(837),
    [anon_sym_blockhash] = ACTIONS(837),
    [anon_sym_coinbase] = ACTIONS(837),
    [anon_sym_timestamp] = ACTIONS(837),
    [anon_sym_number] = ACTIONS(837),
    [anon_sym_difficulty] = ACTIONS(837),
    [anon_sym_gaslimit] = ACTIONS(837),
    [anon_sym_DQUOTE] = ACTIONS(839),
    [anon_sym_SQUOTE] = ACTIONS(841),
    [sym_comment] = ACTIONS(3),
  },
  [214] = {
    [sym__yul_statement] = STATE(216),
    [sym_yul_label] = STATE(216),
    [sym_yul_break] = STATE(216),
    [sym_yul_continue] = STATE(216),
    [sym_yul_identifier] = STATE(218),
    [sym_yul_path] = STATE(228),
    [sym__yul_literal] = STATE(216),
    [sym_yul_string_literal] = STATE(216),
    [sym_yul_boolean] = STATE(216),
    [sym_yul_block] = STATE(216),
    [sym_yul_variable_declaration] = STATE(216),
    [sym_yul_assignment] = STATE(216),
    [sym_yul_function_call] = STATE(216),
    [sym_yul_if_statement] = STATE(216),
    [sym_yul_for_statement] = STATE(216),
    [sym_yul_switch_statement] = STATE(216),
    [sym_yul_function_definition] = STATE(216),
    [sym_yul_evm_builtin] = STATE(227),
    [sym_string] = STATE(235),
    [aux_sym_assembly_statement_repeat1] = STATE(216),
    [sym_identifier] = ACTIONS(811),
    [anon_sym_LBRACE] = ACTIONS(813),
    [anon_sym_RBRACE] = ACTIONS(853),
    [anon_sym_for] = ACTIONS(817),
    [sym_yul_leave] = ACTIONS(849),
    [anon_sym_break] = ACTIONS(821),
    [anon_sym_continue] = ACTIONS(823),
    [sym_yul_decimal_number] = ACTIONS(849),
    [sym_yul_hex_number] = ACTIONS(851),
    [anon_sym_true] = ACTIONS(827),
    [anon_sym_false] = ACTIONS(827),
    [anon_sym_let] = ACTIONS(829),
    [anon_sym_if] = ACTIONS(831),
    [anon_sym_switch] = ACTIONS(833),
    [anon_sym_function] = ACTIONS(835),
    [anon_sym_stop] = ACTIONS(837),
    [anon_sym_add] = ACTIONS(837),
    [anon_sym_sub] = ACTIONS(837),
    [anon_sym_mul] = ACTIONS(837),
    [anon_sym_div] = ACTIONS(837),
    [anon_sym_sdiv] = ACTIONS(837),
    [anon_sym_mod] = ACTIONS(837),
    [anon_sym_smod] = ACTIONS(837),
    [anon_sym_exp] = ACTIONS(837),
    [anon_sym_not] = ACTIONS(837),
    [anon_sym_lt] = ACTIONS(837),
    [anon_sym_gt] = ACTIONS(837),
    [anon_sym_slt] = ACTIONS(837),
    [anon_sym_sgt] = ACTIONS(837),
    [anon_sym_eq] = ACTIONS(837),
    [anon_sym_iszero] = ACTIONS(837),
    [anon_sym_and] = ACTIONS(837),
    [anon_sym_or] = ACTIONS(837),
    [anon_sym_xor] = ACTIONS(837),
    [anon_sym_byte] = ACTIONS(837),
    [anon_sym_shl] = ACTIONS(837),
    [anon_sym_shr] = ACTIONS(837),
    [anon_sym_sar] = ACTIONS(837),
    [anon_sym_addmod] = ACTIONS(837),
    [anon_sym_mulmod] = ACTIONS(837),
    [anon_sym_signextend] = ACTIONS(837),
    [anon_sym_keccak256] = ACTIONS(837),
    [anon_sym_pop] = ACTIONS(837),
    [anon_sym_mload] = ACTIONS(837),
    [anon_sym_mstore] = ACTIONS(837),
    [anon_sym_mstore8] = ACTIONS(837),
    [anon_sym_sload] = ACTIONS(837),
    [anon_sym_sstore] = ACTIONS(837),
    [anon_sym_msize] = ACTIONS(837),
    [anon_sym_gas] = ACTIONS(837),
    [anon_sym_address] = ACTIONS(837),
    [anon_sym_balance] = ACTIONS(837),
    [anon_sym_selfbalance] = ACTIONS(837),
    [anon_sym_caller] = ACTIONS(837),
    [anon_sym_callvalue] = ACTIONS(837),
    [anon_sym_calldataload] = ACTIONS(837),
    [anon_sym_calldatasize] = ACTIONS(837),
    [anon_sym_calldatacopy] = ACTIONS(837),
    [anon_sym_extcodesize] = ACTIONS(837),
    [anon_sym_extcodecopy] = ACTIONS(837),
    [anon_sym_returndatasize] = ACTIONS(837),
    [anon_sym_returndatacopy] = ACTIONS(837),
    [anon_sym_extcodehash] = ACTIONS(837),
    [anon_sym_create] = ACTIONS(837),
    [anon_sym_create2] = ACTIONS(837),
    [anon_sym_call] = ACTIONS(837),
    [anon_sym_callcode] = ACTIONS(837),
    [anon_sym_delegatecall] = ACTIONS(837),
    [anon_sym_staticcall] = ACTIONS(837),
    [anon_sym_return] = ACTIONS(837),
    [anon_sym_revert] = ACTIONS(837),
    [anon_sym_selfdestruct] = ACTIONS(837),
    [anon_sym_invalid] = ACTIONS(837),
    [anon_sym_log0] = ACTIONS(837),
    [anon_sym_log1] = ACTIONS(837),
    [anon_sym_log2] = ACTIONS(837),
    [anon_sym_log3] = ACTIONS(837),
    [anon_sym_log4] = ACTIONS(837),
    [anon_sym_chainid] = ACTIONS(837),
    [anon_sym_origin] = ACTIONS(837),
    [anon_sym_gasprice] = ACTIONS(837),
    [anon_sym_blockhash] = ACTIONS(837),
    [anon_sym_coinbase] = ACTIONS(837),
    [anon_sym_timestamp] = ACTIONS(837),
    [anon_sym_number] = ACTIONS(837),
    [anon_sym_difficulty] = ACTIONS(837),
    [anon_sym_gaslimit] = ACTIONS(837),
    [anon_sym_DQUOTE] = ACTIONS(839),
    [anon_sym_SQUOTE] = ACTIONS(841),
    [sym_comment] = ACTIONS(3),
  },
  [215] = {
    [sym__yul_statement] = STATE(213),
    [sym_yul_label] = STATE(213),
    [sym_yul_break] = STATE(213),
    [sym_yul_continue] = STATE(213),
    [sym_yul_identifier] = STATE(218),
    [sym_yul_path] = STATE(228),
    [sym__yul_literal] = STATE(213),
    [sym_yul_string_literal] = STATE(213),
    [sym_yul_boolean] = STATE(213),
    [sym_yul_block] = STATE(213),
    [sym_yul_variable_declaration] = STATE(213),
    [sym_yul_assignment] = STATE(213),
    [sym_yul_function_call] = STATE(213),
    [sym_yul_if_statement] = STATE(213),
    [sym_yul_for_statement] = STATE(213),
    [sym_yul_switch_statement] = STATE(213),
    [sym_yul_function_definition] = STATE(213),
    [sym_yul_evm_builtin] = STATE(227),
    [sym_string] = STATE(235),
    [aux_sym_assembly_statement_repeat1] = STATE(213),
    [sym_identifier] = ACTIONS(811),
    [anon_sym_LBRACE] = ACTIONS(813),
    [anon_sym_RBRACE] = ACTIONS(855),
    [anon_sym_for] = ACTIONS(817),
    [sym_yul_leave] = ACTIONS(857),
    [anon_sym_break] = ACTIONS(821),
    [anon_sym_continue] = ACTIONS(823),
    [sym_yul_decimal_number] = ACTIONS(857),
    [sym_yul_hex_number] = ACTIONS(859),
    [anon_sym_true] = ACTIONS(827),
    [anon_sym_false] = ACTIONS(827),
    [anon_sym_let] = ACTIONS(829),
    [anon_sym_if] = ACTIONS(831),
    [anon_sym_switch] = ACTIONS(833),
    [anon_sym_function] = ACTIONS(835),
    [anon_sym_stop] = ACTIONS(837),
    [anon_sym_add] = ACTIONS(837),
    [anon_sym_sub] = ACTIONS(837),
    [anon_sym_mul] = ACTIONS(837),
    [anon_sym_div] = ACTIONS(837),
    [anon_sym_sdiv] = ACTIONS(837),
    [anon_sym_mod] = ACTIONS(837),
    [anon_sym_smod] = ACTIONS(837),
    [anon_sym_exp] = ACTIONS(837),
    [anon_sym_not] = ACTIONS(837),
    [anon_sym_lt] = ACTIONS(837),
    [anon_sym_gt] = ACTIONS(837),
    [anon_sym_slt] = ACTIONS(837),
    [anon_sym_sgt] = ACTIONS(837),
    [anon_sym_eq] = ACTIONS(837),
    [anon_sym_iszero] = ACTIONS(837),
    [anon_sym_and] = ACTIONS(837),
    [anon_sym_or] = ACTIONS(837),
    [anon_sym_xor] = ACTIONS(837),
    [anon_sym_byte] = ACTIONS(837),
    [anon_sym_shl] = ACTIONS(837),
    [anon_sym_shr] = ACTIONS(837),
    [anon_sym_sar] = ACTIONS(837),
    [anon_sym_addmod] = ACTIONS(837),
    [anon_sym_mulmod] = ACTIONS(837),
    [anon_sym_signextend] = ACTIONS(837),
    [anon_sym_keccak256] = ACTIONS(837),
    [anon_sym_pop] = ACTIONS(837),
    [anon_sym_mload] = ACTIONS(837),
    [anon_sym_mstore] = ACTIONS(837),
    [anon_sym_mstore8] = ACTIONS(837),
    [anon_sym_sload] = ACTIONS(837),
    [anon_sym_sstore] = ACTIONS(837),
    [anon_sym_msize] = ACTIONS(837),
    [anon_sym_gas] = ACTIONS(837),
    [anon_sym_address] = ACTIONS(837),
    [anon_sym_balance] = ACTIONS(837),
    [anon_sym_selfbalance] = ACTIONS(837),
    [anon_sym_caller] = ACTIONS(837),
    [anon_sym_callvalue] = ACTIONS(837),
    [anon_sym_calldataload] = ACTIONS(837),
    [anon_sym_calldatasize] = ACTIONS(837),
    [anon_sym_calldatacopy] = ACTIONS(837),
    [anon_sym_extcodesize] = ACTIONS(837),
    [anon_sym_extcodecopy] = ACTIONS(837),
    [anon_sym_returndatasize] = ACTIONS(837),
    [anon_sym_returndatacopy] = ACTIONS(837),
    [anon_sym_extcodehash] = ACTIONS(837),
    [anon_sym_create] = ACTIONS(837),
    [anon_sym_create2] = ACTIONS(837),
    [anon_sym_call] = ACTIONS(837),
    [anon_sym_callcode] = ACTIONS(837),
    [anon_sym_delegatecall] = ACTIONS(837),
    [anon_sym_staticcall] = ACTIONS(837),
    [anon_sym_return] = ACTIONS(837),
    [anon_sym_revert] = ACTIONS(837),
    [anon_sym_selfdestruct] = ACTIONS(837),
    [anon_sym_invalid] = ACTIONS(837),
    [anon_sym_log0] = ACTIONS(837),
    [anon_sym_log1] = ACTIONS(837),
    [anon_sym_log2] = ACTIONS(837),
    [anon_sym_log3] = ACTIONS(837),
    [anon_sym_log4] = ACTIONS(837),
    [anon_sym_chainid] = ACTIONS(837),
    [anon_sym_origin] = ACTIONS(837),
    [anon_sym_gasprice] = ACTIONS(837),
    [anon_sym_blockhash] = ACTIONS(837),
    [anon_sym_coinbase] = ACTIONS(837),
    [anon_sym_timestamp] = ACTIONS(837),
    [anon_sym_number] = ACTIONS(837),
    [anon_sym_difficulty] = ACTIONS(837),
    [anon_sym_gaslimit] = ACTIONS(837),
    [anon_sym_DQUOTE] = ACTIONS(839),
    [anon_sym_SQUOTE] = ACTIONS(841),
    [sym_comment] = ACTIONS(3),
  },
  [216] = {
    [sym__yul_statement] = STATE(216),
    [sym_yul_label] = STATE(216),
    [sym_yul_break] = STATE(216),
    [sym_yul_continue] = STATE(216),
    [sym_yul_identifier] = STATE(218),
    [sym_yul_path] = STATE(228),
    [sym__yul_literal] = STATE(216),
    [sym_yul_string_literal] = STATE(216),
    [sym_yul_boolean] = STATE(216),
    [sym_yul_block] = STATE(216),
    [sym_yul_variable_declaration] = STATE(216),
    [sym_yul_assignment] = STATE(216),
    [sym_yul_function_call] = STATE(216),
    [sym_yul_if_statement] = STATE(216),
    [sym_yul_for_statement] = STATE(216),
    [sym_yul_switch_statement] = STATE(216),
    [sym_yul_function_definition] = STATE(216),
    [sym_yul_evm_builtin] = STATE(227),
    [sym_string] = STATE(235),
    [aux_sym_assembly_statement_repeat1] = STATE(216),
    [sym_identifier] = ACTIONS(861),
    [anon_sym_LBRACE] = ACTIONS(864),
    [anon_sym_RBRACE] = ACTIONS(867),
    [anon_sym_for] = ACTIONS(869),
    [sym_yul_leave] = ACTIONS(872),
    [anon_sym_break] = ACTIONS(875),
    [anon_sym_continue] = ACTIONS(878),
    [sym_yul_decimal_number] = ACTIONS(872),
    [sym_yul_hex_number] = ACTIONS(881),
    [anon_sym_true] = ACTIONS(884),
    [anon_sym_false] = ACTIONS(884),
    [anon_sym_let] = ACTIONS(887),
    [anon_sym_if] = ACTIONS(890),
    [anon_sym_switch] = ACTIONS(893),
    [anon_sym_function] = ACTIONS(896),
    [anon_sym_stop] = ACTIONS(899),
    [anon_sym_add] = ACTIONS(899),
    [anon_sym_sub] = ACTIONS(899),
    [anon_sym_mul] = ACTIONS(899),
    [anon_sym_div] = ACTIONS(899),
    [anon_sym_sdiv] = ACTIONS(899),
    [anon_sym_mod] = ACTIONS(899),
    [anon_sym_smod] = ACTIONS(899),
    [anon_sym_exp] = ACTIONS(899),
    [anon_sym_not] = ACTIONS(899),
    [anon_sym_lt] = ACTIONS(899),
    [anon_sym_gt] = ACTIONS(899),
    [anon_sym_slt] = ACTIONS(899),
    [anon_sym_sgt] = ACTIONS(899),
    [anon_sym_eq] = ACTIONS(899),
    [anon_sym_iszero] = ACTIONS(899),
    [anon_sym_and] = ACTIONS(899),
    [anon_sym_or] = ACTIONS(899),
    [anon_sym_xor] = ACTIONS(899),
    [anon_sym_byte] = ACTIONS(899),
    [anon_sym_shl] = ACTIONS(899),
    [anon_sym_shr] = ACTIONS(899),
    [anon_sym_sar] = ACTIONS(899),
    [anon_sym_addmod] = ACTIONS(899),
    [anon_sym_mulmod] = ACTIONS(899),
    [anon_sym_signextend] = ACTIONS(899),
    [anon_sym_keccak256] = ACTIONS(899),
    [anon_sym_pop] = ACTIONS(899),
    [anon_sym_mload] = ACTIONS(899),
    [anon_sym_mstore] = ACTIONS(899),
    [anon_sym_mstore8] = ACTIONS(899),
    [anon_sym_sload] = ACTIONS(899),
    [anon_sym_sstore] = ACTIONS(899),
    [anon_sym_msize] = ACTIONS(899),
    [anon_sym_gas] = ACTIONS(899),
    [anon_sym_address] = ACTIONS(899),
    [anon_sym_balance] = ACTIONS(899),
    [anon_sym_selfbalance] = ACTIONS(899),
    [anon_sym_caller] = ACTIONS(899),
    [anon_sym_callvalue] = ACTIONS(899),
    [anon_sym_calldataload] = ACTIONS(899),
    [anon_sym_calldatasize] = ACTIONS(899),
    [anon_sym_calldatacopy] = ACTIONS(899),
    [anon_sym_extcodesize] = ACTIONS(899),
    [anon_sym_extcodecopy] = ACTIONS(899),
    [anon_sym_returndatasize] = ACTIONS(899),
    [anon_sym_returndatacopy] = ACTIONS(899),
    [anon_sym_extcodehash] = ACTIONS(899),
    [anon_sym_create] = ACTIONS(899),
    [anon_sym_create2] = ACTIONS(899),
    [anon_sym_call] = ACTIONS(899),
    [anon_sym_callcode] = ACTIONS(899),
    [anon_sym_delegatecall] = ACTIONS(899),
    [anon_sym_staticcall] = ACTIONS(899),
    [anon_sym_return] = ACTIONS(899),
    [anon_sym_revert] = ACTIONS(899),
    [anon_sym_selfdestruct] = ACTIONS(899),
    [anon_sym_invalid] = ACTIONS(899),
    [anon_sym_log0] = ACTIONS(899),
    [anon_sym_log1] = ACTIONS(899),
    [anon_sym_log2] = ACTIONS(899),
    [anon_sym_log3] = ACTIONS(899),
    [anon_sym_log4] = ACTIONS(899),
    [anon_sym_chainid] = ACTIONS(899),
    [anon_sym_origin] = ACTIONS(899),
    [anon_sym_gasprice] = ACTIONS(899),
    [anon_sym_blockhash] = ACTIONS(899),
    [anon_sym_coinbase] = ACTIONS(899),
    [anon_sym_timestamp] = ACTIONS(899),
    [anon_sym_number] = ACTIONS(899),
    [anon_sym_difficulty] = ACTIONS(899),
    [anon_sym_gaslimit] = ACTIONS(899),
    [anon_sym_DQUOTE] = ACTIONS(902),
    [anon_sym_SQUOTE] = ACTIONS(905),
    [sym_comment] = ACTIONS(3),
  },
  [217] = {
    [sym__yul_statement] = STATE(216),
    [sym_yul_label] = STATE(216),
    [sym_yul_break] = STATE(216),
    [sym_yul_continue] = STATE(216),
    [sym_yul_identifier] = STATE(218),
    [sym_yul_path] = STATE(228),
    [sym__yul_literal] = STATE(216),
    [sym_yul_string_literal] = STATE(216),
    [sym_yul_boolean] = STATE(216),
    [sym_yul_block] = STATE(216),
    [sym_yul_variable_declaration] = STATE(216),
    [sym_yul_assignment] = STATE(216),
    [sym_yul_function_call] = STATE(216),
    [sym_yul_if_statement] = STATE(216),
    [sym_yul_for_statement] = STATE(216),
    [sym_yul_switch_statement] = STATE(216),
    [sym_yul_function_definition] = STATE(216),
    [sym_yul_evm_builtin] = STATE(227),
    [sym_string] = STATE(235),
    [aux_sym_assembly_statement_repeat1] = STATE(216),
    [sym_identifier] = ACTIONS(811),
    [anon_sym_LBRACE] = ACTIONS(813),
    [anon_sym_RBRACE] = ACTIONS(908),
    [anon_sym_for] = ACTIONS(817),
    [sym_yul_leave] = ACTIONS(849),
    [anon_sym_break] = ACTIONS(821),
    [anon_sym_continue] = ACTIONS(823),
    [sym_yul_decimal_number] = ACTIONS(849),
    [sym_yul_hex_number] = ACTIONS(851),
    [anon_sym_true] = ACTIONS(827),
    [anon_sym_false] = ACTIONS(827),
    [anon_sym_let] = ACTIONS(829),
    [anon_sym_if] = ACTIONS(831),
    [anon_sym_switch] = ACTIONS(833),
    [anon_sym_function] = ACTIONS(835),
    [anon_sym_stop] = ACTIONS(837),
    [anon_sym_add] = ACTIONS(837),
    [anon_sym_sub] = ACTIONS(837),
    [anon_sym_mul] = ACTIONS(837),
    [anon_sym_div] = ACTIONS(837),
    [anon_sym_sdiv] = ACTIONS(837),
    [anon_sym_mod] = ACTIONS(837),
    [anon_sym_smod] = ACTIONS(837),
    [anon_sym_exp] = ACTIONS(837),
    [anon_sym_not] = ACTIONS(837),
    [anon_sym_lt] = ACTIONS(837),
    [anon_sym_gt] = ACTIONS(837),
    [anon_sym_slt] = ACTIONS(837),
    [anon_sym_sgt] = ACTIONS(837),
    [anon_sym_eq] = ACTIONS(837),
    [anon_sym_iszero] = ACTIONS(837),
    [anon_sym_and] = ACTIONS(837),
    [anon_sym_or] = ACTIONS(837),
    [anon_sym_xor] = ACTIONS(837),
    [anon_sym_byte] = ACTIONS(837),
    [anon_sym_shl] = ACTIONS(837),
    [anon_sym_shr] = ACTIONS(837),
    [anon_sym_sar] = ACTIONS(837),
    [anon_sym_addmod] = ACTIONS(837),
    [anon_sym_mulmod] = ACTIONS(837),
    [anon_sym_signextend] = ACTIONS(837),
    [anon_sym_keccak256] = ACTIONS(837),
    [anon_sym_pop] = ACTIONS(837),
    [anon_sym_mload] = ACTIONS(837),
    [anon_sym_mstore] = ACTIONS(837),
    [anon_sym_mstore8] = ACTIONS(837),
    [anon_sym_sload] = ACTIONS(837),
    [anon_sym_sstore] = ACTIONS(837),
    [anon_sym_msize] = ACTIONS(837),
    [anon_sym_gas] = ACTIONS(837),
    [anon_sym_address] = ACTIONS(837),
    [anon_sym_balance] = ACTIONS(837),
    [anon_sym_selfbalance] = ACTIONS(837),
    [anon_sym_caller] = ACTIONS(837),
    [anon_sym_callvalue] = ACTIONS(837),
    [anon_sym_calldataload] = ACTIONS(837),
    [anon_sym_calldatasize] = ACTIONS(837),
    [anon_sym_calldatacopy] = ACTIONS(837),
    [anon_sym_extcodesize] = ACTIONS(837),
    [anon_sym_extcodecopy] = ACTIONS(837),
    [anon_sym_returndatasize] = ACTIONS(837),
    [anon_sym_returndatacopy] = ACTIONS(837),
    [anon_sym_extcodehash] = ACTIONS(837),
    [anon_sym_create] = ACTIONS(837),
    [anon_sym_create2] = ACTIONS(837),
    [anon_sym_call] = ACTIONS(837),
    [anon_sym_callcode] = ACTIONS(837),
    [anon_sym_delegatecall] = ACTIONS(837),
    [anon_sym_staticcall] = ACTIONS(837),
    [anon_sym_return] = ACTIONS(837),
    [anon_sym_revert] = ACTIONS(837),
    [anon_sym_selfdestruct] = ACTIONS(837),
    [anon_sym_invalid] = ACTIONS(837),
    [anon_sym_log0] = ACTIONS(837),
    [anon_sym_log1] = ACTIONS(837),
    [anon_sym_log2] = ACTIONS(837),
    [anon_sym_log3] = ACTIONS(837),
    [anon_sym_log4] = ACTIONS(837),
    [anon_sym_chainid] = ACTIONS(837),
    [anon_sym_origin] = ACTIONS(837),
    [anon_sym_gasprice] = ACTIONS(837),
    [anon_sym_blockhash] = ACTIONS(837),
    [anon_sym_coinbase] = ACTIONS(837),
    [anon_sym_timestamp] = ACTIONS(837),
    [anon_sym_number] = ACTIONS(837),
    [anon_sym_difficulty] = ACTIONS(837),
    [anon_sym_gaslimit] = ACTIONS(837),
    [anon_sym_DQUOTE] = ACTIONS(839),
    [anon_sym_SQUOTE] = ACTIONS(841),
    [sym_comment] = ACTIONS(3),
  },
  [218] = {
    [aux_sym_yul_path_repeat1] = STATE(220),
    [sym_identifier] = ACTIONS(910),
    [anon_sym_LBRACE] = ACTIONS(912),
    [anon_sym_COMMA] = ACTIONS(912),
    [anon_sym_RBRACE] = ACTIONS(912),
    [anon_sym_LPAREN] = ACTIONS(914),
    [anon_sym_RPAREN] = ACTIONS(912),
    [anon_sym_for] = ACTIONS(910),
    [anon_sym_COLON] = ACTIONS(910),
    [sym_yul_leave] = ACTIONS(910),
    [anon_sym_break] = ACTIONS(910),
    [anon_sym_continue] = ACTIONS(910),
    [anon_sym_DOT] = ACTIONS(916),
    [sym_yul_decimal_number] = ACTIONS(910),
    [sym_yul_hex_number] = ACTIONS(912),
    [anon_sym_true] = ACTIONS(910),
    [anon_sym_false] = ACTIONS(910),
    [anon_sym_let] = ACTIONS(910),
    [anon_sym_COLON_EQ] = ACTIONS(912),
    [anon_sym_if] = ACTIONS(910),
    [anon_sym_switch] = ACTIONS(910),
    [anon_sym_default] = ACTIONS(910),
    [anon_sym_case] = ACTIONS(910),
    [anon_sym_function] = ACTIONS(910),
    [anon_sym_stop] = ACTIONS(910),
    [anon_sym_add] = ACTIONS(910),
    [anon_sym_sub] = ACTIONS(910),
    [anon_sym_mul] = ACTIONS(910),
    [anon_sym_div] = ACTIONS(910),
    [anon_sym_sdiv] = ACTIONS(910),
    [anon_sym_mod] = ACTIONS(910),
    [anon_sym_smod] = ACTIONS(910),
    [anon_sym_exp] = ACTIONS(910),
    [anon_sym_not] = ACTIONS(910),
    [anon_sym_lt] = ACTIONS(910),
    [anon_sym_gt] = ACTIONS(910),
    [anon_sym_slt] = ACTIONS(910),
    [anon_sym_sgt] = ACTIONS(910),
    [anon_sym_eq] = ACTIONS(910),
    [anon_sym_iszero] = ACTIONS(910),
    [anon_sym_and] = ACTIONS(910),
    [anon_sym_or] = ACTIONS(910),
    [anon_sym_xor] = ACTIONS(910),
    [anon_sym_byte] = ACTIONS(910),
    [anon_sym_shl] = ACTIONS(910),
    [anon_sym_shr] = ACTIONS(910),
    [anon_sym_sar] = ACTIONS(910),
    [anon_sym_addmod] = ACTIONS(910),
    [anon_sym_mulmod] = ACTIONS(910),
    [anon_sym_signextend] = ACTIONS(910),
    [anon_sym_keccak256] = ACTIONS(910),
    [anon_sym_pop] = ACTIONS(910),
    [anon_sym_mload] = ACTIONS(910),
    [anon_sym_mstore] = ACTIONS(910),
    [anon_sym_mstore8] = ACTIONS(910),
    [anon_sym_sload] = ACTIONS(910),
    [anon_sym_sstore] = ACTIONS(910),
    [anon_sym_msize] = ACTIONS(910),
    [anon_sym_gas] = ACTIONS(910),
    [anon_sym_address] = ACTIONS(910),
    [anon_sym_balance] = ACTIONS(910),
    [anon_sym_selfbalance] = ACTIONS(910),
    [anon_sym_caller] = ACTIONS(910),
    [anon_sym_callvalue] = ACTIONS(910),
    [anon_sym_calldataload] = ACTIONS(910),
    [anon_sym_calldatasize] = ACTIONS(910),
    [anon_sym_calldatacopy] = ACTIONS(910),
    [anon_sym_extcodesize] = ACTIONS(910),
    [anon_sym_extcodecopy] = ACTIONS(910),
    [anon_sym_returndatasize] = ACTIONS(910),
    [anon_sym_returndatacopy] = ACTIONS(910),
    [anon_sym_extcodehash] = ACTIONS(910),
    [anon_sym_create] = ACTIONS(910),
    [anon_sym_create2] = ACTIONS(910),
    [anon_sym_call] = ACTIONS(910),
    [anon_sym_callcode] = ACTIONS(910),
    [anon_sym_delegatecall] = ACTIONS(910),
    [anon_sym_staticcall] = ACTIONS(910),
    [anon_sym_return] = ACTIONS(910),
    [anon_sym_revert] = ACTIONS(910),
    [anon_sym_selfdestruct] = ACTIONS(910),
    [anon_sym_invalid] = ACTIONS(910),
    [anon_sym_log0] = ACTIONS(910),
    [anon_sym_log1] = ACTIONS(910),
    [anon_sym_log2] = ACTIONS(910),
    [anon_sym_log3] = ACTIONS(910),
    [anon_sym_log4] = ACTIONS(910),
    [anon_sym_chainid] = ACTIONS(910),
    [anon_sym_origin] = ACTIONS(910),
    [anon_sym_gasprice] = ACTIONS(910),
    [anon_sym_blockhash] = ACTIONS(910),
    [anon_sym_coinbase] = ACTIONS(910),
    [anon_sym_timestamp] = ACTIONS(910),
    [anon_sym_number] = ACTIONS(910),
    [anon_sym_difficulty] = ACTIONS(910),
    [anon_sym_gaslimit] = ACTIONS(910),
    [anon_sym_DQUOTE] = ACTIONS(912),
    [anon_sym_SQUOTE] = ACTIONS(912),
    [sym_comment] = ACTIONS(3),
  },
  [219] = {
    [sym_identifier] = ACTIONS(918),
    [anon_sym_LBRACE] = ACTIONS(920),
    [anon_sym_COMMA] = ACTIONS(920),
    [anon_sym_RBRACE] = ACTIONS(920),
    [anon_sym_LPAREN] = ACTIONS(920),
    [anon_sym_RPAREN] = ACTIONS(920),
    [anon_sym_for] = ACTIONS(918),
    [anon_sym_COLON] = ACTIONS(918),
    [sym_yul_leave] = ACTIONS(918),
    [anon_sym_break] = ACTIONS(918),
    [anon_sym_continue] = ACTIONS(918),
    [anon_sym_DOT] = ACTIONS(920),
    [sym_yul_decimal_number] = ACTIONS(918),
    [sym_yul_hex_number] = ACTIONS(920),
    [anon_sym_true] = ACTIONS(918),
    [anon_sym_false] = ACTIONS(918),
    [anon_sym_let] = ACTIONS(918),
    [anon_sym_COLON_EQ] = ACTIONS(920),
    [anon_sym_if] = ACTIONS(918),
    [anon_sym_switch] = ACTIONS(918),
    [anon_sym_default] = ACTIONS(918),
    [anon_sym_case] = ACTIONS(918),
    [anon_sym_function] = ACTIONS(918),
    [anon_sym_stop] = ACTIONS(918),
    [anon_sym_add] = ACTIONS(918),
    [anon_sym_sub] = ACTIONS(918),
    [anon_sym_mul] = ACTIONS(918),
    [anon_sym_div] = ACTIONS(918),
    [anon_sym_sdiv] = ACTIONS(918),
    [anon_sym_mod] = ACTIONS(918),
    [anon_sym_smod] = ACTIONS(918),
    [anon_sym_exp] = ACTIONS(918),
    [anon_sym_not] = ACTIONS(918),
    [anon_sym_lt] = ACTIONS(918),
    [anon_sym_gt] = ACTIONS(918),
    [anon_sym_slt] = ACTIONS(918),
    [anon_sym_sgt] = ACTIONS(918),
    [anon_sym_eq] = ACTIONS(918),
    [anon_sym_iszero] = ACTIONS(918),
    [anon_sym_and] = ACTIONS(918),
    [anon_sym_or] = ACTIONS(918),
    [anon_sym_xor] = ACTIONS(918),
    [anon_sym_byte] = ACTIONS(918),
    [anon_sym_shl] = ACTIONS(918),
    [anon_sym_shr] = ACTIONS(918),
    [anon_sym_sar] = ACTIONS(918),
    [anon_sym_addmod] = ACTIONS(918),
    [anon_sym_mulmod] = ACTIONS(918),
    [anon_sym_signextend] = ACTIONS(918),
    [anon_sym_keccak256] = ACTIONS(918),
    [anon_sym_pop] = ACTIONS(918),
    [anon_sym_mload] = ACTIONS(918),
    [anon_sym_mstore] = ACTIONS(918),
    [anon_sym_mstore8] = ACTIONS(918),
    [anon_sym_sload] = ACTIONS(918),
    [anon_sym_sstore] = ACTIONS(918),
    [anon_sym_msize] = ACTIONS(918),
    [anon_sym_gas] = ACTIONS(918),
    [anon_sym_address] = ACTIONS(918),
    [anon_sym_balance] = ACTIONS(918),
    [anon_sym_selfbalance] = ACTIONS(918),
    [anon_sym_caller] = ACTIONS(918),
    [anon_sym_callvalue] = ACTIONS(918),
    [anon_sym_calldataload] = ACTIONS(918),
    [anon_sym_calldatasize] = ACTIONS(918),
    [anon_sym_calldatacopy] = ACTIONS(918),
    [anon_sym_extcodesize] = ACTIONS(918),
    [anon_sym_extcodecopy] = ACTIONS(918),
    [anon_sym_returndatasize] = ACTIONS(918),
    [anon_sym_returndatacopy] = ACTIONS(918),
    [anon_sym_extcodehash] = ACTIONS(918),
    [anon_sym_create] = ACTIONS(918),
    [anon_sym_create2] = ACTIONS(918),
    [anon_sym_call] = ACTIONS(918),
    [anon_sym_callcode] = ACTIONS(918),
    [anon_sym_delegatecall] = ACTIONS(918),
    [anon_sym_staticcall] = ACTIONS(918),
    [anon_sym_return] = ACTIONS(918),
    [anon_sym_revert] = ACTIONS(918),
    [anon_sym_selfdestruct] = ACTIONS(918),
    [anon_sym_invalid] = ACTIONS(918),
    [anon_sym_log0] = ACTIONS(918),
    [anon_sym_log1] = ACTIONS(918),
    [anon_sym_log2] = ACTIONS(918),
    [anon_sym_log3] = ACTIONS(918),
    [anon_sym_log4] = ACTIONS(918),
    [anon_sym_chainid] = ACTIONS(918),
    [anon_sym_origin] = ACTIONS(918),
    [anon_sym_gasprice] = ACTIONS(918),
    [anon_sym_blockhash] = ACTIONS(918),
    [anon_sym_coinbase] = ACTIONS(918),
    [anon_sym_timestamp] = ACTIONS(918),
    [anon_sym_number] = ACTIONS(918),
    [anon_sym_difficulty] = ACTIONS(918),
    [anon_sym_gaslimit] = ACTIONS(918),
    [anon_sym_DQUOTE] = ACTIONS(920),
    [anon_sym_SQUOTE] = ACTIONS(920),
    [sym_comment] = ACTIONS(3),
  },
  [220] = {
    [aux_sym_yul_path_repeat1] = STATE(221),
    [sym_identifier] = ACTIONS(922),
    [anon_sym_LBRACE] = ACTIONS(924),
    [anon_sym_COMMA] = ACTIONS(924),
    [anon_sym_RBRACE] = ACTIONS(924),
    [anon_sym_RPAREN] = ACTIONS(924),
    [anon_sym_for] = ACTIONS(922),
    [anon_sym_COLON] = ACTIONS(922),
    [sym_yul_leave] = ACTIONS(922),
    [anon_sym_break] = ACTIONS(922),
    [anon_sym_continue] = ACTIONS(922),
    [anon_sym_DOT] = ACTIONS(916),
    [sym_yul_decimal_number] = ACTIONS(922),
    [sym_yul_hex_number] = ACTIONS(924),
    [anon_sym_true] = ACTIONS(922),
    [anon_sym_false] = ACTIONS(922),
    [anon_sym_let] = ACTIONS(922),
    [anon_sym_COLON_EQ] = ACTIONS(924),
    [anon_sym_if] = ACTIONS(922),
    [anon_sym_switch] = ACTIONS(922),
    [anon_sym_default] = ACTIONS(922),
    [anon_sym_case] = ACTIONS(922),
    [anon_sym_function] = ACTIONS(922),
    [anon_sym_stop] = ACTIONS(922),
    [anon_sym_add] = ACTIONS(922),
    [anon_sym_sub] = ACTIONS(922),
    [anon_sym_mul] = ACTIONS(922),
    [anon_sym_div] = ACTIONS(922),
    [anon_sym_sdiv] = ACTIONS(922),
    [anon_sym_mod] = ACTIONS(922),
    [anon_sym_smod] = ACTIONS(922),
    [anon_sym_exp] = ACTIONS(922),
    [anon_sym_not] = ACTIONS(922),
    [anon_sym_lt] = ACTIONS(922),
    [anon_sym_gt] = ACTIONS(922),
    [anon_sym_slt] = ACTIONS(922),
    [anon_sym_sgt] = ACTIONS(922),
    [anon_sym_eq] = ACTIONS(922),
    [anon_sym_iszero] = ACTIONS(922),
    [anon_sym_and] = ACTIONS(922),
    [anon_sym_or] = ACTIONS(922),
    [anon_sym_xor] = ACTIONS(922),
    [anon_sym_byte] = ACTIONS(922),
    [anon_sym_shl] = ACTIONS(922),
    [anon_sym_shr] = ACTIONS(922),
    [anon_sym_sar] = ACTIONS(922),
    [anon_sym_addmod] = ACTIONS(922),
    [anon_sym_mulmod] = ACTIONS(922),
    [anon_sym_signextend] = ACTIONS(922),
    [anon_sym_keccak256] = ACTIONS(922),
    [anon_sym_pop] = ACTIONS(922),
    [anon_sym_mload] = ACTIONS(922),
    [anon_sym_mstore] = ACTIONS(922),
    [anon_sym_mstore8] = ACTIONS(922),
    [anon_sym_sload] = ACTIONS(922),
    [anon_sym_sstore] = ACTIONS(922),
    [anon_sym_msize] = ACTIONS(922),
    [anon_sym_gas] = ACTIONS(922),
    [anon_sym_address] = ACTIONS(922),
    [anon_sym_balance] = ACTIONS(922),
    [anon_sym_selfbalance] = ACTIONS(922),
    [anon_sym_caller] = ACTIONS(922),
    [anon_sym_callvalue] = ACTIONS(922),
    [anon_sym_calldataload] = ACTIONS(922),
    [anon_sym_calldatasize] = ACTIONS(922),
    [anon_sym_calldatacopy] = ACTIONS(922),
    [anon_sym_extcodesize] = ACTIONS(922),
    [anon_sym_extcodecopy] = ACTIONS(922),
    [anon_sym_returndatasize] = ACTIONS(922),
    [anon_sym_returndatacopy] = ACTIONS(922),
    [anon_sym_extcodehash] = ACTIONS(922),
    [anon_sym_create] = ACTIONS(922),
    [anon_sym_create2] = ACTIONS(922),
    [anon_sym_call] = ACTIONS(922),
    [anon_sym_callcode] = ACTIONS(922),
    [anon_sym_delegatecall] = ACTIONS(922),
    [anon_sym_staticcall] = ACTIONS(922),
    [anon_sym_return] = ACTIONS(922),
    [anon_sym_revert] = ACTIONS(922),
    [anon_sym_selfdestruct] = ACTIONS(922),
    [anon_sym_invalid] = ACTIONS(922),
    [anon_sym_log0] = ACTIONS(922),
    [anon_sym_log1] = ACTIONS(922),
    [anon_sym_log2] = ACTIONS(922),
    [anon_sym_log3] = ACTIONS(922),
    [anon_sym_log4] = ACTIONS(922),
    [anon_sym_chainid] = ACTIONS(922),
    [anon_sym_origin] = ACTIONS(922),
    [anon_sym_gasprice] = ACTIONS(922),
    [anon_sym_blockhash] = ACTIONS(922),
    [anon_sym_coinbase] = ACTIONS(922),
    [anon_sym_timestamp] = ACTIONS(922),
    [anon_sym_number] = ACTIONS(922),
    [anon_sym_difficulty] = ACTIONS(922),
    [anon_sym_gaslimit] = ACTIONS(922),
    [anon_sym_DQUOTE] = ACTIONS(924),
    [anon_sym_SQUOTE] = ACTIONS(924),
    [sym_comment] = ACTIONS(3),
  },
  [221] = {
    [aux_sym_yul_path_repeat1] = STATE(221),
    [sym_identifier] = ACTIONS(926),
    [anon_sym_LBRACE] = ACTIONS(928),
    [anon_sym_COMMA] = ACTIONS(928),
    [anon_sym_RBRACE] = ACTIONS(928),
    [anon_sym_RPAREN] = ACTIONS(928),
    [anon_sym_for] = ACTIONS(926),
    [anon_sym_COLON] = ACTIONS(926),
    [sym_yul_leave] = ACTIONS(926),
    [anon_sym_break] = ACTIONS(926),
    [anon_sym_continue] = ACTIONS(926),
    [anon_sym_DOT] = ACTIONS(930),
    [sym_yul_decimal_number] = ACTIONS(926),
    [sym_yul_hex_number] = ACTIONS(928),
    [anon_sym_true] = ACTIONS(926),
    [anon_sym_false] = ACTIONS(926),
    [anon_sym_let] = ACTIONS(926),
    [anon_sym_COLON_EQ] = ACTIONS(928),
    [anon_sym_if] = ACTIONS(926),
    [anon_sym_switch] = ACTIONS(926),
    [anon_sym_default] = ACTIONS(926),
    [anon_sym_case] = ACTIONS(926),
    [anon_sym_function] = ACTIONS(926),
    [anon_sym_stop] = ACTIONS(926),
    [anon_sym_add] = ACTIONS(926),
    [anon_sym_sub] = ACTIONS(926),
    [anon_sym_mul] = ACTIONS(926),
    [anon_sym_div] = ACTIONS(926),
    [anon_sym_sdiv] = ACTIONS(926),
    [anon_sym_mod] = ACTIONS(926),
    [anon_sym_smod] = ACTIONS(926),
    [anon_sym_exp] = ACTIONS(926),
    [anon_sym_not] = ACTIONS(926),
    [anon_sym_lt] = ACTIONS(926),
    [anon_sym_gt] = ACTIONS(926),
    [anon_sym_slt] = ACTIONS(926),
    [anon_sym_sgt] = ACTIONS(926),
    [anon_sym_eq] = ACTIONS(926),
    [anon_sym_iszero] = ACTIONS(926),
    [anon_sym_and] = ACTIONS(926),
    [anon_sym_or] = ACTIONS(926),
    [anon_sym_xor] = ACTIONS(926),
    [anon_sym_byte] = ACTIONS(926),
    [anon_sym_shl] = ACTIONS(926),
    [anon_sym_shr] = ACTIONS(926),
    [anon_sym_sar] = ACTIONS(926),
    [anon_sym_addmod] = ACTIONS(926),
    [anon_sym_mulmod] = ACTIONS(926),
    [anon_sym_signextend] = ACTIONS(926),
    [anon_sym_keccak256] = ACTIONS(926),
    [anon_sym_pop] = ACTIONS(926),
    [anon_sym_mload] = ACTIONS(926),
    [anon_sym_mstore] = ACTIONS(926),
    [anon_sym_mstore8] = ACTIONS(926),
    [anon_sym_sload] = ACTIONS(926),
    [anon_sym_sstore] = ACTIONS(926),
    [anon_sym_msize] = ACTIONS(926),
    [anon_sym_gas] = ACTIONS(926),
    [anon_sym_address] = ACTIONS(926),
    [anon_sym_balance] = ACTIONS(926),
    [anon_sym_selfbalance] = ACTIONS(926),
    [anon_sym_caller] = ACTIONS(926),
    [anon_sym_callvalue] = ACTIONS(926),
    [anon_sym_calldataload] = ACTIONS(926),
    [anon_sym_calldatasize] = ACTIONS(926),
    [anon_sym_calldatacopy] = ACTIONS(926),
    [anon_sym_extcodesize] = ACTIONS(926),
    [anon_sym_extcodecopy] = ACTIONS(926),
    [anon_sym_returndatasize] = ACTIONS(926),
    [anon_sym_returndatacopy] = ACTIONS(926),
    [anon_sym_extcodehash] = ACTIONS(926),
    [anon_sym_create] = ACTIONS(926),
    [anon_sym_create2] = ACTIONS(926),
    [anon_sym_call] = ACTIONS(926),
    [anon_sym_callcode] = ACTIONS(926),
    [anon_sym_delegatecall] = ACTIONS(926),
    [anon_sym_staticcall] = ACTIONS(926),
    [anon_sym_return] = ACTIONS(926),
    [anon_sym_revert] = ACTIONS(926),
    [anon_sym_selfdestruct] = ACTIONS(926),
    [anon_sym_invalid] = ACTIONS(926),
    [anon_sym_log0] = ACTIONS(926),
    [anon_sym_log1] = ACTIONS(926),
    [anon_sym_log2] = ACTIONS(926),
    [anon_sym_log3] = ACTIONS(926),
    [anon_sym_log4] = ACTIONS(926),
    [anon_sym_chainid] = ACTIONS(926),
    [anon_sym_origin] = ACTIONS(926),
    [anon_sym_gasprice] = ACTIONS(926),
    [anon_sym_blockhash] = ACTIONS(926),
    [anon_sym_coinbase] = ACTIONS(926),
    [anon_sym_timestamp] = ACTIONS(926),
    [anon_sym_number] = ACTIONS(926),
    [anon_sym_difficulty] = ACTIONS(926),
    [anon_sym_gaslimit] = ACTIONS(926),
    [anon_sym_DQUOTE] = ACTIONS(928),
    [anon_sym_SQUOTE] = ACTIONS(928),
    [sym_comment] = ACTIONS(3),
  },
  [222] = {
    [sym_identifier] = ACTIONS(926),
    [anon_sym_LBRACE] = ACTIONS(928),
    [anon_sym_COMMA] = ACTIONS(928),
    [anon_sym_RBRACE] = ACTIONS(928),
    [anon_sym_RPAREN] = ACTIONS(928),
    [anon_sym_for] = ACTIONS(926),
    [anon_sym_COLON] = ACTIONS(926),
    [sym_yul_leave] = ACTIONS(926),
    [anon_sym_break] = ACTIONS(926),
    [anon_sym_continue] = ACTIONS(926),
    [anon_sym_DOT] = ACTIONS(928),
    [sym_yul_decimal_number] = ACTIONS(926),
    [sym_yul_hex_number] = ACTIONS(928),
    [anon_sym_true] = ACTIONS(926),
    [anon_sym_false] = ACTIONS(926),
    [anon_sym_let] = ACTIONS(926),
    [anon_sym_COLON_EQ] = ACTIONS(928),
    [anon_sym_if] = ACTIONS(926),
    [anon_sym_switch] = ACTIONS(926),
    [anon_sym_default] = ACTIONS(926),
    [anon_sym_case] = ACTIONS(926),
    [anon_sym_function] = ACTIONS(926),
    [anon_sym_stop] = ACTIONS(926),
    [anon_sym_add] = ACTIONS(926),
    [anon_sym_sub] = ACTIONS(926),
    [anon_sym_mul] = ACTIONS(926),
    [anon_sym_div] = ACTIONS(926),
    [anon_sym_sdiv] = ACTIONS(926),
    [anon_sym_mod] = ACTIONS(926),
    [anon_sym_smod] = ACTIONS(926),
    [anon_sym_exp] = ACTIONS(926),
    [anon_sym_not] = ACTIONS(926),
    [anon_sym_lt] = ACTIONS(926),
    [anon_sym_gt] = ACTIONS(926),
    [anon_sym_slt] = ACTIONS(926),
    [anon_sym_sgt] = ACTIONS(926),
    [anon_sym_eq] = ACTIONS(926),
    [anon_sym_iszero] = ACTIONS(926),
    [anon_sym_and] = ACTIONS(926),
    [anon_sym_or] = ACTIONS(926),
    [anon_sym_xor] = ACTIONS(926),
    [anon_sym_byte] = ACTIONS(926),
    [anon_sym_shl] = ACTIONS(926),
    [anon_sym_shr] = ACTIONS(926),
    [anon_sym_sar] = ACTIONS(926),
    [anon_sym_addmod] = ACTIONS(926),
    [anon_sym_mulmod] = ACTIONS(926),
    [anon_sym_signextend] = ACTIONS(926),
    [anon_sym_keccak256] = ACTIONS(926),
    [anon_sym_pop] = ACTIONS(926),
    [anon_sym_mload] = ACTIONS(926),
    [anon_sym_mstore] = ACTIONS(926),
    [anon_sym_mstore8] = ACTIONS(926),
    [anon_sym_sload] = ACTIONS(926),
    [anon_sym_sstore] = ACTIONS(926),
    [anon_sym_msize] = ACTIONS(926),
    [anon_sym_gas] = ACTIONS(926),
    [anon_sym_address] = ACTIONS(926),
    [anon_sym_balance] = ACTIONS(926),
    [anon_sym_selfbalance] = ACTIONS(926),
    [anon_sym_caller] = ACTIONS(926),
    [anon_sym_callvalue] = ACTIONS(926),
    [anon_sym_calldataload] = ACTIONS(926),
    [anon_sym_calldatasize] = ACTIONS(926),
    [anon_sym_calldatacopy] = ACTIONS(926),
    [anon_sym_extcodesize] = ACTIONS(926),
    [anon_sym_extcodecopy] = ACTIONS(926),
    [anon_sym_returndatasize] = ACTIONS(926),
    [anon_sym_returndatacopy] = ACTIONS(926),
    [anon_sym_extcodehash] = ACTIONS(926),
    [anon_sym_create] = ACTIONS(926),
    [anon_sym_create2] = ACTIONS(926),
    [anon_sym_call] = ACTIONS(926),
    [anon_sym_callcode] = ACTIONS(926),
    [anon_sym_delegatecall] = ACTIONS(926),
    [anon_sym_staticcall] = ACTIONS(926),
    [anon_sym_return] = ACTIONS(926),
    [anon_sym_revert] = ACTIONS(926),
    [anon_sym_selfdestruct] = ACTIONS(926),
    [anon_sym_invalid] = ACTIONS(926),
    [anon_sym_log0] = ACTIONS(926),
    [anon_sym_log1] = ACTIONS(926),
    [anon_sym_log2] = ACTIONS(926),
    [anon_sym_log3] = ACTIONS(926),
    [anon_sym_log4] = ACTIONS(926),
    [anon_sym_chainid] = ACTIONS(926),
    [anon_sym_origin] = ACTIONS(926),
    [anon_sym_gasprice] = ACTIONS(926),
    [anon_sym_blockhash] = ACTIONS(926),
    [anon_sym_coinbase] = ACTIONS(926),
    [anon_sym_timestamp] = ACTIONS(926),
    [anon_sym_number] = ACTIONS(926),
    [anon_sym_difficulty] = ACTIONS(926),
    [anon_sym_gaslimit] = ACTIONS(926),
    [anon_sym_DQUOTE] = ACTIONS(928),
    [anon_sym_SQUOTE] = ACTIONS(928),
    [sym_comment] = ACTIONS(3),
  },
  [223] = {
    [sym_identifier] = ACTIONS(933),
    [anon_sym_LBRACE] = ACTIONS(935),
    [anon_sym_COMMA] = ACTIONS(935),
    [anon_sym_RBRACE] = ACTIONS(935),
    [anon_sym_LPAREN] = ACTIONS(935),
    [anon_sym_RPAREN] = ACTIONS(935),
    [anon_sym_for] = ACTIONS(933),
    [sym_yul_leave] = ACTIONS(933),
    [anon_sym_break] = ACTIONS(933),
    [anon_sym_continue] = ACTIONS(933),
    [sym_yul_decimal_number] = ACTIONS(933),
    [sym_yul_hex_number] = ACTIONS(935),
    [anon_sym_true] = ACTIONS(933),
    [anon_sym_false] = ACTIONS(933),
    [anon_sym_let] = ACTIONS(933),
    [anon_sym_if] = ACTIONS(933),
    [anon_sym_switch] = ACTIONS(933),
    [anon_sym_default] = ACTIONS(933),
    [anon_sym_case] = ACTIONS(933),
    [anon_sym_function] = ACTIONS(933),
    [anon_sym_stop] = ACTIONS(933),
    [anon_sym_add] = ACTIONS(933),
    [anon_sym_sub] = ACTIONS(933),
    [anon_sym_mul] = ACTIONS(933),
    [anon_sym_div] = ACTIONS(933),
    [anon_sym_sdiv] = ACTIONS(933),
    [anon_sym_mod] = ACTIONS(933),
    [anon_sym_smod] = ACTIONS(933),
    [anon_sym_exp] = ACTIONS(933),
    [anon_sym_not] = ACTIONS(933),
    [anon_sym_lt] = ACTIONS(933),
    [anon_sym_gt] = ACTIONS(933),
    [anon_sym_slt] = ACTIONS(933),
    [anon_sym_sgt] = ACTIONS(933),
    [anon_sym_eq] = ACTIONS(933),
    [anon_sym_iszero] = ACTIONS(933),
    [anon_sym_and] = ACTIONS(933),
    [anon_sym_or] = ACTIONS(933),
    [anon_sym_xor] = ACTIONS(933),
    [anon_sym_byte] = ACTIONS(933),
    [anon_sym_shl] = ACTIONS(933),
    [anon_sym_shr] = ACTIONS(933),
    [anon_sym_sar] = ACTIONS(933),
    [anon_sym_addmod] = ACTIONS(933),
    [anon_sym_mulmod] = ACTIONS(933),
    [anon_sym_signextend] = ACTIONS(933),
    [anon_sym_keccak256] = ACTIONS(933),
    [anon_sym_pop] = ACTIONS(933),
    [anon_sym_mload] = ACTIONS(933),
    [anon_sym_mstore] = ACTIONS(933),
    [anon_sym_mstore8] = ACTIONS(933),
    [anon_sym_sload] = ACTIONS(933),
    [anon_sym_sstore] = ACTIONS(933),
    [anon_sym_msize] = ACTIONS(933),
    [anon_sym_gas] = ACTIONS(933),
    [anon_sym_address] = ACTIONS(933),
    [anon_sym_balance] = ACTIONS(933),
    [anon_sym_selfbalance] = ACTIONS(933),
    [anon_sym_caller] = ACTIONS(933),
    [anon_sym_callvalue] = ACTIONS(933),
    [anon_sym_calldataload] = ACTIONS(933),
    [anon_sym_calldatasize] = ACTIONS(933),
    [anon_sym_calldatacopy] = ACTIONS(933),
    [anon_sym_extcodesize] = ACTIONS(933),
    [anon_sym_extcodecopy] = ACTIONS(933),
    [anon_sym_returndatasize] = ACTIONS(933),
    [anon_sym_returndatacopy] = ACTIONS(933),
    [anon_sym_extcodehash] = ACTIONS(933),
    [anon_sym_create] = ACTIONS(933),
    [anon_sym_create2] = ACTIONS(933),
    [anon_sym_call] = ACTIONS(933),
    [anon_sym_callcode] = ACTIONS(933),
    [anon_sym_delegatecall] = ACTIONS(933),
    [anon_sym_staticcall] = ACTIONS(933),
    [anon_sym_return] = ACTIONS(933),
    [anon_sym_revert] = ACTIONS(933),
    [anon_sym_selfdestruct] = ACTIONS(933),
    [anon_sym_invalid] = ACTIONS(933),
    [anon_sym_log0] = ACTIONS(933),
    [anon_sym_log1] = ACTIONS(933),
    [anon_sym_log2] = ACTIONS(933),
    [anon_sym_log3] = ACTIONS(933),
    [anon_sym_log4] = ACTIONS(933),
    [anon_sym_chainid] = ACTIONS(933),
    [anon_sym_origin] = ACTIONS(933),
    [anon_sym_gasprice] = ACTIONS(933),
    [anon_sym_blockhash] = ACTIONS(933),
    [anon_sym_coinbase] = ACTIONS(933),
    [anon_sym_timestamp] = ACTIONS(933),
    [anon_sym_number] = ACTIONS(933),
    [anon_sym_difficulty] = ACTIONS(933),
    [anon_sym_gaslimit] = ACTIONS(933),
    [anon_sym_DQUOTE] = ACTIONS(935),
    [anon_sym_SQUOTE] = ACTIONS(935),
    [sym_comment] = ACTIONS(3),
  },
  [224] = {
    [aux_sym_yul_path_repeat1] = STATE(220),
    [sym_identifier] = ACTIONS(910),
    [anon_sym_LBRACE] = ACTIONS(912),
    [anon_sym_COMMA] = ACTIONS(912),
    [anon_sym_RBRACE] = ACTIONS(912),
    [anon_sym_for] = ACTIONS(910),
    [anon_sym_COLON] = ACTIONS(910),
    [sym_yul_leave] = ACTIONS(910),
    [anon_sym_break] = ACTIONS(910),
    [anon_sym_continue] = ACTIONS(910),
    [anon_sym_DOT] = ACTIONS(916),
    [sym_yul_decimal_number] = ACTIONS(910),
    [sym_yul_hex_number] = ACTIONS(912),
    [anon_sym_true] = ACTIONS(910),
    [anon_sym_false] = ACTIONS(910),
    [anon_sym_let] = ACTIONS(910),
    [anon_sym_COLON_EQ] = ACTIONS(912),
    [anon_sym_if] = ACTIONS(910),
    [anon_sym_switch] = ACTIONS(910),
    [anon_sym_function] = ACTIONS(910),
    [anon_sym_stop] = ACTIONS(910),
    [anon_sym_add] = ACTIONS(910),
    [anon_sym_sub] = ACTIONS(910),
    [anon_sym_mul] = ACTIONS(910),
    [anon_sym_div] = ACTIONS(910),
    [anon_sym_sdiv] = ACTIONS(910),
    [anon_sym_mod] = ACTIONS(910),
    [anon_sym_smod] = ACTIONS(910),
    [anon_sym_exp] = ACTIONS(910),
    [anon_sym_not] = ACTIONS(910),
    [anon_sym_lt] = ACTIONS(910),
    [anon_sym_gt] = ACTIONS(910),
    [anon_sym_slt] = ACTIONS(910),
    [anon_sym_sgt] = ACTIONS(910),
    [anon_sym_eq] = ACTIONS(910),
    [anon_sym_iszero] = ACTIONS(910),
    [anon_sym_and] = ACTIONS(910),
    [anon_sym_or] = ACTIONS(910),
    [anon_sym_xor] = ACTIONS(910),
    [anon_sym_byte] = ACTIONS(910),
    [anon_sym_shl] = ACTIONS(910),
    [anon_sym_shr] = ACTIONS(910),
    [anon_sym_sar] = ACTIONS(910),
    [anon_sym_addmod] = ACTIONS(910),
    [anon_sym_mulmod] = ACTIONS(910),
    [anon_sym_signextend] = ACTIONS(910),
    [anon_sym_keccak256] = ACTIONS(910),
    [anon_sym_pop] = ACTIONS(910),
    [anon_sym_mload] = ACTIONS(910),
    [anon_sym_mstore] = ACTIONS(910),
    [anon_sym_mstore8] = ACTIONS(910),
    [anon_sym_sload] = ACTIONS(910),
    [anon_sym_sstore] = ACTIONS(910),
    [anon_sym_msize] = ACTIONS(910),
    [anon_sym_gas] = ACTIONS(910),
    [anon_sym_address] = ACTIONS(910),
    [anon_sym_balance] = ACTIONS(910),
    [anon_sym_selfbalance] = ACTIONS(910),
    [anon_sym_caller] = ACTIONS(910),
    [anon_sym_callvalue] = ACTIONS(910),
    [anon_sym_calldataload] = ACTIONS(910),
    [anon_sym_calldatasize] = ACTIONS(910),
    [anon_sym_calldatacopy] = ACTIONS(910),
    [anon_sym_extcodesize] = ACTIONS(910),
    [anon_sym_extcodecopy] = ACTIONS(910),
    [anon_sym_returndatasize] = ACTIONS(910),
    [anon_sym_returndatacopy] = ACTIONS(910),
    [anon_sym_extcodehash] = ACTIONS(910),
    [anon_sym_create] = ACTIONS(910),
    [anon_sym_create2] = ACTIONS(910),
    [anon_sym_call] = ACTIONS(910),
    [anon_sym_callcode] = ACTIONS(910),
    [anon_sym_delegatecall] = ACTIONS(910),
    [anon_sym_staticcall] = ACTIONS(910),
    [anon_sym_return] = ACTIONS(910),
    [anon_sym_revert] = ACTIONS(910),
    [anon_sym_selfdestruct] = ACTIONS(910),
    [anon_sym_invalid] = ACTIONS(910),
    [anon_sym_log0] = ACTIONS(910),
    [anon_sym_log1] = ACTIONS(910),
    [anon_sym_log2] = ACTIONS(910),
    [anon_sym_log3] = ACTIONS(910),
    [anon_sym_log4] = ACTIONS(910),
    [anon_sym_chainid] = ACTIONS(910),
    [anon_sym_origin] = ACTIONS(910),
    [anon_sym_gasprice] = ACTIONS(910),
    [anon_sym_blockhash] = ACTIONS(910),
    [anon_sym_coinbase] = ACTIONS(910),
    [anon_sym_timestamp] = ACTIONS(910),
    [anon_sym_number] = ACTIONS(910),
    [anon_sym_difficulty] = ACTIONS(910),
    [anon_sym_gaslimit] = ACTIONS(910),
    [anon_sym_DQUOTE] = ACTIONS(912),
    [anon_sym_SQUOTE] = ACTIONS(912),
    [sym_comment] = ACTIONS(3),
  },
  [225] = {
    [sym_yul_identifier] = STATE(224),
    [sym_yul_path] = STATE(240),
    [sym__yul_assignment_operator] = STATE(295),
    [sym_identifier] = ACTIONS(937),
    [anon_sym_LBRACE] = ACTIONS(939),
    [anon_sym_RBRACE] = ACTIONS(939),
    [anon_sym_for] = ACTIONS(937),
    [anon_sym_COLON] = ACTIONS(941),
    [sym_yul_leave] = ACTIONS(937),
    [anon_sym_break] = ACTIONS(937),
    [anon_sym_continue] = ACTIONS(937),
    [sym_yul_decimal_number] = ACTIONS(937),
    [sym_yul_hex_number] = ACTIONS(939),
    [anon_sym_true] = ACTIONS(937),
    [anon_sym_false] = ACTIONS(937),
    [anon_sym_let] = ACTIONS(937),
    [anon_sym_COLON_EQ] = ACTIONS(943),
    [anon_sym_if] = ACTIONS(937),
    [anon_sym_switch] = ACTIONS(937),
    [anon_sym_function] = ACTIONS(937),
    [anon_sym_stop] = ACTIONS(937),
    [anon_sym_add] = ACTIONS(937),
    [anon_sym_sub] = ACTIONS(937),
    [anon_sym_mul] = ACTIONS(937),
    [anon_sym_div] = ACTIONS(937),
    [anon_sym_sdiv] = ACTIONS(937),
    [anon_sym_mod] = ACTIONS(937),
    [anon_sym_smod] = ACTIONS(937),
    [anon_sym_exp] = ACTIONS(937),
    [anon_sym_not] = ACTIONS(937),
    [anon_sym_lt] = ACTIONS(937),
    [anon_sym_gt] = ACTIONS(937),
    [anon_sym_slt] = ACTIONS(937),
    [anon_sym_sgt] = ACTIONS(937),
    [anon_sym_eq] = ACTIONS(937),
    [anon_sym_iszero] = ACTIONS(937),
    [anon_sym_and] = ACTIONS(937),
    [anon_sym_or] = ACTIONS(937),
    [anon_sym_xor] = ACTIONS(937),
    [anon_sym_byte] = ACTIONS(937),
    [anon_sym_shl] = ACTIONS(937),
    [anon_sym_shr] = ACTIONS(937),
    [anon_sym_sar] = ACTIONS(937),
    [anon_sym_addmod] = ACTIONS(937),
    [anon_sym_mulmod] = ACTIONS(937),
    [anon_sym_signextend] = ACTIONS(937),
    [anon_sym_keccak256] = ACTIONS(937),
    [anon_sym_pop] = ACTIONS(937),
    [anon_sym_mload] = ACTIONS(937),
    [anon_sym_mstore] = ACTIONS(937),
    [anon_sym_mstore8] = ACTIONS(937),
    [anon_sym_sload] = ACTIONS(937),
    [anon_sym_sstore] = ACTIONS(937),
    [anon_sym_msize] = ACTIONS(937),
    [anon_sym_gas] = ACTIONS(937),
    [anon_sym_address] = ACTIONS(937),
    [anon_sym_balance] = ACTIONS(937),
    [anon_sym_selfbalance] = ACTIONS(937),
    [anon_sym_caller] = ACTIONS(937),
    [anon_sym_callvalue] = ACTIONS(937),
    [anon_sym_calldataload] = ACTIONS(937),
    [anon_sym_calldatasize] = ACTIONS(937),
    [anon_sym_calldatacopy] = ACTIONS(937),
    [anon_sym_extcodesize] = ACTIONS(937),
    [anon_sym_extcodecopy] = ACTIONS(937),
    [anon_sym_returndatasize] = ACTIONS(937),
    [anon_sym_returndatacopy] = ACTIONS(937),
    [anon_sym_extcodehash] = ACTIONS(937),
    [anon_sym_create] = ACTIONS(937),
    [anon_sym_create2] = ACTIONS(937),
    [anon_sym_call] = ACTIONS(937),
    [anon_sym_callcode] = ACTIONS(937),
    [anon_sym_delegatecall] = ACTIONS(937),
    [anon_sym_staticcall] = ACTIONS(937),
    [anon_sym_return] = ACTIONS(937),
    [anon_sym_revert] = ACTIONS(937),
    [anon_sym_selfdestruct] = ACTIONS(937),
    [anon_sym_invalid] = ACTIONS(937),
    [anon_sym_log0] = ACTIONS(937),
    [anon_sym_log1] = ACTIONS(937),
    [anon_sym_log2] = ACTIONS(937),
    [anon_sym_log3] = ACTIONS(937),
    [anon_sym_log4] = ACTIONS(937),
    [anon_sym_chainid] = ACTIONS(937),
    [anon_sym_origin] = ACTIONS(937),
    [anon_sym_gasprice] = ACTIONS(937),
    [anon_sym_blockhash] = ACTIONS(937),
    [anon_sym_coinbase] = ACTIONS(937),
    [anon_sym_timestamp] = ACTIONS(937),
    [anon_sym_number] = ACTIONS(937),
    [anon_sym_difficulty] = ACTIONS(937),
    [anon_sym_gaslimit] = ACTIONS(937),
    [anon_sym_DQUOTE] = ACTIONS(939),
    [anon_sym_SQUOTE] = ACTIONS(939),
    [sym_comment] = ACTIONS(3),
  },
  [226] = {
    [sym__yul_assignment_operator] = STATE(295),
    [aux_sym_yul_assignment_repeat1] = STATE(234),
    [sym_identifier] = ACTIONS(937),
    [anon_sym_LBRACE] = ACTIONS(939),
    [anon_sym_COMMA] = ACTIONS(945),
    [anon_sym_RBRACE] = ACTIONS(939),
    [anon_sym_for] = ACTIONS(937),
    [anon_sym_COLON] = ACTIONS(941),
    [sym_yul_leave] = ACTIONS(937),
    [anon_sym_break] = ACTIONS(937),
    [anon_sym_continue] = ACTIONS(937),
    [sym_yul_decimal_number] = ACTIONS(937),
    [sym_yul_hex_number] = ACTIONS(939),
    [anon_sym_true] = ACTIONS(937),
    [anon_sym_false] = ACTIONS(937),
    [anon_sym_let] = ACTIONS(937),
    [anon_sym_COLON_EQ] = ACTIONS(943),
    [anon_sym_if] = ACTIONS(937),
    [anon_sym_switch] = ACTIONS(937),
    [anon_sym_function] = ACTIONS(937),
    [anon_sym_stop] = ACTIONS(937),
    [anon_sym_add] = ACTIONS(937),
    [anon_sym_sub] = ACTIONS(937),
    [anon_sym_mul] = ACTIONS(937),
    [anon_sym_div] = ACTIONS(937),
    [anon_sym_sdiv] = ACTIONS(937),
    [anon_sym_mod] = ACTIONS(937),
    [anon_sym_smod] = ACTIONS(937),
    [anon_sym_exp] = ACTIONS(937),
    [anon_sym_not] = ACTIONS(937),
    [anon_sym_lt] = ACTIONS(937),
    [anon_sym_gt] = ACTIONS(937),
    [anon_sym_slt] = ACTIONS(937),
    [anon_sym_sgt] = ACTIONS(937),
    [anon_sym_eq] = ACTIONS(937),
    [anon_sym_iszero] = ACTIONS(937),
    [anon_sym_and] = ACTIONS(937),
    [anon_sym_or] = ACTIONS(937),
    [anon_sym_xor] = ACTIONS(937),
    [anon_sym_byte] = ACTIONS(937),
    [anon_sym_shl] = ACTIONS(937),
    [anon_sym_shr] = ACTIONS(937),
    [anon_sym_sar] = ACTIONS(937),
    [anon_sym_addmod] = ACTIONS(937),
    [anon_sym_mulmod] = ACTIONS(937),
    [anon_sym_signextend] = ACTIONS(937),
    [anon_sym_keccak256] = ACTIONS(937),
    [anon_sym_pop] = ACTIONS(937),
    [anon_sym_mload] = ACTIONS(937),
    [anon_sym_mstore] = ACTIONS(937),
    [anon_sym_mstore8] = ACTIONS(937),
    [anon_sym_sload] = ACTIONS(937),
    [anon_sym_sstore] = ACTIONS(937),
    [anon_sym_msize] = ACTIONS(937),
    [anon_sym_gas] = ACTIONS(937),
    [anon_sym_address] = ACTIONS(937),
    [anon_sym_balance] = ACTIONS(937),
    [anon_sym_selfbalance] = ACTIONS(937),
    [anon_sym_caller] = ACTIONS(937),
    [anon_sym_callvalue] = ACTIONS(937),
    [anon_sym_calldataload] = ACTIONS(937),
    [anon_sym_calldatasize] = ACTIONS(937),
    [anon_sym_calldatacopy] = ACTIONS(937),
    [anon_sym_extcodesize] = ACTIONS(937),
    [anon_sym_extcodecopy] = ACTIONS(937),
    [anon_sym_returndatasize] = ACTIONS(937),
    [anon_sym_returndatacopy] = ACTIONS(937),
    [anon_sym_extcodehash] = ACTIONS(937),
    [anon_sym_create] = ACTIONS(937),
    [anon_sym_create2] = ACTIONS(937),
    [anon_sym_call] = ACTIONS(937),
    [anon_sym_callcode] = ACTIONS(937),
    [anon_sym_delegatecall] = ACTIONS(937),
    [anon_sym_staticcall] = ACTIONS(937),
    [anon_sym_return] = ACTIONS(937),
    [anon_sym_revert] = ACTIONS(937),
    [anon_sym_selfdestruct] = ACTIONS(937),
    [anon_sym_invalid] = ACTIONS(937),
    [anon_sym_log0] = ACTIONS(937),
    [anon_sym_log1] = ACTIONS(937),
    [anon_sym_log2] = ACTIONS(937),
    [anon_sym_log3] = ACTIONS(937),
    [anon_sym_log4] = ACTIONS(937),
    [anon_sym_chainid] = ACTIONS(937),
    [anon_sym_origin] = ACTIONS(937),
    [anon_sym_gasprice] = ACTIONS(937),
    [anon_sym_blockhash] = ACTIONS(937),
    [anon_sym_coinbase] = ACTIONS(937),
    [anon_sym_timestamp] = ACTIONS(937),
    [anon_sym_number] = ACTIONS(937),
    [anon_sym_difficulty] = ACTIONS(937),
    [anon_sym_gaslimit] = ACTIONS(937),
    [anon_sym_DQUOTE] = ACTIONS(939),
    [anon_sym_SQUOTE] = ACTIONS(939),
    [sym_comment] = ACTIONS(3),
  },
  [227] = {
    [sym_identifier] = ACTIONS(947),
    [anon_sym_LBRACE] = ACTIONS(949),
    [anon_sym_COMMA] = ACTIONS(949),
    [anon_sym_RBRACE] = ACTIONS(949),
    [anon_sym_LPAREN] = ACTIONS(914),
    [anon_sym_RPAREN] = ACTIONS(949),
    [anon_sym_for] = ACTIONS(947),
    [sym_yul_leave] = ACTIONS(947),
    [anon_sym_break] = ACTIONS(947),
    [anon_sym_continue] = ACTIONS(947),
    [sym_yul_decimal_number] = ACTIONS(947),
    [sym_yul_hex_number] = ACTIONS(949),
    [anon_sym_true] = ACTIONS(947),
    [anon_sym_false] = ACTIONS(947),
    [anon_sym_let] = ACTIONS(947),
    [anon_sym_if] = ACTIONS(947),
    [anon_sym_switch] = ACTIONS(947),
    [anon_sym_default] = ACTIONS(947),
    [anon_sym_case] = ACTIONS(947),
    [anon_sym_function] = ACTIONS(947),
    [anon_sym_stop] = ACTIONS(947),
    [anon_sym_add] = ACTIONS(947),
    [anon_sym_sub] = ACTIONS(947),
    [anon_sym_mul] = ACTIONS(947),
    [anon_sym_div] = ACTIONS(947),
    [anon_sym_sdiv] = ACTIONS(947),
    [anon_sym_mod] = ACTIONS(947),
    [anon_sym_smod] = ACTIONS(947),
    [anon_sym_exp] = ACTIONS(947),
    [anon_sym_not] = ACTIONS(947),
    [anon_sym_lt] = ACTIONS(947),
    [anon_sym_gt] = ACTIONS(947),
    [anon_sym_slt] = ACTIONS(947),
    [anon_sym_sgt] = ACTIONS(947),
    [anon_sym_eq] = ACTIONS(947),
    [anon_sym_iszero] = ACTIONS(947),
    [anon_sym_and] = ACTIONS(947),
    [anon_sym_or] = ACTIONS(947),
    [anon_sym_xor] = ACTIONS(947),
    [anon_sym_byte] = ACTIONS(947),
    [anon_sym_shl] = ACTIONS(947),
    [anon_sym_shr] = ACTIONS(947),
    [anon_sym_sar] = ACTIONS(947),
    [anon_sym_addmod] = ACTIONS(947),
    [anon_sym_mulmod] = ACTIONS(947),
    [anon_sym_signextend] = ACTIONS(947),
    [anon_sym_keccak256] = ACTIONS(947),
    [anon_sym_pop] = ACTIONS(947),
    [anon_sym_mload] = ACTIONS(947),
    [anon_sym_mstore] = ACTIONS(947),
    [anon_sym_mstore8] = ACTIONS(947),
    [anon_sym_sload] = ACTIONS(947),
    [anon_sym_sstore] = ACTIONS(947),
    [anon_sym_msize] = ACTIONS(947),
    [anon_sym_gas] = ACTIONS(947),
    [anon_sym_address] = ACTIONS(947),
    [anon_sym_balance] = ACTIONS(947),
    [anon_sym_selfbalance] = ACTIONS(947),
    [anon_sym_caller] = ACTIONS(947),
    [anon_sym_callvalue] = ACTIONS(947),
    [anon_sym_calldataload] = ACTIONS(947),
    [anon_sym_calldatasize] = ACTIONS(947),
    [anon_sym_calldatacopy] = ACTIONS(947),
    [anon_sym_extcodesize] = ACTIONS(947),
    [anon_sym_extcodecopy] = ACTIONS(947),
    [anon_sym_returndatasize] = ACTIONS(947),
    [anon_sym_returndatacopy] = ACTIONS(947),
    [anon_sym_extcodehash] = ACTIONS(947),
    [anon_sym_create] = ACTIONS(947),
    [anon_sym_create2] = ACTIONS(947),
    [anon_sym_call] = ACTIONS(947),
    [anon_sym_callcode] = ACTIONS(947),
    [anon_sym_delegatecall] = ACTIONS(947),
    [anon_sym_staticcall] = ACTIONS(947),
    [anon_sym_return] = ACTIONS(947),
    [anon_sym_revert] = ACTIONS(947),
    [anon_sym_selfdestruct] = ACTIONS(947),
    [anon_sym_invalid] = ACTIONS(947),
    [anon_sym_log0] = ACTIONS(947),
    [anon_sym_log1] = ACTIONS(947),
    [anon_sym_log2] = ACTIONS(947),
    [anon_sym_log3] = ACTIONS(947),
    [anon_sym_log4] = ACTIONS(947),
    [anon_sym_chainid] = ACTIONS(947),
    [anon_sym_origin] = ACTIONS(947),
    [anon_sym_gasprice] = ACTIONS(947),
    [anon_sym_blockhash] = ACTIONS(947),
    [anon_sym_coinbase] = ACTIONS(947),
    [anon_sym_timestamp] = ACTIONS(947),
    [anon_sym_number] = ACTIONS(947),
    [anon_sym_difficulty] = ACTIONS(947),
    [anon_sym_gaslimit] = ACTIONS(947),
    [anon_sym_DQUOTE] = ACTIONS(949),
    [anon_sym_SQUOTE] = ACTIONS(949),
    [sym_comment] = ACTIONS(3),
  },
  [228] = {
    [sym__yul_assignment_operator] = STATE(285),
    [aux_sym_yul_assignment_repeat1] = STATE(226),
    [sym_identifier] = ACTIONS(951),
    [anon_sym_LBRACE] = ACTIONS(953),
    [anon_sym_COMMA] = ACTIONS(955),
    [anon_sym_RBRACE] = ACTIONS(953),
    [anon_sym_for] = ACTIONS(951),
    [anon_sym_COLON] = ACTIONS(941),
    [sym_yul_leave] = ACTIONS(951),
    [anon_sym_break] = ACTIONS(951),
    [anon_sym_continue] = ACTIONS(951),
    [sym_yul_decimal_number] = ACTIONS(951),
    [sym_yul_hex_number] = ACTIONS(953),
    [anon_sym_true] = ACTIONS(951),
    [anon_sym_false] = ACTIONS(951),
    [anon_sym_let] = ACTIONS(951),
    [anon_sym_COLON_EQ] = ACTIONS(957),
    [anon_sym_if] = ACTIONS(951),
    [anon_sym_switch] = ACTIONS(951),
    [anon_sym_function] = ACTIONS(951),
    [anon_sym_stop] = ACTIONS(951),
    [anon_sym_add] = ACTIONS(951),
    [anon_sym_sub] = ACTIONS(951),
    [anon_sym_mul] = ACTIONS(951),
    [anon_sym_div] = ACTIONS(951),
    [anon_sym_sdiv] = ACTIONS(951),
    [anon_sym_mod] = ACTIONS(951),
    [anon_sym_smod] = ACTIONS(951),
    [anon_sym_exp] = ACTIONS(951),
    [anon_sym_not] = ACTIONS(951),
    [anon_sym_lt] = ACTIONS(951),
    [anon_sym_gt] = ACTIONS(951),
    [anon_sym_slt] = ACTIONS(951),
    [anon_sym_sgt] = ACTIONS(951),
    [anon_sym_eq] = ACTIONS(951),
    [anon_sym_iszero] = ACTIONS(951),
    [anon_sym_and] = ACTIONS(951),
    [anon_sym_or] = ACTIONS(951),
    [anon_sym_xor] = ACTIONS(951),
    [anon_sym_byte] = ACTIONS(951),
    [anon_sym_shl] = ACTIONS(951),
    [anon_sym_shr] = ACTIONS(951),
    [anon_sym_sar] = ACTIONS(951),
    [anon_sym_addmod] = ACTIONS(951),
    [anon_sym_mulmod] = ACTIONS(951),
    [anon_sym_signextend] = ACTIONS(951),
    [anon_sym_keccak256] = ACTIONS(951),
    [anon_sym_pop] = ACTIONS(951),
    [anon_sym_mload] = ACTIONS(951),
    [anon_sym_mstore] = ACTIONS(951),
    [anon_sym_mstore8] = ACTIONS(951),
    [anon_sym_sload] = ACTIONS(951),
    [anon_sym_sstore] = ACTIONS(951),
    [anon_sym_msize] = ACTIONS(951),
    [anon_sym_gas] = ACTIONS(951),
    [anon_sym_address] = ACTIONS(951),
    [anon_sym_balance] = ACTIONS(951),
    [anon_sym_selfbalance] = ACTIONS(951),
    [anon_sym_caller] = ACTIONS(951),
    [anon_sym_callvalue] = ACTIONS(951),
    [anon_sym_calldataload] = ACTIONS(951),
    [anon_sym_calldatasize] = ACTIONS(951),
    [anon_sym_calldatacopy] = ACTIONS(951),
    [anon_sym_extcodesize] = ACTIONS(951),
    [anon_sym_extcodecopy] = ACTIONS(951),
    [anon_sym_returndatasize] = ACTIONS(951),
    [anon_sym_returndatacopy] = ACTIONS(951),
    [anon_sym_extcodehash] = ACTIONS(951),
    [anon_sym_create] = ACTIONS(951),
    [anon_sym_create2] = ACTIONS(951),
    [anon_sym_call] = ACTIONS(951),
    [anon_sym_callcode] = ACTIONS(951),
    [anon_sym_delegatecall] = ACTIONS(951),
    [anon_sym_staticcall] = ACTIONS(951),
    [anon_sym_return] = ACTIONS(951),
    [anon_sym_revert] = ACTIONS(951),
    [anon_sym_selfdestruct] = ACTIONS(951),
    [anon_sym_invalid] = ACTIONS(951),
    [anon_sym_log0] = ACTIONS(951),
    [anon_sym_log1] = ACTIONS(951),
    [anon_sym_log2] = ACTIONS(951),
    [anon_sym_log3] = ACTIONS(951),
    [anon_sym_log4] = ACTIONS(951),
    [anon_sym_chainid] = ACTIONS(951),
    [anon_sym_origin] = ACTIONS(951),
    [anon_sym_gasprice] = ACTIONS(951),
    [anon_sym_blockhash] = ACTIONS(951),
    [anon_sym_coinbase] = ACTIONS(951),
    [anon_sym_timestamp] = ACTIONS(951),
    [anon_sym_number] = ACTIONS(951),
    [anon_sym_difficulty] = ACTIONS(951),
    [anon_sym_gaslimit] = ACTIONS(951),
    [anon_sym_DQUOTE] = ACTIONS(953),
    [anon_sym_SQUOTE] = ACTIONS(953),
    [sym_comment] = ACTIONS(3),
  },
  [229] = {
    [sym_identifier] = ACTIONS(918),
    [anon_sym_LBRACE] = ACTIONS(920),
    [anon_sym_COMMA] = ACTIONS(920),
    [anon_sym_RBRACE] = ACTIONS(920),
    [anon_sym_LPAREN] = ACTIONS(920),
    [anon_sym_for] = ACTIONS(918),
    [anon_sym_COLON] = ACTIONS(959),
    [sym_yul_leave] = ACTIONS(918),
    [anon_sym_break] = ACTIONS(918),
    [anon_sym_continue] = ACTIONS(918),
    [anon_sym_DOT] = ACTIONS(920),
    [sym_yul_decimal_number] = ACTIONS(918),
    [sym_yul_hex_number] = ACTIONS(920),
    [anon_sym_true] = ACTIONS(918),
    [anon_sym_false] = ACTIONS(918),
    [anon_sym_let] = ACTIONS(918),
    [anon_sym_COLON_EQ] = ACTIONS(920),
    [anon_sym_if] = ACTIONS(918),
    [anon_sym_switch] = ACTIONS(918),
    [anon_sym_function] = ACTIONS(918),
    [anon_sym_stop] = ACTIONS(918),
    [anon_sym_add] = ACTIONS(918),
    [anon_sym_sub] = ACTIONS(918),
    [anon_sym_mul] = ACTIONS(918),
    [anon_sym_div] = ACTIONS(918),
    [anon_sym_sdiv] = ACTIONS(918),
    [anon_sym_mod] = ACTIONS(918),
    [anon_sym_smod] = ACTIONS(918),
    [anon_sym_exp] = ACTIONS(918),
    [anon_sym_not] = ACTIONS(918),
    [anon_sym_lt] = ACTIONS(918),
    [anon_sym_gt] = ACTIONS(918),
    [anon_sym_slt] = ACTIONS(918),
    [anon_sym_sgt] = ACTIONS(918),
    [anon_sym_eq] = ACTIONS(918),
    [anon_sym_iszero] = ACTIONS(918),
    [anon_sym_and] = ACTIONS(918),
    [anon_sym_or] = ACTIONS(918),
    [anon_sym_xor] = ACTIONS(918),
    [anon_sym_byte] = ACTIONS(918),
    [anon_sym_shl] = ACTIONS(918),
    [anon_sym_shr] = ACTIONS(918),
    [anon_sym_sar] = ACTIONS(918),
    [anon_sym_addmod] = ACTIONS(918),
    [anon_sym_mulmod] = ACTIONS(918),
    [anon_sym_signextend] = ACTIONS(918),
    [anon_sym_keccak256] = ACTIONS(918),
    [anon_sym_pop] = ACTIONS(918),
    [anon_sym_mload] = ACTIONS(918),
    [anon_sym_mstore] = ACTIONS(918),
    [anon_sym_mstore8] = ACTIONS(918),
    [anon_sym_sload] = ACTIONS(918),
    [anon_sym_sstore] = ACTIONS(918),
    [anon_sym_msize] = ACTIONS(918),
    [anon_sym_gas] = ACTIONS(918),
    [anon_sym_address] = ACTIONS(918),
    [anon_sym_balance] = ACTIONS(918),
    [anon_sym_selfbalance] = ACTIONS(918),
    [anon_sym_caller] = ACTIONS(918),
    [anon_sym_callvalue] = ACTIONS(918),
    [anon_sym_calldataload] = ACTIONS(918),
    [anon_sym_calldatasize] = ACTIONS(918),
    [anon_sym_calldatacopy] = ACTIONS(918),
    [anon_sym_extcodesize] = ACTIONS(918),
    [anon_sym_extcodecopy] = ACTIONS(918),
    [anon_sym_returndatasize] = ACTIONS(918),
    [anon_sym_returndatacopy] = ACTIONS(918),
    [anon_sym_extcodehash] = ACTIONS(918),
    [anon_sym_create] = ACTIONS(918),
    [anon_sym_create2] = ACTIONS(918),
    [anon_sym_call] = ACTIONS(918),
    [anon_sym_callcode] = ACTIONS(918),
    [anon_sym_delegatecall] = ACTIONS(918),
    [anon_sym_staticcall] = ACTIONS(918),
    [anon_sym_return] = ACTIONS(918),
    [anon_sym_revert] = ACTIONS(918),
    [anon_sym_selfdestruct] = ACTIONS(918),
    [anon_sym_invalid] = ACTIONS(918),
    [anon_sym_log0] = ACTIONS(918),
    [anon_sym_log1] = ACTIONS(918),
    [anon_sym_log2] = ACTIONS(918),
    [anon_sym_log3] = ACTIONS(918),
    [anon_sym_log4] = ACTIONS(918),
    [anon_sym_chainid] = ACTIONS(918),
    [anon_sym_origin] = ACTIONS(918),
    [anon_sym_gasprice] = ACTIONS(918),
    [anon_sym_blockhash] = ACTIONS(918),
    [anon_sym_coinbase] = ACTIONS(918),
    [anon_sym_timestamp] = ACTIONS(918),
    [anon_sym_number] = ACTIONS(918),
    [anon_sym_difficulty] = ACTIONS(918),
    [anon_sym_gaslimit] = ACTIONS(918),
    [anon_sym_DQUOTE] = ACTIONS(920),
    [anon_sym_SQUOTE] = ACTIONS(920),
    [sym_comment] = ACTIONS(3),
  },
  [230] = {
    [sym_yul_identifier] = STATE(224),
    [sym_yul_path] = STATE(240),
    [sym__yul_assignment_operator] = STATE(291),
    [sym_identifier] = ACTIONS(962),
    [anon_sym_LBRACE] = ACTIONS(964),
    [anon_sym_RBRACE] = ACTIONS(964),
    [anon_sym_for] = ACTIONS(962),
    [anon_sym_COLON] = ACTIONS(941),
    [sym_yul_leave] = ACTIONS(962),
    [anon_sym_break] = ACTIONS(962),
    [anon_sym_continue] = ACTIONS(962),
    [sym_yul_decimal_number] = ACTIONS(962),
    [sym_yul_hex_number] = ACTIONS(964),
    [anon_sym_true] = ACTIONS(962),
    [anon_sym_false] = ACTIONS(962),
    [anon_sym_let] = ACTIONS(962),
    [anon_sym_COLON_EQ] = ACTIONS(966),
    [anon_sym_if] = ACTIONS(962),
    [anon_sym_switch] = ACTIONS(962),
    [anon_sym_function] = ACTIONS(962),
    [anon_sym_stop] = ACTIONS(962),
    [anon_sym_add] = ACTIONS(962),
    [anon_sym_sub] = ACTIONS(962),
    [anon_sym_mul] = ACTIONS(962),
    [anon_sym_div] = ACTIONS(962),
    [anon_sym_sdiv] = ACTIONS(962),
    [anon_sym_mod] = ACTIONS(962),
    [anon_sym_smod] = ACTIONS(962),
    [anon_sym_exp] = ACTIONS(962),
    [anon_sym_not] = ACTIONS(962),
    [anon_sym_lt] = ACTIONS(962),
    [anon_sym_gt] = ACTIONS(962),
    [anon_sym_slt] = ACTIONS(962),
    [anon_sym_sgt] = ACTIONS(962),
    [anon_sym_eq] = ACTIONS(962),
    [anon_sym_iszero] = ACTIONS(962),
    [anon_sym_and] = ACTIONS(962),
    [anon_sym_or] = ACTIONS(962),
    [anon_sym_xor] = ACTIONS(962),
    [anon_sym_byte] = ACTIONS(962),
    [anon_sym_shl] = ACTIONS(962),
    [anon_sym_shr] = ACTIONS(962),
    [anon_sym_sar] = ACTIONS(962),
    [anon_sym_addmod] = ACTIONS(962),
    [anon_sym_mulmod] = ACTIONS(962),
    [anon_sym_signextend] = ACTIONS(962),
    [anon_sym_keccak256] = ACTIONS(962),
    [anon_sym_pop] = ACTIONS(962),
    [anon_sym_mload] = ACTIONS(962),
    [anon_sym_mstore] = ACTIONS(962),
    [anon_sym_mstore8] = ACTIONS(962),
    [anon_sym_sload] = ACTIONS(962),
    [anon_sym_sstore] = ACTIONS(962),
    [anon_sym_msize] = ACTIONS(962),
    [anon_sym_gas] = ACTIONS(962),
    [anon_sym_address] = ACTIONS(962),
    [anon_sym_balance] = ACTIONS(962),
    [anon_sym_selfbalance] = ACTIONS(962),
    [anon_sym_caller] = ACTIONS(962),
    [anon_sym_callvalue] = ACTIONS(962),
    [anon_sym_calldataload] = ACTIONS(962),
    [anon_sym_calldatasize] = ACTIONS(962),
    [anon_sym_calldatacopy] = ACTIONS(962),
    [anon_sym_extcodesize] = ACTIONS(962),
    [anon_sym_extcodecopy] = ACTIONS(962),
    [anon_sym_returndatasize] = ACTIONS(962),
    [anon_sym_returndatacopy] = ACTIONS(962),
    [anon_sym_extcodehash] = ACTIONS(962),
    [anon_sym_create] = ACTIONS(962),
    [anon_sym_create2] = ACTIONS(962),
    [anon_sym_call] = ACTIONS(962),
    [anon_sym_callcode] = ACTIONS(962),
    [anon_sym_delegatecall] = ACTIONS(962),
    [anon_sym_staticcall] = ACTIONS(962),
    [anon_sym_return] = ACTIONS(962),
    [anon_sym_revert] = ACTIONS(962),
    [anon_sym_selfdestruct] = ACTIONS(962),
    [anon_sym_invalid] = ACTIONS(962),
    [anon_sym_log0] = ACTIONS(962),
    [anon_sym_log1] = ACTIONS(962),
    [anon_sym_log2] = ACTIONS(962),
    [anon_sym_log3] = ACTIONS(962),
    [anon_sym_log4] = ACTIONS(962),
    [anon_sym_chainid] = ACTIONS(962),
    [anon_sym_origin] = ACTIONS(962),
    [anon_sym_gasprice] = ACTIONS(962),
    [anon_sym_blockhash] = ACTIONS(962),
    [anon_sym_coinbase] = ACTIONS(962),
    [anon_sym_timestamp] = ACTIONS(962),
    [anon_sym_number] = ACTIONS(962),
    [anon_sym_difficulty] = ACTIONS(962),
    [anon_sym_gaslimit] = ACTIONS(962),
    [anon_sym_DQUOTE] = ACTIONS(964),
    [anon_sym_SQUOTE] = ACTIONS(964),
    [sym_comment] = ACTIONS(3),
  },
  [231] = {
    [sym_identifier] = ACTIONS(968),
    [anon_sym_LBRACE] = ACTIONS(970),
    [anon_sym_COMMA] = ACTIONS(970),
    [anon_sym_RBRACE] = ACTIONS(970),
    [anon_sym_RPAREN] = ACTIONS(970),
    [anon_sym_for] = ACTIONS(968),
    [sym_yul_leave] = ACTIONS(968),
    [anon_sym_break] = ACTIONS(968),
    [anon_sym_continue] = ACTIONS(968),
    [sym_yul_decimal_number] = ACTIONS(968),
    [sym_yul_hex_number] = ACTIONS(970),
    [anon_sym_true] = ACTIONS(968),
    [anon_sym_false] = ACTIONS(968),
    [anon_sym_let] = ACTIONS(968),
    [anon_sym_if] = ACTIONS(968),
    [anon_sym_switch] = ACTIONS(968),
    [anon_sym_default] = ACTIONS(968),
    [anon_sym_case] = ACTIONS(968),
    [anon_sym_function] = ACTIONS(968),
    [anon_sym_stop] = ACTIONS(968),
    [anon_sym_add] = ACTIONS(968),
    [anon_sym_sub] = ACTIONS(968),
    [anon_sym_mul] = ACTIONS(968),
    [anon_sym_div] = ACTIONS(968),
    [anon_sym_sdiv] = ACTIONS(968),
    [anon_sym_mod] = ACTIONS(968),
    [anon_sym_smod] = ACTIONS(968),
    [anon_sym_exp] = ACTIONS(968),
    [anon_sym_not] = ACTIONS(968),
    [anon_sym_lt] = ACTIONS(968),
    [anon_sym_gt] = ACTIONS(968),
    [anon_sym_slt] = ACTIONS(968),
    [anon_sym_sgt] = ACTIONS(968),
    [anon_sym_eq] = ACTIONS(968),
    [anon_sym_iszero] = ACTIONS(968),
    [anon_sym_and] = ACTIONS(968),
    [anon_sym_or] = ACTIONS(968),
    [anon_sym_xor] = ACTIONS(968),
    [anon_sym_byte] = ACTIONS(968),
    [anon_sym_shl] = ACTIONS(968),
    [anon_sym_shr] = ACTIONS(968),
    [anon_sym_sar] = ACTIONS(968),
    [anon_sym_addmod] = ACTIONS(968),
    [anon_sym_mulmod] = ACTIONS(968),
    [anon_sym_signextend] = ACTIONS(968),
    [anon_sym_keccak256] = ACTIONS(968),
    [anon_sym_pop] = ACTIONS(968),
    [anon_sym_mload] = ACTIONS(968),
    [anon_sym_mstore] = ACTIONS(968),
    [anon_sym_mstore8] = ACTIONS(968),
    [anon_sym_sload] = ACTIONS(968),
    [anon_sym_sstore] = ACTIONS(968),
    [anon_sym_msize] = ACTIONS(968),
    [anon_sym_gas] = ACTIONS(968),
    [anon_sym_address] = ACTIONS(968),
    [anon_sym_balance] = ACTIONS(968),
    [anon_sym_selfbalance] = ACTIONS(968),
    [anon_sym_caller] = ACTIONS(968),
    [anon_sym_callvalue] = ACTIONS(968),
    [anon_sym_calldataload] = ACTIONS(968),
    [anon_sym_calldatasize] = ACTIONS(968),
    [anon_sym_calldatacopy] = ACTIONS(968),
    [anon_sym_extcodesize] = ACTIONS(968),
    [anon_sym_extcodecopy] = ACTIONS(968),
    [anon_sym_returndatasize] = ACTIONS(968),
    [anon_sym_returndatacopy] = ACTIONS(968),
    [anon_sym_extcodehash] = ACTIONS(968),
    [anon_sym_create] = ACTIONS(968),
    [anon_sym_create2] = ACTIONS(968),
    [anon_sym_call] = ACTIONS(968),
    [anon_sym_callcode] = ACTIONS(968),
    [anon_sym_delegatecall] = ACTIONS(968),
    [anon_sym_staticcall] = ACTIONS(968),
    [anon_sym_return] = ACTIONS(968),
    [anon_sym_revert] = ACTIONS(968),
    [anon_sym_selfdestruct] = ACTIONS(968),
    [anon_sym_invalid] = ACTIONS(968),
    [anon_sym_log0] = ACTIONS(968),
    [anon_sym_log1] = ACTIONS(968),
    [anon_sym_log2] = ACTIONS(968),
    [anon_sym_log3] = ACTIONS(968),
    [anon_sym_log4] = ACTIONS(968),
    [anon_sym_chainid] = ACTIONS(968),
    [anon_sym_origin] = ACTIONS(968),
    [anon_sym_gasprice] = ACTIONS(968),
    [anon_sym_blockhash] = ACTIONS(968),
    [anon_sym_coinbase] = ACTIONS(968),
    [anon_sym_timestamp] = ACTIONS(968),
    [anon_sym_number] = ACTIONS(968),
    [anon_sym_difficulty] = ACTIONS(968),
    [anon_sym_gaslimit] = ACTIONS(968),
    [anon_sym_DQUOTE] = ACTIONS(970),
    [anon_sym_SQUOTE] = ACTIONS(970),
    [sym_comment] = ACTIONS(3),
  },
  [232] = {
    [sym_identifier] = ACTIONS(972),
    [anon_sym_LBRACE] = ACTIONS(974),
    [anon_sym_COMMA] = ACTIONS(974),
    [anon_sym_RBRACE] = ACTIONS(974),
    [anon_sym_RPAREN] = ACTIONS(974),
    [anon_sym_for] = ACTIONS(972),
    [sym_yul_leave] = ACTIONS(972),
    [anon_sym_break] = ACTIONS(972),
    [anon_sym_continue] = ACTIONS(972),
    [sym_yul_decimal_number] = ACTIONS(972),
    [sym_yul_hex_number] = ACTIONS(974),
    [anon_sym_true] = ACTIONS(972),
    [anon_sym_false] = ACTIONS(972),
    [anon_sym_let] = ACTIONS(972),
    [anon_sym_if] = ACTIONS(972),
    [anon_sym_switch] = ACTIONS(972),
    [anon_sym_default] = ACTIONS(972),
    [anon_sym_case] = ACTIONS(972),
    [anon_sym_function] = ACTIONS(972),
    [anon_sym_stop] = ACTIONS(972),
    [anon_sym_add] = ACTIONS(972),
    [anon_sym_sub] = ACTIONS(972),
    [anon_sym_mul] = ACTIONS(972),
    [anon_sym_div] = ACTIONS(972),
    [anon_sym_sdiv] = ACTIONS(972),
    [anon_sym_mod] = ACTIONS(972),
    [anon_sym_smod] = ACTIONS(972),
    [anon_sym_exp] = ACTIONS(972),
    [anon_sym_not] = ACTIONS(972),
    [anon_sym_lt] = ACTIONS(972),
    [anon_sym_gt] = ACTIONS(972),
    [anon_sym_slt] = ACTIONS(972),
    [anon_sym_sgt] = ACTIONS(972),
    [anon_sym_eq] = ACTIONS(972),
    [anon_sym_iszero] = ACTIONS(972),
    [anon_sym_and] = ACTIONS(972),
    [anon_sym_or] = ACTIONS(972),
    [anon_sym_xor] = ACTIONS(972),
    [anon_sym_byte] = ACTIONS(972),
    [anon_sym_shl] = ACTIONS(972),
    [anon_sym_shr] = ACTIONS(972),
    [anon_sym_sar] = ACTIONS(972),
    [anon_sym_addmod] = ACTIONS(972),
    [anon_sym_mulmod] = ACTIONS(972),
    [anon_sym_signextend] = ACTIONS(972),
    [anon_sym_keccak256] = ACTIONS(972),
    [anon_sym_pop] = ACTIONS(972),
    [anon_sym_mload] = ACTIONS(972),
    [anon_sym_mstore] = ACTIONS(972),
    [anon_sym_mstore8] = ACTIONS(972),
    [anon_sym_sload] = ACTIONS(972),
    [anon_sym_sstore] = ACTIONS(972),
    [anon_sym_msize] = ACTIONS(972),
    [anon_sym_gas] = ACTIONS(972),
    [anon_sym_address] = ACTIONS(972),
    [anon_sym_balance] = ACTIONS(972),
    [anon_sym_selfbalance] = ACTIONS(972),
    [anon_sym_caller] = ACTIONS(972),
    [anon_sym_callvalue] = ACTIONS(972),
    [anon_sym_calldataload] = ACTIONS(972),
    [anon_sym_calldatasize] = ACTIONS(972),
    [anon_sym_calldatacopy] = ACTIONS(972),
    [anon_sym_extcodesize] = ACTIONS(972),
    [anon_sym_extcodecopy] = ACTIONS(972),
    [anon_sym_returndatasize] = ACTIONS(972),
    [anon_sym_returndatacopy] = ACTIONS(972),
    [anon_sym_extcodehash] = ACTIONS(972),
    [anon_sym_create] = ACTIONS(972),
    [anon_sym_create2] = ACTIONS(972),
    [anon_sym_call] = ACTIONS(972),
    [anon_sym_callcode] = ACTIONS(972),
    [anon_sym_delegatecall] = ACTIONS(972),
    [anon_sym_staticcall] = ACTIONS(972),
    [anon_sym_return] = ACTIONS(972),
    [anon_sym_revert] = ACTIONS(972),
    [anon_sym_selfdestruct] = ACTIONS(972),
    [anon_sym_invalid] = ACTIONS(972),
    [anon_sym_log0] = ACTIONS(972),
    [anon_sym_log1] = ACTIONS(972),
    [anon_sym_log2] = ACTIONS(972),
    [anon_sym_log3] = ACTIONS(972),
    [anon_sym_log4] = ACTIONS(972),
    [anon_sym_chainid] = ACTIONS(972),
    [anon_sym_origin] = ACTIONS(972),
    [anon_sym_gasprice] = ACTIONS(972),
    [anon_sym_blockhash] = ACTIONS(972),
    [anon_sym_coinbase] = ACTIONS(972),
    [anon_sym_timestamp] = ACTIONS(972),
    [anon_sym_number] = ACTIONS(972),
    [anon_sym_difficulty] = ACTIONS(972),
    [anon_sym_gaslimit] = ACTIONS(972),
    [anon_sym_DQUOTE] = ACTIONS(974),
    [anon_sym_SQUOTE] = ACTIONS(974),
    [sym_comment] = ACTIONS(3),
  },
  [233] = {
    [sym_identifier] = ACTIONS(976),
    [anon_sym_LBRACE] = ACTIONS(978),
    [anon_sym_COMMA] = ACTIONS(978),
    [anon_sym_RBRACE] = ACTIONS(978),
    [anon_sym_RPAREN] = ACTIONS(978),
    [anon_sym_for] = ACTIONS(976),
    [sym_yul_leave] = ACTIONS(976),
    [anon_sym_break] = ACTIONS(976),
    [anon_sym_continue] = ACTIONS(976),
    [sym_yul_decimal_number] = ACTIONS(976),
    [sym_yul_hex_number] = ACTIONS(978),
    [anon_sym_true] = ACTIONS(976),
    [anon_sym_false] = ACTIONS(976),
    [anon_sym_let] = ACTIONS(976),
    [anon_sym_if] = ACTIONS(976),
    [anon_sym_switch] = ACTIONS(976),
    [anon_sym_default] = ACTIONS(976),
    [anon_sym_case] = ACTIONS(976),
    [anon_sym_function] = ACTIONS(976),
    [anon_sym_stop] = ACTIONS(976),
    [anon_sym_add] = ACTIONS(976),
    [anon_sym_sub] = ACTIONS(976),
    [anon_sym_mul] = ACTIONS(976),
    [anon_sym_div] = ACTIONS(976),
    [anon_sym_sdiv] = ACTIONS(976),
    [anon_sym_mod] = ACTIONS(976),
    [anon_sym_smod] = ACTIONS(976),
    [anon_sym_exp] = ACTIONS(976),
    [anon_sym_not] = ACTIONS(976),
    [anon_sym_lt] = ACTIONS(976),
    [anon_sym_gt] = ACTIONS(976),
    [anon_sym_slt] = ACTIONS(976),
    [anon_sym_sgt] = ACTIONS(976),
    [anon_sym_eq] = ACTIONS(976),
    [anon_sym_iszero] = ACTIONS(976),
    [anon_sym_and] = ACTIONS(976),
    [anon_sym_or] = ACTIONS(976),
    [anon_sym_xor] = ACTIONS(976),
    [anon_sym_byte] = ACTIONS(976),
    [anon_sym_shl] = ACTIONS(976),
    [anon_sym_shr] = ACTIONS(976),
    [anon_sym_sar] = ACTIONS(976),
    [anon_sym_addmod] = ACTIONS(976),
    [anon_sym_mulmod] = ACTIONS(976),
    [anon_sym_signextend] = ACTIONS(976),
    [anon_sym_keccak256] = ACTIONS(976),
    [anon_sym_pop] = ACTIONS(976),
    [anon_sym_mload] = ACTIONS(976),
    [anon_sym_mstore] = ACTIONS(976),
    [anon_sym_mstore8] = ACTIONS(976),
    [anon_sym_sload] = ACTIONS(976),
    [anon_sym_sstore] = ACTIONS(976),
    [anon_sym_msize] = ACTIONS(976),
    [anon_sym_gas] = ACTIONS(976),
    [anon_sym_address] = ACTIONS(976),
    [anon_sym_balance] = ACTIONS(976),
    [anon_sym_selfbalance] = ACTIONS(976),
    [anon_sym_caller] = ACTIONS(976),
    [anon_sym_callvalue] = ACTIONS(976),
    [anon_sym_calldataload] = ACTIONS(976),
    [anon_sym_calldatasize] = ACTIONS(976),
    [anon_sym_calldatacopy] = ACTIONS(976),
    [anon_sym_extcodesize] = ACTIONS(976),
    [anon_sym_extcodecopy] = ACTIONS(976),
    [anon_sym_returndatasize] = ACTIONS(976),
    [anon_sym_returndatacopy] = ACTIONS(976),
    [anon_sym_extcodehash] = ACTIONS(976),
    [anon_sym_create] = ACTIONS(976),
    [anon_sym_create2] = ACTIONS(976),
    [anon_sym_call] = ACTIONS(976),
    [anon_sym_callcode] = ACTIONS(976),
    [anon_sym_delegatecall] = ACTIONS(976),
    [anon_sym_staticcall] = ACTIONS(976),
    [anon_sym_return] = ACTIONS(976),
    [anon_sym_revert] = ACTIONS(976),
    [anon_sym_selfdestruct] = ACTIONS(976),
    [anon_sym_invalid] = ACTIONS(976),
    [anon_sym_log0] = ACTIONS(976),
    [anon_sym_log1] = ACTIONS(976),
    [anon_sym_log2] = ACTIONS(976),
    [anon_sym_log3] = ACTIONS(976),
    [anon_sym_log4] = ACTIONS(976),
    [anon_sym_chainid] = ACTIONS(976),
    [anon_sym_origin] = ACTIONS(976),
    [anon_sym_gasprice] = ACTIONS(976),
    [anon_sym_blockhash] = ACTIONS(976),
    [anon_sym_coinbase] = ACTIONS(976),
    [anon_sym_timestamp] = ACTIONS(976),
    [anon_sym_number] = ACTIONS(976),
    [anon_sym_difficulty] = ACTIONS(976),
    [anon_sym_gaslimit] = ACTIONS(976),
    [anon_sym_DQUOTE] = ACTIONS(978),
    [anon_sym_SQUOTE] = ACTIONS(978),
    [sym_comment] = ACTIONS(3),
  },
  [234] = {
    [aux_sym_yul_assignment_repeat1] = STATE(234),
    [sym_identifier] = ACTIONS(980),
    [anon_sym_LBRACE] = ACTIONS(982),
    [anon_sym_COMMA] = ACTIONS(984),
    [anon_sym_RBRACE] = ACTIONS(982),
    [anon_sym_for] = ACTIONS(980),
    [anon_sym_COLON] = ACTIONS(980),
    [sym_yul_leave] = ACTIONS(980),
    [anon_sym_break] = ACTIONS(980),
    [anon_sym_continue] = ACTIONS(980),
    [sym_yul_decimal_number] = ACTIONS(980),
    [sym_yul_hex_number] = ACTIONS(982),
    [anon_sym_true] = ACTIONS(980),
    [anon_sym_false] = ACTIONS(980),
    [anon_sym_let] = ACTIONS(980),
    [anon_sym_COLON_EQ] = ACTIONS(982),
    [anon_sym_if] = ACTIONS(980),
    [anon_sym_switch] = ACTIONS(980),
    [anon_sym_function] = ACTIONS(980),
    [anon_sym_stop] = ACTIONS(980),
    [anon_sym_add] = ACTIONS(980),
    [anon_sym_sub] = ACTIONS(980),
    [anon_sym_mul] = ACTIONS(980),
    [anon_sym_div] = ACTIONS(980),
    [anon_sym_sdiv] = ACTIONS(980),
    [anon_sym_mod] = ACTIONS(980),
    [anon_sym_smod] = ACTIONS(980),
    [anon_sym_exp] = ACTIONS(980),
    [anon_sym_not] = ACTIONS(980),
    [anon_sym_lt] = ACTIONS(980),
    [anon_sym_gt] = ACTIONS(980),
    [anon_sym_slt] = ACTIONS(980),
    [anon_sym_sgt] = ACTIONS(980),
    [anon_sym_eq] = ACTIONS(980),
    [anon_sym_iszero] = ACTIONS(980),
    [anon_sym_and] = ACTIONS(980),
    [anon_sym_or] = ACTIONS(980),
    [anon_sym_xor] = ACTIONS(980),
    [anon_sym_byte] = ACTIONS(980),
    [anon_sym_shl] = ACTIONS(980),
    [anon_sym_shr] = ACTIONS(980),
    [anon_sym_sar] = ACTIONS(980),
    [anon_sym_addmod] = ACTIONS(980),
    [anon_sym_mulmod] = ACTIONS(980),
    [anon_sym_signextend] = ACTIONS(980),
    [anon_sym_keccak256] = ACTIONS(980),
    [anon_sym_pop] = ACTIONS(980),
    [anon_sym_mload] = ACTIONS(980),
    [anon_sym_mstore] = ACTIONS(980),
    [anon_sym_mstore8] = ACTIONS(980),
    [anon_sym_sload] = ACTIONS(980),
    [anon_sym_sstore] = ACTIONS(980),
    [anon_sym_msize] = ACTIONS(980),
    [anon_sym_gas] = ACTIONS(980),
    [anon_sym_address] = ACTIONS(980),
    [anon_sym_balance] = ACTIONS(980),
    [anon_sym_selfbalance] = ACTIONS(980),
    [anon_sym_caller] = ACTIONS(980),
    [anon_sym_callvalue] = ACTIONS(980),
    [anon_sym_calldataload] = ACTIONS(980),
    [anon_sym_calldatasize] = ACTIONS(980),
    [anon_sym_calldatacopy] = ACTIONS(980),
    [anon_sym_extcodesize] = ACTIONS(980),
    [anon_sym_extcodecopy] = ACTIONS(980),
    [anon_sym_returndatasize] = ACTIONS(980),
    [anon_sym_returndatacopy] = ACTIONS(980),
    [anon_sym_extcodehash] = ACTIONS(980),
    [anon_sym_create] = ACTIONS(980),
    [anon_sym_create2] = ACTIONS(980),
    [anon_sym_call] = ACTIONS(980),
    [anon_sym_callcode] = ACTIONS(980),
    [anon_sym_delegatecall] = ACTIONS(980),
    [anon_sym_staticcall] = ACTIONS(980),
    [anon_sym_return] = ACTIONS(980),
    [anon_sym_revert] = ACTIONS(980),
    [anon_sym_selfdestruct] = ACTIONS(980),
    [anon_sym_invalid] = ACTIONS(980),
    [anon_sym_log0] = ACTIONS(980),
    [anon_sym_log1] = ACTIONS(980),
    [anon_sym_log2] = ACTIONS(980),
    [anon_sym_log3] = ACTIONS(980),
    [anon_sym_log4] = ACTIONS(980),
    [anon_sym_chainid] = ACTIONS(980),
    [anon_sym_origin] = ACTIONS(980),
    [anon_sym_gasprice] = ACTIONS(980),
    [anon_sym_blockhash] = ACTIONS(980),
    [anon_sym_coinbase] = ACTIONS(980),
    [anon_sym_timestamp] = ACTIONS(980),
    [anon_sym_number] = ACTIONS(980),
    [anon_sym_difficulty] = ACTIONS(980),
    [anon_sym_gaslimit] = ACTIONS(980),
    [anon_sym_DQUOTE] = ACTIONS(982),
    [anon_sym_SQUOTE] = ACTIONS(982),
    [sym_comment] = ACTIONS(3),
  },
  [235] = {
    [sym_identifier] = ACTIONS(987),
    [anon_sym_LBRACE] = ACTIONS(989),
    [anon_sym_COMMA] = ACTIONS(989),
    [anon_sym_RBRACE] = ACTIONS(989),
    [anon_sym_RPAREN] = ACTIONS(989),
    [anon_sym_for] = ACTIONS(987),
    [sym_yul_leave] = ACTIONS(987),
    [anon_sym_break] = ACTIONS(987),
    [anon_sym_continue] = ACTIONS(987),
    [sym_yul_decimal_number] = ACTIONS(987),
    [sym_yul_hex_number] = ACTIONS(989),
    [anon_sym_true] = ACTIONS(987),
    [anon_sym_false] = ACTIONS(987),
    [anon_sym_let] = ACTIONS(987),
    [anon_sym_if] = ACTIONS(987),
    [anon_sym_switch] = ACTIONS(987),
    [anon_sym_default] = ACTIONS(987),
    [anon_sym_case] = ACTIONS(987),
    [anon_sym_function] = ACTIONS(987),
    [anon_sym_stop] = ACTIONS(987),
    [anon_sym_add] = ACTIONS(987),
    [anon_sym_sub] = ACTIONS(987),
    [anon_sym_mul] = ACTIONS(987),
    [anon_sym_div] = ACTIONS(987),
    [anon_sym_sdiv] = ACTIONS(987),
    [anon_sym_mod] = ACTIONS(987),
    [anon_sym_smod] = ACTIONS(987),
    [anon_sym_exp] = ACTIONS(987),
    [anon_sym_not] = ACTIONS(987),
    [anon_sym_lt] = ACTIONS(987),
    [anon_sym_gt] = ACTIONS(987),
    [anon_sym_slt] = ACTIONS(987),
    [anon_sym_sgt] = ACTIONS(987),
    [anon_sym_eq] = ACTIONS(987),
    [anon_sym_iszero] = ACTIONS(987),
    [anon_sym_and] = ACTIONS(987),
    [anon_sym_or] = ACTIONS(987),
    [anon_sym_xor] = ACTIONS(987),
    [anon_sym_byte] = ACTIONS(987),
    [anon_sym_shl] = ACTIONS(987),
    [anon_sym_shr] = ACTIONS(987),
    [anon_sym_sar] = ACTIONS(987),
    [anon_sym_addmod] = ACTIONS(987),
    [anon_sym_mulmod] = ACTIONS(987),
    [anon_sym_signextend] = ACTIONS(987),
    [anon_sym_keccak256] = ACTIONS(987),
    [anon_sym_pop] = ACTIONS(987),
    [anon_sym_mload] = ACTIONS(987),
    [anon_sym_mstore] = ACTIONS(987),
    [anon_sym_mstore8] = ACTIONS(987),
    [anon_sym_sload] = ACTIONS(987),
    [anon_sym_sstore] = ACTIONS(987),
    [anon_sym_msize] = ACTIONS(987),
    [anon_sym_gas] = ACTIONS(987),
    [anon_sym_address] = ACTIONS(987),
    [anon_sym_balance] = ACTIONS(987),
    [anon_sym_selfbalance] = ACTIONS(987),
    [anon_sym_caller] = ACTIONS(987),
    [anon_sym_callvalue] = ACTIONS(987),
    [anon_sym_calldataload] = ACTIONS(987),
    [anon_sym_calldatasize] = ACTIONS(987),
    [anon_sym_calldatacopy] = ACTIONS(987),
    [anon_sym_extcodesize] = ACTIONS(987),
    [anon_sym_extcodecopy] = ACTIONS(987),
    [anon_sym_returndatasize] = ACTIONS(987),
    [anon_sym_returndatacopy] = ACTIONS(987),
    [anon_sym_extcodehash] = ACTIONS(987),
    [anon_sym_create] = ACTIONS(987),
    [anon_sym_create2] = ACTIONS(987),
    [anon_sym_call] = ACTIONS(987),
    [anon_sym_callcode] = ACTIONS(987),
    [anon_sym_delegatecall] = ACTIONS(987),
    [anon_sym_staticcall] = ACTIONS(987),
    [anon_sym_return] = ACTIONS(987),
    [anon_sym_revert] = ACTIONS(987),
    [anon_sym_selfdestruct] = ACTIONS(987),
    [anon_sym_invalid] = ACTIONS(987),
    [anon_sym_log0] = ACTIONS(987),
    [anon_sym_log1] = ACTIONS(987),
    [anon_sym_log2] = ACTIONS(987),
    [anon_sym_log3] = ACTIONS(987),
    [anon_sym_log4] = ACTIONS(987),
    [anon_sym_chainid] = ACTIONS(987),
    [anon_sym_origin] = ACTIONS(987),
    [anon_sym_gasprice] = ACTIONS(987),
    [anon_sym_blockhash] = ACTIONS(987),
    [anon_sym_coinbase] = ACTIONS(987),
    [anon_sym_timestamp] = ACTIONS(987),
    [anon_sym_number] = ACTIONS(987),
    [anon_sym_difficulty] = ACTIONS(987),
    [anon_sym_gaslimit] = ACTIONS(987),
    [anon_sym_DQUOTE] = ACTIONS(989),
    [anon_sym_SQUOTE] = ACTIONS(989),
    [sym_comment] = ACTIONS(3),
  },
  [236] = {
    [sym_identifier] = ACTIONS(991),
    [anon_sym_LBRACE] = ACTIONS(993),
    [anon_sym_COMMA] = ACTIONS(993),
    [anon_sym_RBRACE] = ACTIONS(993),
    [anon_sym_RPAREN] = ACTIONS(993),
    [anon_sym_for] = ACTIONS(991),
    [sym_yul_leave] = ACTIONS(991),
    [anon_sym_break] = ACTIONS(991),
    [anon_sym_continue] = ACTIONS(991),
    [sym_yul_decimal_number] = ACTIONS(991),
    [sym_yul_hex_number] = ACTIONS(993),
    [anon_sym_true] = ACTIONS(991),
    [anon_sym_false] = ACTIONS(991),
    [anon_sym_let] = ACTIONS(991),
    [anon_sym_if] = ACTIONS(991),
    [anon_sym_switch] = ACTIONS(991),
    [anon_sym_default] = ACTIONS(991),
    [anon_sym_case] = ACTIONS(991),
    [anon_sym_function] = ACTIONS(991),
    [anon_sym_stop] = ACTIONS(991),
    [anon_sym_add] = ACTIONS(991),
    [anon_sym_sub] = ACTIONS(991),
    [anon_sym_mul] = ACTIONS(991),
    [anon_sym_div] = ACTIONS(991),
    [anon_sym_sdiv] = ACTIONS(991),
    [anon_sym_mod] = ACTIONS(991),
    [anon_sym_smod] = ACTIONS(991),
    [anon_sym_exp] = ACTIONS(991),
    [anon_sym_not] = ACTIONS(991),
    [anon_sym_lt] = ACTIONS(991),
    [anon_sym_gt] = ACTIONS(991),
    [anon_sym_slt] = ACTIONS(991),
    [anon_sym_sgt] = ACTIONS(991),
    [anon_sym_eq] = ACTIONS(991),
    [anon_sym_iszero] = ACTIONS(991),
    [anon_sym_and] = ACTIONS(991),
    [anon_sym_or] = ACTIONS(991),
    [anon_sym_xor] = ACTIONS(991),
    [anon_sym_byte] = ACTIONS(991),
    [anon_sym_shl] = ACTIONS(991),
    [anon_sym_shr] = ACTIONS(991),
    [anon_sym_sar] = ACTIONS(991),
    [anon_sym_addmod] = ACTIONS(991),
    [anon_sym_mulmod] = ACTIONS(991),
    [anon_sym_signextend] = ACTIONS(991),
    [anon_sym_keccak256] = ACTIONS(991),
    [anon_sym_pop] = ACTIONS(991),
    [anon_sym_mload] = ACTIONS(991),
    [anon_sym_mstore] = ACTIONS(991),
    [anon_sym_mstore8] = ACTIONS(991),
    [anon_sym_sload] = ACTIONS(991),
    [anon_sym_sstore] = ACTIONS(991),
    [anon_sym_msize] = ACTIONS(991),
    [anon_sym_gas] = ACTIONS(991),
    [anon_sym_address] = ACTIONS(991),
    [anon_sym_balance] = ACTIONS(991),
    [anon_sym_selfbalance] = ACTIONS(991),
    [anon_sym_caller] = ACTIONS(991),
    [anon_sym_callvalue] = ACTIONS(991),
    [anon_sym_calldataload] = ACTIONS(991),
    [anon_sym_calldatasize] = ACTIONS(991),
    [anon_sym_calldatacopy] = ACTIONS(991),
    [anon_sym_extcodesize] = ACTIONS(991),
    [anon_sym_extcodecopy] = ACTIONS(991),
    [anon_sym_returndatasize] = ACTIONS(991),
    [anon_sym_returndatacopy] = ACTIONS(991),
    [anon_sym_extcodehash] = ACTIONS(991),
    [anon_sym_create] = ACTIONS(991),
    [anon_sym_create2] = ACTIONS(991),
    [anon_sym_call] = ACTIONS(991),
    [anon_sym_callcode] = ACTIONS(991),
    [anon_sym_delegatecall] = ACTIONS(991),
    [anon_sym_staticcall] = ACTIONS(991),
    [anon_sym_return] = ACTIONS(991),
    [anon_sym_revert] = ACTIONS(991),
    [anon_sym_selfdestruct] = ACTIONS(991),
    [anon_sym_invalid] = ACTIONS(991),
    [anon_sym_log0] = ACTIONS(991),
    [anon_sym_log1] = ACTIONS(991),
    [anon_sym_log2] = ACTIONS(991),
    [anon_sym_log3] = ACTIONS(991),
    [anon_sym_log4] = ACTIONS(991),
    [anon_sym_chainid] = ACTIONS(991),
    [anon_sym_origin] = ACTIONS(991),
    [anon_sym_gasprice] = ACTIONS(991),
    [anon_sym_blockhash] = ACTIONS(991),
    [anon_sym_coinbase] = ACTIONS(991),
    [anon_sym_timestamp] = ACTIONS(991),
    [anon_sym_number] = ACTIONS(991),
    [anon_sym_difficulty] = ACTIONS(991),
    [anon_sym_gaslimit] = ACTIONS(991),
    [anon_sym_DQUOTE] = ACTIONS(993),
    [anon_sym_SQUOTE] = ACTIONS(993),
    [sym_comment] = ACTIONS(3),
  },
  [237] = {
    [sym_identifier] = ACTIONS(995),
    [anon_sym_LBRACE] = ACTIONS(997),
    [anon_sym_COMMA] = ACTIONS(997),
    [anon_sym_RBRACE] = ACTIONS(997),
    [anon_sym_RPAREN] = ACTIONS(997),
    [anon_sym_for] = ACTIONS(995),
    [sym_yul_leave] = ACTIONS(995),
    [anon_sym_break] = ACTIONS(995),
    [anon_sym_continue] = ACTIONS(995),
    [sym_yul_decimal_number] = ACTIONS(995),
    [sym_yul_hex_number] = ACTIONS(997),
    [anon_sym_true] = ACTIONS(995),
    [anon_sym_false] = ACTIONS(995),
    [anon_sym_let] = ACTIONS(995),
    [anon_sym_if] = ACTIONS(995),
    [anon_sym_switch] = ACTIONS(995),
    [anon_sym_default] = ACTIONS(995),
    [anon_sym_case] = ACTIONS(995),
    [anon_sym_function] = ACTIONS(995),
    [anon_sym_stop] = ACTIONS(995),
    [anon_sym_add] = ACTIONS(995),
    [anon_sym_sub] = ACTIONS(995),
    [anon_sym_mul] = ACTIONS(995),
    [anon_sym_div] = ACTIONS(995),
    [anon_sym_sdiv] = ACTIONS(995),
    [anon_sym_mod] = ACTIONS(995),
    [anon_sym_smod] = ACTIONS(995),
    [anon_sym_exp] = ACTIONS(995),
    [anon_sym_not] = ACTIONS(995),
    [anon_sym_lt] = ACTIONS(995),
    [anon_sym_gt] = ACTIONS(995),
    [anon_sym_slt] = ACTIONS(995),
    [anon_sym_sgt] = ACTIONS(995),
    [anon_sym_eq] = ACTIONS(995),
    [anon_sym_iszero] = ACTIONS(995),
    [anon_sym_and] = ACTIONS(995),
    [anon_sym_or] = ACTIONS(995),
    [anon_sym_xor] = ACTIONS(995),
    [anon_sym_byte] = ACTIONS(995),
    [anon_sym_shl] = ACTIONS(995),
    [anon_sym_shr] = ACTIONS(995),
    [anon_sym_sar] = ACTIONS(995),
    [anon_sym_addmod] = ACTIONS(995),
    [anon_sym_mulmod] = ACTIONS(995),
    [anon_sym_signextend] = ACTIONS(995),
    [anon_sym_keccak256] = ACTIONS(995),
    [anon_sym_pop] = ACTIONS(995),
    [anon_sym_mload] = ACTIONS(995),
    [anon_sym_mstore] = ACTIONS(995),
    [anon_sym_mstore8] = ACTIONS(995),
    [anon_sym_sload] = ACTIONS(995),
    [anon_sym_sstore] = ACTIONS(995),
    [anon_sym_msize] = ACTIONS(995),
    [anon_sym_gas] = ACTIONS(995),
    [anon_sym_address] = ACTIONS(995),
    [anon_sym_balance] = ACTIONS(995),
    [anon_sym_selfbalance] = ACTIONS(995),
    [anon_sym_caller] = ACTIONS(995),
    [anon_sym_callvalue] = ACTIONS(995),
    [anon_sym_calldataload] = ACTIONS(995),
    [anon_sym_calldatasize] = ACTIONS(995),
    [anon_sym_calldatacopy] = ACTIONS(995),
    [anon_sym_extcodesize] = ACTIONS(995),
    [anon_sym_extcodecopy] = ACTIONS(995),
    [anon_sym_returndatasize] = ACTIONS(995),
    [anon_sym_returndatacopy] = ACTIONS(995),
    [anon_sym_extcodehash] = ACTIONS(995),
    [anon_sym_create] = ACTIONS(995),
    [anon_sym_create2] = ACTIONS(995),
    [anon_sym_call] = ACTIONS(995),
    [anon_sym_callcode] = ACTIONS(995),
    [anon_sym_delegatecall] = ACTIONS(995),
    [anon_sym_staticcall] = ACTIONS(995),
    [anon_sym_return] = ACTIONS(995),
    [anon_sym_revert] = ACTIONS(995),
    [anon_sym_selfdestruct] = ACTIONS(995),
    [anon_sym_invalid] = ACTIONS(995),
    [anon_sym_log0] = ACTIONS(995),
    [anon_sym_log1] = ACTIONS(995),
    [anon_sym_log2] = ACTIONS(995),
    [anon_sym_log3] = ACTIONS(995),
    [anon_sym_log4] = ACTIONS(995),
    [anon_sym_chainid] = ACTIONS(995),
    [anon_sym_origin] = ACTIONS(995),
    [anon_sym_gasprice] = ACTIONS(995),
    [anon_sym_blockhash] = ACTIONS(995),
    [anon_sym_coinbase] = ACTIONS(995),
    [anon_sym_timestamp] = ACTIONS(995),
    [anon_sym_number] = ACTIONS(995),
    [anon_sym_difficulty] = ACTIONS(995),
    [anon_sym_gaslimit] = ACTIONS(995),
    [anon_sym_DQUOTE] = ACTIONS(997),
    [anon_sym_SQUOTE] = ACTIONS(997),
    [sym_comment] = ACTIONS(3),
  },
  [238] = {
    [aux_sym_yul_variable_declaration_repeat1] = STATE(238),
    [sym_identifier] = ACTIONS(999),
    [anon_sym_LBRACE] = ACTIONS(1001),
    [anon_sym_COMMA] = ACTIONS(1003),
    [anon_sym_RBRACE] = ACTIONS(1001),
    [anon_sym_RPAREN] = ACTIONS(1001),
    [anon_sym_for] = ACTIONS(999),
    [sym_yul_leave] = ACTIONS(999),
    [anon_sym_break] = ACTIONS(999),
    [anon_sym_continue] = ACTIONS(999),
    [sym_yul_decimal_number] = ACTIONS(999),
    [sym_yul_hex_number] = ACTIONS(1001),
    [anon_sym_true] = ACTIONS(999),
    [anon_sym_false] = ACTIONS(999),
    [anon_sym_let] = ACTIONS(999),
    [anon_sym_COLON_EQ] = ACTIONS(1001),
    [anon_sym_if] = ACTIONS(999),
    [anon_sym_switch] = ACTIONS(999),
    [anon_sym_function] = ACTIONS(999),
    [anon_sym_stop] = ACTIONS(999),
    [anon_sym_add] = ACTIONS(999),
    [anon_sym_sub] = ACTIONS(999),
    [anon_sym_mul] = ACTIONS(999),
    [anon_sym_div] = ACTIONS(999),
    [anon_sym_sdiv] = ACTIONS(999),
    [anon_sym_mod] = ACTIONS(999),
    [anon_sym_smod] = ACTIONS(999),
    [anon_sym_exp] = ACTIONS(999),
    [anon_sym_not] = ACTIONS(999),
    [anon_sym_lt] = ACTIONS(999),
    [anon_sym_gt] = ACTIONS(999),
    [anon_sym_slt] = ACTIONS(999),
    [anon_sym_sgt] = ACTIONS(999),
    [anon_sym_eq] = ACTIONS(999),
    [anon_sym_iszero] = ACTIONS(999),
    [anon_sym_and] = ACTIONS(999),
    [anon_sym_or] = ACTIONS(999),
    [anon_sym_xor] = ACTIONS(999),
    [anon_sym_byte] = ACTIONS(999),
    [anon_sym_shl] = ACTIONS(999),
    [anon_sym_shr] = ACTIONS(999),
    [anon_sym_sar] = ACTIONS(999),
    [anon_sym_addmod] = ACTIONS(999),
    [anon_sym_mulmod] = ACTIONS(999),
    [anon_sym_signextend] = ACTIONS(999),
    [anon_sym_keccak256] = ACTIONS(999),
    [anon_sym_pop] = ACTIONS(999),
    [anon_sym_mload] = ACTIONS(999),
    [anon_sym_mstore] = ACTIONS(999),
    [anon_sym_mstore8] = ACTIONS(999),
    [anon_sym_sload] = ACTIONS(999),
    [anon_sym_sstore] = ACTIONS(999),
    [anon_sym_msize] = ACTIONS(999),
    [anon_sym_gas] = ACTIONS(999),
    [anon_sym_address] = ACTIONS(999),
    [anon_sym_balance] = ACTIONS(999),
    [anon_sym_selfbalance] = ACTIONS(999),
    [anon_sym_caller] = ACTIONS(999),
    [anon_sym_callvalue] = ACTIONS(999),
    [anon_sym_calldataload] = ACTIONS(999),
    [anon_sym_calldatasize] = ACTIONS(999),
    [anon_sym_calldatacopy] = ACTIONS(999),
    [anon_sym_extcodesize] = ACTIONS(999),
    [anon_sym_extcodecopy] = ACTIONS(999),
    [anon_sym_returndatasize] = ACTIONS(999),
    [anon_sym_returndatacopy] = ACTIONS(999),
    [anon_sym_extcodehash] = ACTIONS(999),
    [anon_sym_create] = ACTIONS(999),
    [anon_sym_create2] = ACTIONS(999),
    [anon_sym_call] = ACTIONS(999),
    [anon_sym_callcode] = ACTIONS(999),
    [anon_sym_delegatecall] = ACTIONS(999),
    [anon_sym_staticcall] = ACTIONS(999),
    [anon_sym_return] = ACTIONS(999),
    [anon_sym_revert] = ACTIONS(999),
    [anon_sym_selfdestruct] = ACTIONS(999),
    [anon_sym_invalid] = ACTIONS(999),
    [anon_sym_log0] = ACTIONS(999),
    [anon_sym_log1] = ACTIONS(999),
    [anon_sym_log2] = ACTIONS(999),
    [anon_sym_log3] = ACTIONS(999),
    [anon_sym_log4] = ACTIONS(999),
    [anon_sym_chainid] = ACTIONS(999),
    [anon_sym_origin] = ACTIONS(999),
    [anon_sym_gasprice] = ACTIONS(999),
    [anon_sym_blockhash] = ACTIONS(999),
    [anon_sym_coinbase] = ACTIONS(999),
    [anon_sym_timestamp] = ACTIONS(999),
    [anon_sym_number] = ACTIONS(999),
    [anon_sym_difficulty] = ACTIONS(999),
    [anon_sym_gaslimit] = ACTIONS(999),
    [anon_sym_DQUOTE] = ACTIONS(1001),
    [anon_sym_SQUOTE] = ACTIONS(1001),
    [sym_comment] = ACTIONS(3),
  },
  [239] = {
    [aux_sym_yul_variable_declaration_repeat1] = STATE(241),
    [sym_identifier] = ACTIONS(1006),
    [anon_sym_LBRACE] = ACTIONS(1008),
    [anon_sym_COMMA] = ACTIONS(1010),
    [anon_sym_RBRACE] = ACTIONS(1008),
    [anon_sym_for] = ACTIONS(1006),
    [sym_yul_leave] = ACTIONS(1006),
    [anon_sym_break] = ACTIONS(1006),
    [anon_sym_continue] = ACTIONS(1006),
    [sym_yul_decimal_number] = ACTIONS(1006),
    [sym_yul_hex_number] = ACTIONS(1008),
    [anon_sym_true] = ACTIONS(1006),
    [anon_sym_false] = ACTIONS(1006),
    [anon_sym_let] = ACTIONS(1006),
    [anon_sym_COLON_EQ] = ACTIONS(1012),
    [anon_sym_if] = ACTIONS(1006),
    [anon_sym_switch] = ACTIONS(1006),
    [anon_sym_function] = ACTIONS(1006),
    [anon_sym_stop] = ACTIONS(1006),
    [anon_sym_add] = ACTIONS(1006),
    [anon_sym_sub] = ACTIONS(1006),
    [anon_sym_mul] = ACTIONS(1006),
    [anon_sym_div] = ACTIONS(1006),
    [anon_sym_sdiv] = ACTIONS(1006),
    [anon_sym_mod] = ACTIONS(1006),
    [anon_sym_smod] = ACTIONS(1006),
    [anon_sym_exp] = ACTIONS(1006),
    [anon_sym_not] = ACTIONS(1006),
    [anon_sym_lt] = ACTIONS(1006),
    [anon_sym_gt] = ACTIONS(1006),
    [anon_sym_slt] = ACTIONS(1006),
    [anon_sym_sgt] = ACTIONS(1006),
    [anon_sym_eq] = ACTIONS(1006),
    [anon_sym_iszero] = ACTIONS(1006),
    [anon_sym_and] = ACTIONS(1006),
    [anon_sym_or] = ACTIONS(1006),
    [anon_sym_xor] = ACTIONS(1006),
    [anon_sym_byte] = ACTIONS(1006),
    [anon_sym_shl] = ACTIONS(1006),
    [anon_sym_shr] = ACTIONS(1006),
    [anon_sym_sar] = ACTIONS(1006),
    [anon_sym_addmod] = ACTIONS(1006),
    [anon_sym_mulmod] = ACTIONS(1006),
    [anon_sym_signextend] = ACTIONS(1006),
    [anon_sym_keccak256] = ACTIONS(1006),
    [anon_sym_pop] = ACTIONS(1006),
    [anon_sym_mload] = ACTIONS(1006),
    [anon_sym_mstore] = ACTIONS(1006),
    [anon_sym_mstore8] = ACTIONS(1006),
    [anon_sym_sload] = ACTIONS(1006),
    [anon_sym_sstore] = ACTIONS(1006),
    [anon_sym_msize] = ACTIONS(1006),
    [anon_sym_gas] = ACTIONS(1006),
    [anon_sym_address] = ACTIONS(1006),
    [anon_sym_balance] = ACTIONS(1006),
    [anon_sym_selfbalance] = ACTIONS(1006),
    [anon_sym_caller] = ACTIONS(1006),
    [anon_sym_callvalue] = ACTIONS(1006),
    [anon_sym_calldataload] = ACTIONS(1006),
    [anon_sym_calldatasize] = ACTIONS(1006),
    [anon_sym_calldatacopy] = ACTIONS(1006),
    [anon_sym_extcodesize] = ACTIONS(1006),
    [anon_sym_extcodecopy] = ACTIONS(1006),
    [anon_sym_returndatasize] = ACTIONS(1006),
    [anon_sym_returndatacopy] = ACTIONS(1006),
    [anon_sym_extcodehash] = ACTIONS(1006),
    [anon_sym_create] = ACTIONS(1006),
    [anon_sym_create2] = ACTIONS(1006),
    [anon_sym_call] = ACTIONS(1006),
    [anon_sym_callcode] = ACTIONS(1006),
    [anon_sym_delegatecall] = ACTIONS(1006),
    [anon_sym_staticcall] = ACTIONS(1006),
    [anon_sym_return] = ACTIONS(1006),
    [anon_sym_revert] = ACTIONS(1006),
    [anon_sym_selfdestruct] = ACTIONS(1006),
    [anon_sym_invalid] = ACTIONS(1006),
    [anon_sym_log0] = ACTIONS(1006),
    [anon_sym_log1] = ACTIONS(1006),
    [anon_sym_log2] = ACTIONS(1006),
    [anon_sym_log3] = ACTIONS(1006),
    [anon_sym_log4] = ACTIONS(1006),
    [anon_sym_chainid] = ACTIONS(1006),
    [anon_sym_origin] = ACTIONS(1006),
    [anon_sym_gasprice] = ACTIONS(1006),
    [anon_sym_blockhash] = ACTIONS(1006),
    [anon_sym_coinbase] = ACTIONS(1006),
    [anon_sym_timestamp] = ACTIONS(1006),
    [anon_sym_number] = ACTIONS(1006),
    [anon_sym_difficulty] = ACTIONS(1006),
    [anon_sym_gaslimit] = ACTIONS(1006),
    [anon_sym_DQUOTE] = ACTIONS(1008),
    [anon_sym_SQUOTE] = ACTIONS(1008),
    [sym_comment] = ACTIONS(3),
  },
  [240] = {
    [sym_identifier] = ACTIONS(980),
    [anon_sym_LBRACE] = ACTIONS(982),
    [anon_sym_COMMA] = ACTIONS(982),
    [anon_sym_RBRACE] = ACTIONS(982),
    [anon_sym_for] = ACTIONS(980),
    [anon_sym_COLON] = ACTIONS(980),
    [sym_yul_leave] = ACTIONS(980),
    [anon_sym_break] = ACTIONS(980),
    [anon_sym_continue] = ACTIONS(980),
    [sym_yul_decimal_number] = ACTIONS(980),
    [sym_yul_hex_number] = ACTIONS(982),
    [anon_sym_true] = ACTIONS(980),
    [anon_sym_false] = ACTIONS(980),
    [anon_sym_let] = ACTIONS(980),
    [anon_sym_COLON_EQ] = ACTIONS(982),
    [anon_sym_if] = ACTIONS(980),
    [anon_sym_switch] = ACTIONS(980),
    [anon_sym_function] = ACTIONS(980),
    [anon_sym_stop] = ACTIONS(980),
    [anon_sym_add] = ACTIONS(980),
    [anon_sym_sub] = ACTIONS(980),
    [anon_sym_mul] = ACTIONS(980),
    [anon_sym_div] = ACTIONS(980),
    [anon_sym_sdiv] = ACTIONS(980),
    [anon_sym_mod] = ACTIONS(980),
    [anon_sym_smod] = ACTIONS(980),
    [anon_sym_exp] = ACTIONS(980),
    [anon_sym_not] = ACTIONS(980),
    [anon_sym_lt] = ACTIONS(980),
    [anon_sym_gt] = ACTIONS(980),
    [anon_sym_slt] = ACTIONS(980),
    [anon_sym_sgt] = ACTIONS(980),
    [anon_sym_eq] = ACTIONS(980),
    [anon_sym_iszero] = ACTIONS(980),
    [anon_sym_and] = ACTIONS(980),
    [anon_sym_or] = ACTIONS(980),
    [anon_sym_xor] = ACTIONS(980),
    [anon_sym_byte] = ACTIONS(980),
    [anon_sym_shl] = ACTIONS(980),
    [anon_sym_shr] = ACTIONS(980),
    [anon_sym_sar] = ACTIONS(980),
    [anon_sym_addmod] = ACTIONS(980),
    [anon_sym_mulmod] = ACTIONS(980),
    [anon_sym_signextend] = ACTIONS(980),
    [anon_sym_keccak256] = ACTIONS(980),
    [anon_sym_pop] = ACTIONS(980),
    [anon_sym_mload] = ACTIONS(980),
    [anon_sym_mstore] = ACTIONS(980),
    [anon_sym_mstore8] = ACTIONS(980),
    [anon_sym_sload] = ACTIONS(980),
    [anon_sym_sstore] = ACTIONS(980),
    [anon_sym_msize] = ACTIONS(980),
    [anon_sym_gas] = ACTIONS(980),
    [anon_sym_address] = ACTIONS(980),
    [anon_sym_balance] = ACTIONS(980),
    [anon_sym_selfbalance] = ACTIONS(980),
    [anon_sym_caller] = ACTIONS(980),
    [anon_sym_callvalue] = ACTIONS(980),
    [anon_sym_calldataload] = ACTIONS(980),
    [anon_sym_calldatasize] = ACTIONS(980),
    [anon_sym_calldatacopy] = ACTIONS(980),
    [anon_sym_extcodesize] = ACTIONS(980),
    [anon_sym_extcodecopy] = ACTIONS(980),
    [anon_sym_returndatasize] = ACTIONS(980),
    [anon_sym_returndatacopy] = ACTIONS(980),
    [anon_sym_extcodehash] = ACTIONS(980),
    [anon_sym_create] = ACTIONS(980),
    [anon_sym_create2] = ACTIONS(980),
    [anon_sym_call] = ACTIONS(980),
    [anon_sym_callcode] = ACTIONS(980),
    [anon_sym_delegatecall] = ACTIONS(980),
    [anon_sym_staticcall] = ACTIONS(980),
    [anon_sym_return] = ACTIONS(980),
    [anon_sym_revert] = ACTIONS(980),
    [anon_sym_selfdestruct] = ACTIONS(980),
    [anon_sym_invalid] = ACTIONS(980),
    [anon_sym_log0] = ACTIONS(980),
    [anon_sym_log1] = ACTIONS(980),
    [anon_sym_log2] = ACTIONS(980),
    [anon_sym_log3] = ACTIONS(980),
    [anon_sym_log4] = ACTIONS(980),
    [anon_sym_chainid] = ACTIONS(980),
    [anon_sym_origin] = ACTIONS(980),
    [anon_sym_gasprice] = ACTIONS(980),
    [anon_sym_blockhash] = ACTIONS(980),
    [anon_sym_coinbase] = ACTIONS(980),
    [anon_sym_timestamp] = ACTIONS(980),
    [anon_sym_number] = ACTIONS(980),
    [anon_sym_difficulty] = ACTIONS(980),
    [anon_sym_gaslimit] = ACTIONS(980),
    [anon_sym_DQUOTE] = ACTIONS(982),
    [anon_sym_SQUOTE] = ACTIONS(982),
    [sym_comment] = ACTIONS(3),
  },
  [241] = {
    [aux_sym_yul_variable_declaration_repeat1] = STATE(238),
    [sym_identifier] = ACTIONS(1014),
    [anon_sym_LBRACE] = ACTIONS(1016),
    [anon_sym_COMMA] = ACTIONS(1018),
    [anon_sym_RBRACE] = ACTIONS(1016),
    [anon_sym_for] = ACTIONS(1014),
    [sym_yul_leave] = ACTIONS(1014),
    [anon_sym_break] = ACTIONS(1014),
    [anon_sym_continue] = ACTIONS(1014),
    [sym_yul_decimal_number] = ACTIONS(1014),
    [sym_yul_hex_number] = ACTIONS(1016),
    [anon_sym_true] = ACTIONS(1014),
    [anon_sym_false] = ACTIONS(1014),
    [anon_sym_let] = ACTIONS(1014),
    [anon_sym_COLON_EQ] = ACTIONS(1020),
    [anon_sym_if] = ACTIONS(1014),
    [anon_sym_switch] = ACTIONS(1014),
    [anon_sym_function] = ACTIONS(1014),
    [anon_sym_stop] = ACTIONS(1014),
    [anon_sym_add] = ACTIONS(1014),
    [anon_sym_sub] = ACTIONS(1014),
    [anon_sym_mul] = ACTIONS(1014),
    [anon_sym_div] = ACTIONS(1014),
    [anon_sym_sdiv] = ACTIONS(1014),
    [anon_sym_mod] = ACTIONS(1014),
    [anon_sym_smod] = ACTIONS(1014),
    [anon_sym_exp] = ACTIONS(1014),
    [anon_sym_not] = ACTIONS(1014),
    [anon_sym_lt] = ACTIONS(1014),
    [anon_sym_gt] = ACTIONS(1014),
    [anon_sym_slt] = ACTIONS(1014),
    [anon_sym_sgt] = ACTIONS(1014),
    [anon_sym_eq] = ACTIONS(1014),
    [anon_sym_iszero] = ACTIONS(1014),
    [anon_sym_and] = ACTIONS(1014),
    [anon_sym_or] = ACTIONS(1014),
    [anon_sym_xor] = ACTIONS(1014),
    [anon_sym_byte] = ACTIONS(1014),
    [anon_sym_shl] = ACTIONS(1014),
    [anon_sym_shr] = ACTIONS(1014),
    [anon_sym_sar] = ACTIONS(1014),
    [anon_sym_addmod] = ACTIONS(1014),
    [anon_sym_mulmod] = ACTIONS(1014),
    [anon_sym_signextend] = ACTIONS(1014),
    [anon_sym_keccak256] = ACTIONS(1014),
    [anon_sym_pop] = ACTIONS(1014),
    [anon_sym_mload] = ACTIONS(1014),
    [anon_sym_mstore] = ACTIONS(1014),
    [anon_sym_mstore8] = ACTIONS(1014),
    [anon_sym_sload] = ACTIONS(1014),
    [anon_sym_sstore] = ACTIONS(1014),
    [anon_sym_msize] = ACTIONS(1014),
    [anon_sym_gas] = ACTIONS(1014),
    [anon_sym_address] = ACTIONS(1014),
    [anon_sym_balance] = ACTIONS(1014),
    [anon_sym_selfbalance] = ACTIONS(1014),
    [anon_sym_caller] = ACTIONS(1014),
    [anon_sym_callvalue] = ACTIONS(1014),
    [anon_sym_calldataload] = ACTIONS(1014),
    [anon_sym_calldatasize] = ACTIONS(1014),
    [anon_sym_calldatacopy] = ACTIONS(1014),
    [anon_sym_extcodesize] = ACTIONS(1014),
    [anon_sym_extcodecopy] = ACTIONS(1014),
    [anon_sym_returndatasize] = ACTIONS(1014),
    [anon_sym_returndatacopy] = ACTIONS(1014),
    [anon_sym_extcodehash] = ACTIONS(1014),
    [anon_sym_create] = ACTIONS(1014),
    [anon_sym_create2] = ACTIONS(1014),
    [anon_sym_call] = ACTIONS(1014),
    [anon_sym_callcode] = ACTIONS(1014),
    [anon_sym_delegatecall] = ACTIONS(1014),
    [anon_sym_staticcall] = ACTIONS(1014),
    [anon_sym_return] = ACTIONS(1014),
    [anon_sym_revert] = ACTIONS(1014),
    [anon_sym_selfdestruct] = ACTIONS(1014),
    [anon_sym_invalid] = ACTIONS(1014),
    [anon_sym_log0] = ACTIONS(1014),
    [anon_sym_log1] = ACTIONS(1014),
    [anon_sym_log2] = ACTIONS(1014),
    [anon_sym_log3] = ACTIONS(1014),
    [anon_sym_log4] = ACTIONS(1014),
    [anon_sym_chainid] = ACTIONS(1014),
    [anon_sym_origin] = ACTIONS(1014),
    [anon_sym_gasprice] = ACTIONS(1014),
    [anon_sym_blockhash] = ACTIONS(1014),
    [anon_sym_coinbase] = ACTIONS(1014),
    [anon_sym_timestamp] = ACTIONS(1014),
    [anon_sym_number] = ACTIONS(1014),
    [anon_sym_difficulty] = ACTIONS(1014),
    [anon_sym_gaslimit] = ACTIONS(1014),
    [anon_sym_DQUOTE] = ACTIONS(1016),
    [anon_sym_SQUOTE] = ACTIONS(1016),
    [sym_comment] = ACTIONS(3),
  },
  [242] = {
    [aux_sym_yul_switch_statement_repeat1] = STATE(244),
    [sym_identifier] = ACTIONS(1022),
    [anon_sym_LBRACE] = ACTIONS(1024),
    [anon_sym_RBRACE] = ACTIONS(1024),
    [anon_sym_for] = ACTIONS(1022),
    [sym_yul_leave] = ACTIONS(1022),
    [anon_sym_break] = ACTIONS(1022),
    [anon_sym_continue] = ACTIONS(1022),
    [sym_yul_decimal_number] = ACTIONS(1022),
    [sym_yul_hex_number] = ACTIONS(1024),
    [anon_sym_true] = ACTIONS(1022),
    [anon_sym_false] = ACTIONS(1022),
    [anon_sym_let] = ACTIONS(1022),
    [anon_sym_if] = ACTIONS(1022),
    [anon_sym_switch] = ACTIONS(1022),
    [anon_sym_default] = ACTIONS(1026),
    [anon_sym_case] = ACTIONS(1028),
    [anon_sym_function] = ACTIONS(1022),
    [anon_sym_stop] = ACTIONS(1022),
    [anon_sym_add] = ACTIONS(1022),
    [anon_sym_sub] = ACTIONS(1022),
    [anon_sym_mul] = ACTIONS(1022),
    [anon_sym_div] = ACTIONS(1022),
    [anon_sym_sdiv] = ACTIONS(1022),
    [anon_sym_mod] = ACTIONS(1022),
    [anon_sym_smod] = ACTIONS(1022),
    [anon_sym_exp] = ACTIONS(1022),
    [anon_sym_not] = ACTIONS(1022),
    [anon_sym_lt] = ACTIONS(1022),
    [anon_sym_gt] = ACTIONS(1022),
    [anon_sym_slt] = ACTIONS(1022),
    [anon_sym_sgt] = ACTIONS(1022),
    [anon_sym_eq] = ACTIONS(1022),
    [anon_sym_iszero] = ACTIONS(1022),
    [anon_sym_and] = ACTIONS(1022),
    [anon_sym_or] = ACTIONS(1022),
    [anon_sym_xor] = ACTIONS(1022),
    [anon_sym_byte] = ACTIONS(1022),
    [anon_sym_shl] = ACTIONS(1022),
    [anon_sym_shr] = ACTIONS(1022),
    [anon_sym_sar] = ACTIONS(1022),
    [anon_sym_addmod] = ACTIONS(1022),
    [anon_sym_mulmod] = ACTIONS(1022),
    [anon_sym_signextend] = ACTIONS(1022),
    [anon_sym_keccak256] = ACTIONS(1022),
    [anon_sym_pop] = ACTIONS(1022),
    [anon_sym_mload] = ACTIONS(1022),
    [anon_sym_mstore] = ACTIONS(1022),
    [anon_sym_mstore8] = ACTIONS(1022),
    [anon_sym_sload] = ACTIONS(1022),
    [anon_sym_sstore] = ACTIONS(1022),
    [anon_sym_msize] = ACTIONS(1022),
    [anon_sym_gas] = ACTIONS(1022),
    [anon_sym_address] = ACTIONS(1022),
    [anon_sym_balance] = ACTIONS(1022),
    [anon_sym_selfbalance] = ACTIONS(1022),
    [anon_sym_caller] = ACTIONS(1022),
    [anon_sym_callvalue] = ACTIONS(1022),
    [anon_sym_calldataload] = ACTIONS(1022),
    [anon_sym_calldatasize] = ACTIONS(1022),
    [anon_sym_calldatacopy] = ACTIONS(1022),
    [anon_sym_extcodesize] = ACTIONS(1022),
    [anon_sym_extcodecopy] = ACTIONS(1022),
    [anon_sym_returndatasize] = ACTIONS(1022),
    [anon_sym_returndatacopy] = ACTIONS(1022),
    [anon_sym_extcodehash] = ACTIONS(1022),
    [anon_sym_create] = ACTIONS(1022),
    [anon_sym_create2] = ACTIONS(1022),
    [anon_sym_call] = ACTIONS(1022),
    [anon_sym_callcode] = ACTIONS(1022),
    [anon_sym_delegatecall] = ACTIONS(1022),
    [anon_sym_staticcall] = ACTIONS(1022),
    [anon_sym_return] = ACTIONS(1022),
    [anon_sym_revert] = ACTIONS(1022),
    [anon_sym_selfdestruct] = ACTIONS(1022),
    [anon_sym_invalid] = ACTIONS(1022),
    [anon_sym_log0] = ACTIONS(1022),
    [anon_sym_log1] = ACTIONS(1022),
    [anon_sym_log2] = ACTIONS(1022),
    [anon_sym_log3] = ACTIONS(1022),
    [anon_sym_log4] = ACTIONS(1022),
    [anon_sym_chainid] = ACTIONS(1022),
    [anon_sym_origin] = ACTIONS(1022),
    [anon_sym_gasprice] = ACTIONS(1022),
    [anon_sym_blockhash] = ACTIONS(1022),
    [anon_sym_coinbase] = ACTIONS(1022),
    [anon_sym_timestamp] = ACTIONS(1022),
    [anon_sym_number] = ACTIONS(1022),
    [anon_sym_difficulty] = ACTIONS(1022),
    [anon_sym_gaslimit] = ACTIONS(1022),
    [anon_sym_DQUOTE] = ACTIONS(1024),
    [anon_sym_SQUOTE] = ACTIONS(1024),
    [sym_comment] = ACTIONS(3),
  },
  [243] = {
    [sym_identifier] = ACTIONS(999),
    [anon_sym_LBRACE] = ACTIONS(1001),
    [anon_sym_COMMA] = ACTIONS(1001),
    [anon_sym_RBRACE] = ACTIONS(1001),
    [anon_sym_RPAREN] = ACTIONS(1001),
    [anon_sym_for] = ACTIONS(999),
    [sym_yul_leave] = ACTIONS(999),
    [anon_sym_break] = ACTIONS(999),
    [anon_sym_continue] = ACTIONS(999),
    [sym_yul_decimal_number] = ACTIONS(999),
    [sym_yul_hex_number] = ACTIONS(1001),
    [anon_sym_true] = ACTIONS(999),
    [anon_sym_false] = ACTIONS(999),
    [anon_sym_let] = ACTIONS(999),
    [anon_sym_COLON_EQ] = ACTIONS(1001),
    [anon_sym_if] = ACTIONS(999),
    [anon_sym_switch] = ACTIONS(999),
    [anon_sym_function] = ACTIONS(999),
    [anon_sym_stop] = ACTIONS(999),
    [anon_sym_add] = ACTIONS(999),
    [anon_sym_sub] = ACTIONS(999),
    [anon_sym_mul] = ACTIONS(999),
    [anon_sym_div] = ACTIONS(999),
    [anon_sym_sdiv] = ACTIONS(999),
    [anon_sym_mod] = ACTIONS(999),
    [anon_sym_smod] = ACTIONS(999),
    [anon_sym_exp] = ACTIONS(999),
    [anon_sym_not] = ACTIONS(999),
    [anon_sym_lt] = ACTIONS(999),
    [anon_sym_gt] = ACTIONS(999),
    [anon_sym_slt] = ACTIONS(999),
    [anon_sym_sgt] = ACTIONS(999),
    [anon_sym_eq] = ACTIONS(999),
    [anon_sym_iszero] = ACTIONS(999),
    [anon_sym_and] = ACTIONS(999),
    [anon_sym_or] = ACTIONS(999),
    [anon_sym_xor] = ACTIONS(999),
    [anon_sym_byte] = ACTIONS(999),
    [anon_sym_shl] = ACTIONS(999),
    [anon_sym_shr] = ACTIONS(999),
    [anon_sym_sar] = ACTIONS(999),
    [anon_sym_addmod] = ACTIONS(999),
    [anon_sym_mulmod] = ACTIONS(999),
    [anon_sym_signextend] = ACTIONS(999),
    [anon_sym_keccak256] = ACTIONS(999),
    [anon_sym_pop] = ACTIONS(999),
    [anon_sym_mload] = ACTIONS(999),
    [anon_sym_mstore] = ACTIONS(999),
    [anon_sym_mstore8] = ACTIONS(999),
    [anon_sym_sload] = ACTIONS(999),
    [anon_sym_sstore] = ACTIONS(999),
    [anon_sym_msize] = ACTIONS(999),
    [anon_sym_gas] = ACTIONS(999),
    [anon_sym_address] = ACTIONS(999),
    [anon_sym_balance] = ACTIONS(999),
    [anon_sym_selfbalance] = ACTIONS(999),
    [anon_sym_caller] = ACTIONS(999),
    [anon_sym_callvalue] = ACTIONS(999),
    [anon_sym_calldataload] = ACTIONS(999),
    [anon_sym_calldatasize] = ACTIONS(999),
    [anon_sym_calldatacopy] = ACTIONS(999),
    [anon_sym_extcodesize] = ACTIONS(999),
    [anon_sym_extcodecopy] = ACTIONS(999),
    [anon_sym_returndatasize] = ACTIONS(999),
    [anon_sym_returndatacopy] = ACTIONS(999),
    [anon_sym_extcodehash] = ACTIONS(999),
    [anon_sym_create] = ACTIONS(999),
    [anon_sym_create2] = ACTIONS(999),
    [anon_sym_call] = ACTIONS(999),
    [anon_sym_callcode] = ACTIONS(999),
    [anon_sym_delegatecall] = ACTIONS(999),
    [anon_sym_staticcall] = ACTIONS(999),
    [anon_sym_return] = ACTIONS(999),
    [anon_sym_revert] = ACTIONS(999),
    [anon_sym_selfdestruct] = ACTIONS(999),
    [anon_sym_invalid] = ACTIONS(999),
    [anon_sym_log0] = ACTIONS(999),
    [anon_sym_log1] = ACTIONS(999),
    [anon_sym_log2] = ACTIONS(999),
    [anon_sym_log3] = ACTIONS(999),
    [anon_sym_log4] = ACTIONS(999),
    [anon_sym_chainid] = ACTIONS(999),
    [anon_sym_origin] = ACTIONS(999),
    [anon_sym_gasprice] = ACTIONS(999),
    [anon_sym_blockhash] = ACTIONS(999),
    [anon_sym_coinbase] = ACTIONS(999),
    [anon_sym_timestamp] = ACTIONS(999),
    [anon_sym_number] = ACTIONS(999),
    [anon_sym_difficulty] = ACTIONS(999),
    [anon_sym_gaslimit] = ACTIONS(999),
    [anon_sym_DQUOTE] = ACTIONS(1001),
    [anon_sym_SQUOTE] = ACTIONS(1001),
    [sym_comment] = ACTIONS(3),
  },
  [244] = {
    [aux_sym_yul_switch_statement_repeat1] = STATE(244),
    [sym_identifier] = ACTIONS(1030),
    [anon_sym_LBRACE] = ACTIONS(1032),
    [anon_sym_RBRACE] = ACTIONS(1032),
    [anon_sym_for] = ACTIONS(1030),
    [sym_yul_leave] = ACTIONS(1030),
    [anon_sym_break] = ACTIONS(1030),
    [anon_sym_continue] = ACTIONS(1030),
    [sym_yul_decimal_number] = ACTIONS(1030),
    [sym_yul_hex_number] = ACTIONS(1032),
    [anon_sym_true] = ACTIONS(1030),
    [anon_sym_false] = ACTIONS(1030),
    [anon_sym_let] = ACTIONS(1030),
    [anon_sym_if] = ACTIONS(1030),
    [anon_sym_switch] = ACTIONS(1030),
    [anon_sym_default] = ACTIONS(1030),
    [anon_sym_case] = ACTIONS(1034),
    [anon_sym_function] = ACTIONS(1030),
    [anon_sym_stop] = ACTIONS(1030),
    [anon_sym_add] = ACTIONS(1030),
    [anon_sym_sub] = ACTIONS(1030),
    [anon_sym_mul] = ACTIONS(1030),
    [anon_sym_div] = ACTIONS(1030),
    [anon_sym_sdiv] = ACTIONS(1030),
    [anon_sym_mod] = ACTIONS(1030),
    [anon_sym_smod] = ACTIONS(1030),
    [anon_sym_exp] = ACTIONS(1030),
    [anon_sym_not] = ACTIONS(1030),
    [anon_sym_lt] = ACTIONS(1030),
    [anon_sym_gt] = ACTIONS(1030),
    [anon_sym_slt] = ACTIONS(1030),
    [anon_sym_sgt] = ACTIONS(1030),
    [anon_sym_eq] = ACTIONS(1030),
    [anon_sym_iszero] = ACTIONS(1030),
    [anon_sym_and] = ACTIONS(1030),
    [anon_sym_or] = ACTIONS(1030),
    [anon_sym_xor] = ACTIONS(1030),
    [anon_sym_byte] = ACTIONS(1030),
    [anon_sym_shl] = ACTIONS(1030),
    [anon_sym_shr] = ACTIONS(1030),
    [anon_sym_sar] = ACTIONS(1030),
    [anon_sym_addmod] = ACTIONS(1030),
    [anon_sym_mulmod] = ACTIONS(1030),
    [anon_sym_signextend] = ACTIONS(1030),
    [anon_sym_keccak256] = ACTIONS(1030),
    [anon_sym_pop] = ACTIONS(1030),
    [anon_sym_mload] = ACTIONS(1030),
    [anon_sym_mstore] = ACTIONS(1030),
    [anon_sym_mstore8] = ACTIONS(1030),
    [anon_sym_sload] = ACTIONS(1030),
    [anon_sym_sstore] = ACTIONS(1030),
    [anon_sym_msize] = ACTIONS(1030),
    [anon_sym_gas] = ACTIONS(1030),
    [anon_sym_address] = ACTIONS(1030),
    [anon_sym_balance] = ACTIONS(1030),
    [anon_sym_selfbalance] = ACTIONS(1030),
    [anon_sym_caller] = ACTIONS(1030),
    [anon_sym_callvalue] = ACTIONS(1030),
    [anon_sym_calldataload] = ACTIONS(1030),
    [anon_sym_calldatasize] = ACTIONS(1030),
    [anon_sym_calldatacopy] = ACTIONS(1030),
    [anon_sym_extcodesize] = ACTIONS(1030),
    [anon_sym_extcodecopy] = ACTIONS(1030),
    [anon_sym_returndatasize] = ACTIONS(1030),
    [anon_sym_returndatacopy] = ACTIONS(1030),
    [anon_sym_extcodehash] = ACTIONS(1030),
    [anon_sym_create] = ACTIONS(1030),
    [anon_sym_create2] = ACTIONS(1030),
    [anon_sym_call] = ACTIONS(1030),
    [anon_sym_callcode] = ACTIONS(1030),
    [anon_sym_delegatecall] = ACTIONS(1030),
    [anon_sym_staticcall] = ACTIONS(1030),
    [anon_sym_return] = ACTIONS(1030),
    [anon_sym_revert] = ACTIONS(1030),
    [anon_sym_selfdestruct] = ACTIONS(1030),
    [anon_sym_invalid] = ACTIONS(1030),
    [anon_sym_log0] = ACTIONS(1030),
    [anon_sym_log1] = ACTIONS(1030),
    [anon_sym_log2] = ACTIONS(1030),
    [anon_sym_log3] = ACTIONS(1030),
    [anon_sym_log4] = ACTIONS(1030),
    [anon_sym_chainid] = ACTIONS(1030),
    [anon_sym_origin] = ACTIONS(1030),
    [anon_sym_gasprice] = ACTIONS(1030),
    [anon_sym_blockhash] = ACTIONS(1030),
    [anon_sym_coinbase] = ACTIONS(1030),
    [anon_sym_timestamp] = ACTIONS(1030),
    [anon_sym_number] = ACTIONS(1030),
    [anon_sym_difficulty] = ACTIONS(1030),
    [anon_sym_gaslimit] = ACTIONS(1030),
    [anon_sym_DQUOTE] = ACTIONS(1032),
    [anon_sym_SQUOTE] = ACTIONS(1032),
    [sym_comment] = ACTIONS(3),
  },
  [245] = {
    [sym_identifier] = ACTIONS(1037),
    [anon_sym_LBRACE] = ACTIONS(1039),
    [anon_sym_RBRACE] = ACTIONS(1039),
    [anon_sym_for] = ACTIONS(1037),
    [sym_yul_leave] = ACTIONS(1037),
    [anon_sym_break] = ACTIONS(1037),
    [anon_sym_continue] = ACTIONS(1037),
    [sym_yul_decimal_number] = ACTIONS(1037),
    [sym_yul_hex_number] = ACTIONS(1039),
    [anon_sym_true] = ACTIONS(1037),
    [anon_sym_false] = ACTIONS(1037),
    [anon_sym_let] = ACTIONS(1037),
    [anon_sym_if] = ACTIONS(1037),
    [anon_sym_switch] = ACTIONS(1037),
    [anon_sym_default] = ACTIONS(1037),
    [anon_sym_case] = ACTIONS(1037),
    [anon_sym_function] = ACTIONS(1037),
    [anon_sym_stop] = ACTIONS(1037),
    [anon_sym_add] = ACTIONS(1037),
    [anon_sym_sub] = ACTIONS(1037),
    [anon_sym_mul] = ACTIONS(1037),
    [anon_sym_div] = ACTIONS(1037),
    [anon_sym_sdiv] = ACTIONS(1037),
    [anon_sym_mod] = ACTIONS(1037),
    [anon_sym_smod] = ACTIONS(1037),
    [anon_sym_exp] = ACTIONS(1037),
    [anon_sym_not] = ACTIONS(1037),
    [anon_sym_lt] = ACTIONS(1037),
    [anon_sym_gt] = ACTIONS(1037),
    [anon_sym_slt] = ACTIONS(1037),
    [anon_sym_sgt] = ACTIONS(1037),
    [anon_sym_eq] = ACTIONS(1037),
    [anon_sym_iszero] = ACTIONS(1037),
    [anon_sym_and] = ACTIONS(1037),
    [anon_sym_or] = ACTIONS(1037),
    [anon_sym_xor] = ACTIONS(1037),
    [anon_sym_byte] = ACTIONS(1037),
    [anon_sym_shl] = ACTIONS(1037),
    [anon_sym_shr] = ACTIONS(1037),
    [anon_sym_sar] = ACTIONS(1037),
    [anon_sym_addmod] = ACTIONS(1037),
    [anon_sym_mulmod] = ACTIONS(1037),
    [anon_sym_signextend] = ACTIONS(1037),
    [anon_sym_keccak256] = ACTIONS(1037),
    [anon_sym_pop] = ACTIONS(1037),
    [anon_sym_mload] = ACTIONS(1037),
    [anon_sym_mstore] = ACTIONS(1037),
    [anon_sym_mstore8] = ACTIONS(1037),
    [anon_sym_sload] = ACTIONS(1037),
    [anon_sym_sstore] = ACTIONS(1037),
    [anon_sym_msize] = ACTIONS(1037),
    [anon_sym_gas] = ACTIONS(1037),
    [anon_sym_address] = ACTIONS(1037),
    [anon_sym_balance] = ACTIONS(1037),
    [anon_sym_selfbalance] = ACTIONS(1037),
    [anon_sym_caller] = ACTIONS(1037),
    [anon_sym_callvalue] = ACTIONS(1037),
    [anon_sym_calldataload] = ACTIONS(1037),
    [anon_sym_calldatasize] = ACTIONS(1037),
    [anon_sym_calldatacopy] = ACTIONS(1037),
    [anon_sym_extcodesize] = ACTIONS(1037),
    [anon_sym_extcodecopy] = ACTIONS(1037),
    [anon_sym_returndatasize] = ACTIONS(1037),
    [anon_sym_returndatacopy] = ACTIONS(1037),
    [anon_sym_extcodehash] = ACTIONS(1037),
    [anon_sym_create] = ACTIONS(1037),
    [anon_sym_create2] = ACTIONS(1037),
    [anon_sym_call] = ACTIONS(1037),
    [anon_sym_callcode] = ACTIONS(1037),
    [anon_sym_delegatecall] = ACTIONS(1037),
    [anon_sym_staticcall] = ACTIONS(1037),
    [anon_sym_return] = ACTIONS(1037),
    [anon_sym_revert] = ACTIONS(1037),
    [anon_sym_selfdestruct] = ACTIONS(1037),
    [anon_sym_invalid] = ACTIONS(1037),
    [anon_sym_log0] = ACTIONS(1037),
    [anon_sym_log1] = ACTIONS(1037),
    [anon_sym_log2] = ACTIONS(1037),
    [anon_sym_log3] = ACTIONS(1037),
    [anon_sym_log4] = ACTIONS(1037),
    [anon_sym_chainid] = ACTIONS(1037),
    [anon_sym_origin] = ACTIONS(1037),
    [anon_sym_gasprice] = ACTIONS(1037),
    [anon_sym_blockhash] = ACTIONS(1037),
    [anon_sym_coinbase] = ACTIONS(1037),
    [anon_sym_timestamp] = ACTIONS(1037),
    [anon_sym_number] = ACTIONS(1037),
    [anon_sym_difficulty] = ACTIONS(1037),
    [anon_sym_gaslimit] = ACTIONS(1037),
    [anon_sym_DQUOTE] = ACTIONS(1039),
    [anon_sym_SQUOTE] = ACTIONS(1039),
    [sym_comment] = ACTIONS(3),
  },
  [246] = {
    [sym_identifier] = ACTIONS(1041),
    [anon_sym_LBRACE] = ACTIONS(1043),
    [anon_sym_RBRACE] = ACTIONS(1043),
    [anon_sym_for] = ACTIONS(1041),
    [sym_yul_leave] = ACTIONS(1041),
    [anon_sym_break] = ACTIONS(1041),
    [anon_sym_continue] = ACTIONS(1041),
    [sym_yul_decimal_number] = ACTIONS(1041),
    [sym_yul_hex_number] = ACTIONS(1043),
    [anon_sym_true] = ACTIONS(1041),
    [anon_sym_false] = ACTIONS(1041),
    [anon_sym_let] = ACTIONS(1041),
    [anon_sym_if] = ACTIONS(1041),
    [anon_sym_switch] = ACTIONS(1041),
    [anon_sym_default] = ACTIONS(1041),
    [anon_sym_case] = ACTIONS(1041),
    [anon_sym_function] = ACTIONS(1041),
    [anon_sym_stop] = ACTIONS(1041),
    [anon_sym_add] = ACTIONS(1041),
    [anon_sym_sub] = ACTIONS(1041),
    [anon_sym_mul] = ACTIONS(1041),
    [anon_sym_div] = ACTIONS(1041),
    [anon_sym_sdiv] = ACTIONS(1041),
    [anon_sym_mod] = ACTIONS(1041),
    [anon_sym_smod] = ACTIONS(1041),
    [anon_sym_exp] = ACTIONS(1041),
    [anon_sym_not] = ACTIONS(1041),
    [anon_sym_lt] = ACTIONS(1041),
    [anon_sym_gt] = ACTIONS(1041),
    [anon_sym_slt] = ACTIONS(1041),
    [anon_sym_sgt] = ACTIONS(1041),
    [anon_sym_eq] = ACTIONS(1041),
    [anon_sym_iszero] = ACTIONS(1041),
    [anon_sym_and] = ACTIONS(1041),
    [anon_sym_or] = ACTIONS(1041),
    [anon_sym_xor] = ACTIONS(1041),
    [anon_sym_byte] = ACTIONS(1041),
    [anon_sym_shl] = ACTIONS(1041),
    [anon_sym_shr] = ACTIONS(1041),
    [anon_sym_sar] = ACTIONS(1041),
    [anon_sym_addmod] = ACTIONS(1041),
    [anon_sym_mulmod] = ACTIONS(1041),
    [anon_sym_signextend] = ACTIONS(1041),
    [anon_sym_keccak256] = ACTIONS(1041),
    [anon_sym_pop] = ACTIONS(1041),
    [anon_sym_mload] = ACTIONS(1041),
    [anon_sym_mstore] = ACTIONS(1041),
    [anon_sym_mstore8] = ACTIONS(1041),
    [anon_sym_sload] = ACTIONS(1041),
    [anon_sym_sstore] = ACTIONS(1041),
    [anon_sym_msize] = ACTIONS(1041),
    [anon_sym_gas] = ACTIONS(1041),
    [anon_sym_address] = ACTIONS(1041),
    [anon_sym_balance] = ACTIONS(1041),
    [anon_sym_selfbalance] = ACTIONS(1041),
    [anon_sym_caller] = ACTIONS(1041),
    [anon_sym_callvalue] = ACTIONS(1041),
    [anon_sym_calldataload] = ACTIONS(1041),
    [anon_sym_calldatasize] = ACTIONS(1041),
    [anon_sym_calldatacopy] = ACTIONS(1041),
    [anon_sym_extcodesize] = ACTIONS(1041),
    [anon_sym_extcodecopy] = ACTIONS(1041),
    [anon_sym_returndatasize] = ACTIONS(1041),
    [anon_sym_returndatacopy] = ACTIONS(1041),
    [anon_sym_extcodehash] = ACTIONS(1041),
    [anon_sym_create] = ACTIONS(1041),
    [anon_sym_create2] = ACTIONS(1041),
    [anon_sym_call] = ACTIONS(1041),
    [anon_sym_callcode] = ACTIONS(1041),
    [anon_sym_delegatecall] = ACTIONS(1041),
    [anon_sym_staticcall] = ACTIONS(1041),
    [anon_sym_return] = ACTIONS(1041),
    [anon_sym_revert] = ACTIONS(1041),
    [anon_sym_selfdestruct] = ACTIONS(1041),
    [anon_sym_invalid] = ACTIONS(1041),
    [anon_sym_log0] = ACTIONS(1041),
    [anon_sym_log1] = ACTIONS(1041),
    [anon_sym_log2] = ACTIONS(1041),
    [anon_sym_log3] = ACTIONS(1041),
    [anon_sym_log4] = ACTIONS(1041),
    [anon_sym_chainid] = ACTIONS(1041),
    [anon_sym_origin] = ACTIONS(1041),
    [anon_sym_gasprice] = ACTIONS(1041),
    [anon_sym_blockhash] = ACTIONS(1041),
    [anon_sym_coinbase] = ACTIONS(1041),
    [anon_sym_timestamp] = ACTIONS(1041),
    [anon_sym_number] = ACTIONS(1041),
    [anon_sym_difficulty] = ACTIONS(1041),
    [anon_sym_gaslimit] = ACTIONS(1041),
    [anon_sym_DQUOTE] = ACTIONS(1043),
    [anon_sym_SQUOTE] = ACTIONS(1043),
    [sym_comment] = ACTIONS(3),
  },
  [247] = {
    [sym_yul_identifier] = STATE(243),
    [sym_identifier] = ACTIONS(1045),
    [anon_sym_LBRACE] = ACTIONS(1047),
    [anon_sym_RBRACE] = ACTIONS(1047),
    [anon_sym_for] = ACTIONS(1045),
    [sym_yul_leave] = ACTIONS(1045),
    [anon_sym_break] = ACTIONS(1045),
    [anon_sym_continue] = ACTIONS(1045),
    [sym_yul_decimal_number] = ACTIONS(1045),
    [sym_yul_hex_number] = ACTIONS(1047),
    [anon_sym_true] = ACTIONS(1045),
    [anon_sym_false] = ACTIONS(1045),
    [anon_sym_let] = ACTIONS(1045),
    [anon_sym_COLON_EQ] = ACTIONS(1049),
    [anon_sym_if] = ACTIONS(1045),
    [anon_sym_switch] = ACTIONS(1045),
    [anon_sym_function] = ACTIONS(1045),
    [anon_sym_stop] = ACTIONS(1045),
    [anon_sym_add] = ACTIONS(1045),
    [anon_sym_sub] = ACTIONS(1045),
    [anon_sym_mul] = ACTIONS(1045),
    [anon_sym_div] = ACTIONS(1045),
    [anon_sym_sdiv] = ACTIONS(1045),
    [anon_sym_mod] = ACTIONS(1045),
    [anon_sym_smod] = ACTIONS(1045),
    [anon_sym_exp] = ACTIONS(1045),
    [anon_sym_not] = ACTIONS(1045),
    [anon_sym_lt] = ACTIONS(1045),
    [anon_sym_gt] = ACTIONS(1045),
    [anon_sym_slt] = ACTIONS(1045),
    [anon_sym_sgt] = ACTIONS(1045),
    [anon_sym_eq] = ACTIONS(1045),
    [anon_sym_iszero] = ACTIONS(1045),
    [anon_sym_and] = ACTIONS(1045),
    [anon_sym_or] = ACTIONS(1045),
    [anon_sym_xor] = ACTIONS(1045),
    [anon_sym_byte] = ACTIONS(1045),
    [anon_sym_shl] = ACTIONS(1045),
    [anon_sym_shr] = ACTIONS(1045),
    [anon_sym_sar] = ACTIONS(1045),
    [anon_sym_addmod] = ACTIONS(1045),
    [anon_sym_mulmod] = ACTIONS(1045),
    [anon_sym_signextend] = ACTIONS(1045),
    [anon_sym_keccak256] = ACTIONS(1045),
    [anon_sym_pop] = ACTIONS(1045),
    [anon_sym_mload] = ACTIONS(1045),
    [anon_sym_mstore] = ACTIONS(1045),
    [anon_sym_mstore8] = ACTIONS(1045),
    [anon_sym_sload] = ACTIONS(1045),
    [anon_sym_sstore] = ACTIONS(1045),
    [anon_sym_msize] = ACTIONS(1045),
    [anon_sym_gas] = ACTIONS(1045),
    [anon_sym_address] = ACTIONS(1045),
    [anon_sym_balance] = ACTIONS(1045),
    [anon_sym_selfbalance] = ACTIONS(1045),
    [anon_sym_caller] = ACTIONS(1045),
    [anon_sym_callvalue] = ACTIONS(1045),
    [anon_sym_calldataload] = ACTIONS(1045),
    [anon_sym_calldatasize] = ACTIONS(1045),
    [anon_sym_calldatacopy] = ACTIONS(1045),
    [anon_sym_extcodesize] = ACTIONS(1045),
    [anon_sym_extcodecopy] = ACTIONS(1045),
    [anon_sym_returndatasize] = ACTIONS(1045),
    [anon_sym_returndatacopy] = ACTIONS(1045),
    [anon_sym_extcodehash] = ACTIONS(1045),
    [anon_sym_create] = ACTIONS(1045),
    [anon_sym_create2] = ACTIONS(1045),
    [anon_sym_call] = ACTIONS(1045),
    [anon_sym_callcode] = ACTIONS(1045),
    [anon_sym_delegatecall] = ACTIONS(1045),
    [anon_sym_staticcall] = ACTIONS(1045),
    [anon_sym_return] = ACTIONS(1045),
    [anon_sym_revert] = ACTIONS(1045),
    [anon_sym_selfdestruct] = ACTIONS(1045),
    [anon_sym_invalid] = ACTIONS(1045),
    [anon_sym_log0] = ACTIONS(1045),
    [anon_sym_log1] = ACTIONS(1045),
    [anon_sym_log2] = ACTIONS(1045),
    [anon_sym_log3] = ACTIONS(1045),
    [anon_sym_log4] = ACTIONS(1045),
    [anon_sym_chainid] = ACTIONS(1045),
    [anon_sym_origin] = ACTIONS(1045),
    [anon_sym_gasprice] = ACTIONS(1045),
    [anon_sym_blockhash] = ACTIONS(1045),
    [anon_sym_coinbase] = ACTIONS(1045),
    [anon_sym_timestamp] = ACTIONS(1045),
    [anon_sym_number] = ACTIONS(1045),
    [anon_sym_difficulty] = ACTIONS(1045),
    [anon_sym_gaslimit] = ACTIONS(1045),
    [anon_sym_DQUOTE] = ACTIONS(1047),
    [anon_sym_SQUOTE] = ACTIONS(1047),
    [sym_comment] = ACTIONS(3),
  },
  [248] = {
    [sym_identifier] = ACTIONS(1051),
    [anon_sym_LBRACE] = ACTIONS(1053),
    [anon_sym_RBRACE] = ACTIONS(1053),
    [anon_sym_for] = ACTIONS(1051),
    [sym_yul_leave] = ACTIONS(1051),
    [anon_sym_break] = ACTIONS(1051),
    [anon_sym_continue] = ACTIONS(1051),
    [sym_yul_decimal_number] = ACTIONS(1051),
    [sym_yul_hex_number] = ACTIONS(1053),
    [anon_sym_true] = ACTIONS(1051),
    [anon_sym_false] = ACTIONS(1051),
    [anon_sym_let] = ACTIONS(1051),
    [anon_sym_if] = ACTIONS(1051),
    [anon_sym_switch] = ACTIONS(1051),
    [anon_sym_default] = ACTIONS(1051),
    [anon_sym_case] = ACTIONS(1051),
    [anon_sym_function] = ACTIONS(1051),
    [anon_sym_stop] = ACTIONS(1051),
    [anon_sym_add] = ACTIONS(1051),
    [anon_sym_sub] = ACTIONS(1051),
    [anon_sym_mul] = ACTIONS(1051),
    [anon_sym_div] = ACTIONS(1051),
    [anon_sym_sdiv] = ACTIONS(1051),
    [anon_sym_mod] = ACTIONS(1051),
    [anon_sym_smod] = ACTIONS(1051),
    [anon_sym_exp] = ACTIONS(1051),
    [anon_sym_not] = ACTIONS(1051),
    [anon_sym_lt] = ACTIONS(1051),
    [anon_sym_gt] = ACTIONS(1051),
    [anon_sym_slt] = ACTIONS(1051),
    [anon_sym_sgt] = ACTIONS(1051),
    [anon_sym_eq] = ACTIONS(1051),
    [anon_sym_iszero] = ACTIONS(1051),
    [anon_sym_and] = ACTIONS(1051),
    [anon_sym_or] = ACTIONS(1051),
    [anon_sym_xor] = ACTIONS(1051),
    [anon_sym_byte] = ACTIONS(1051),
    [anon_sym_shl] = ACTIONS(1051),
    [anon_sym_shr] = ACTIONS(1051),
    [anon_sym_sar] = ACTIONS(1051),
    [anon_sym_addmod] = ACTIONS(1051),
    [anon_sym_mulmod] = ACTIONS(1051),
    [anon_sym_signextend] = ACTIONS(1051),
    [anon_sym_keccak256] = ACTIONS(1051),
    [anon_sym_pop] = ACTIONS(1051),
    [anon_sym_mload] = ACTIONS(1051),
    [anon_sym_mstore] = ACTIONS(1051),
    [anon_sym_mstore8] = ACTIONS(1051),
    [anon_sym_sload] = ACTIONS(1051),
    [anon_sym_sstore] = ACTIONS(1051),
    [anon_sym_msize] = ACTIONS(1051),
    [anon_sym_gas] = ACTIONS(1051),
    [anon_sym_address] = ACTIONS(1051),
    [anon_sym_balance] = ACTIONS(1051),
    [anon_sym_selfbalance] = ACTIONS(1051),
    [anon_sym_caller] = ACTIONS(1051),
    [anon_sym_callvalue] = ACTIONS(1051),
    [anon_sym_calldataload] = ACTIONS(1051),
    [anon_sym_calldatasize] = ACTIONS(1051),
    [anon_sym_calldatacopy] = ACTIONS(1051),
    [anon_sym_extcodesize] = ACTIONS(1051),
    [anon_sym_extcodecopy] = ACTIONS(1051),
    [anon_sym_returndatasize] = ACTIONS(1051),
    [anon_sym_returndatacopy] = ACTIONS(1051),
    [anon_sym_extcodehash] = ACTIONS(1051),
    [anon_sym_create] = ACTIONS(1051),
    [anon_sym_create2] = ACTIONS(1051),
    [anon_sym_call] = ACTIONS(1051),
    [anon_sym_callcode] = ACTIONS(1051),
    [anon_sym_delegatecall] = ACTIONS(1051),
    [anon_sym_staticcall] = ACTIONS(1051),
    [anon_sym_return] = ACTIONS(1051),
    [anon_sym_revert] = ACTIONS(1051),
    [anon_sym_selfdestruct] = ACTIONS(1051),
    [anon_sym_invalid] = ACTIONS(1051),
    [anon_sym_log0] = ACTIONS(1051),
    [anon_sym_log1] = ACTIONS(1051),
    [anon_sym_log2] = ACTIONS(1051),
    [anon_sym_log3] = ACTIONS(1051),
    [anon_sym_log4] = ACTIONS(1051),
    [anon_sym_chainid] = ACTIONS(1051),
    [anon_sym_origin] = ACTIONS(1051),
    [anon_sym_gasprice] = ACTIONS(1051),
    [anon_sym_blockhash] = ACTIONS(1051),
    [anon_sym_coinbase] = ACTIONS(1051),
    [anon_sym_timestamp] = ACTIONS(1051),
    [anon_sym_number] = ACTIONS(1051),
    [anon_sym_difficulty] = ACTIONS(1051),
    [anon_sym_gaslimit] = ACTIONS(1051),
    [anon_sym_DQUOTE] = ACTIONS(1053),
    [anon_sym_SQUOTE] = ACTIONS(1053),
    [sym_comment] = ACTIONS(3),
  },
  [249] = {
    [sym_yul_identifier] = STATE(243),
    [sym_identifier] = ACTIONS(1014),
    [anon_sym_LBRACE] = ACTIONS(1016),
    [anon_sym_RBRACE] = ACTIONS(1016),
    [anon_sym_for] = ACTIONS(1014),
    [sym_yul_leave] = ACTIONS(1014),
    [anon_sym_break] = ACTIONS(1014),
    [anon_sym_continue] = ACTIONS(1014),
    [sym_yul_decimal_number] = ACTIONS(1014),
    [sym_yul_hex_number] = ACTIONS(1016),
    [anon_sym_true] = ACTIONS(1014),
    [anon_sym_false] = ACTIONS(1014),
    [anon_sym_let] = ACTIONS(1014),
    [anon_sym_COLON_EQ] = ACTIONS(1020),
    [anon_sym_if] = ACTIONS(1014),
    [anon_sym_switch] = ACTIONS(1014),
    [anon_sym_function] = ACTIONS(1014),
    [anon_sym_stop] = ACTIONS(1014),
    [anon_sym_add] = ACTIONS(1014),
    [anon_sym_sub] = ACTIONS(1014),
    [anon_sym_mul] = ACTIONS(1014),
    [anon_sym_div] = ACTIONS(1014),
    [anon_sym_sdiv] = ACTIONS(1014),
    [anon_sym_mod] = ACTIONS(1014),
    [anon_sym_smod] = ACTIONS(1014),
    [anon_sym_exp] = ACTIONS(1014),
    [anon_sym_not] = ACTIONS(1014),
    [anon_sym_lt] = ACTIONS(1014),
    [anon_sym_gt] = ACTIONS(1014),
    [anon_sym_slt] = ACTIONS(1014),
    [anon_sym_sgt] = ACTIONS(1014),
    [anon_sym_eq] = ACTIONS(1014),
    [anon_sym_iszero] = ACTIONS(1014),
    [anon_sym_and] = ACTIONS(1014),
    [anon_sym_or] = ACTIONS(1014),
    [anon_sym_xor] = ACTIONS(1014),
    [anon_sym_byte] = ACTIONS(1014),
    [anon_sym_shl] = ACTIONS(1014),
    [anon_sym_shr] = ACTIONS(1014),
    [anon_sym_sar] = ACTIONS(1014),
    [anon_sym_addmod] = ACTIONS(1014),
    [anon_sym_mulmod] = ACTIONS(1014),
    [anon_sym_signextend] = ACTIONS(1014),
    [anon_sym_keccak256] = ACTIONS(1014),
    [anon_sym_pop] = ACTIONS(1014),
    [anon_sym_mload] = ACTIONS(1014),
    [anon_sym_mstore] = ACTIONS(1014),
    [anon_sym_mstore8] = ACTIONS(1014),
    [anon_sym_sload] = ACTIONS(1014),
    [anon_sym_sstore] = ACTIONS(1014),
    [anon_sym_msize] = ACTIONS(1014),
    [anon_sym_gas] = ACTIONS(1014),
    [anon_sym_address] = ACTIONS(1014),
    [anon_sym_balance] = ACTIONS(1014),
    [anon_sym_selfbalance] = ACTIONS(1014),
    [anon_sym_caller] = ACTIONS(1014),
    [anon_sym_callvalue] = ACTIONS(1014),
    [anon_sym_calldataload] = ACTIONS(1014),
    [anon_sym_calldatasize] = ACTIONS(1014),
    [anon_sym_calldatacopy] = ACTIONS(1014),
    [anon_sym_extcodesize] = ACTIONS(1014),
    [anon_sym_extcodecopy] = ACTIONS(1014),
    [anon_sym_returndatasize] = ACTIONS(1014),
    [anon_sym_returndatacopy] = ACTIONS(1014),
    [anon_sym_extcodehash] = ACTIONS(1014),
    [anon_sym_create] = ACTIONS(1014),
    [anon_sym_create2] = ACTIONS(1014),
    [anon_sym_call] = ACTIONS(1014),
    [anon_sym_callcode] = ACTIONS(1014),
    [anon_sym_delegatecall] = ACTIONS(1014),
    [anon_sym_staticcall] = ACTIONS(1014),
    [anon_sym_return] = ACTIONS(1014),
    [anon_sym_revert] = ACTIONS(1014),
    [anon_sym_selfdestruct] = ACTIONS(1014),
    [anon_sym_invalid] = ACTIONS(1014),
    [anon_sym_log0] = ACTIONS(1014),
    [anon_sym_log1] = ACTIONS(1014),
    [anon_sym_log2] = ACTIONS(1014),
    [anon_sym_log3] = ACTIONS(1014),
    [anon_sym_log4] = ACTIONS(1014),
    [anon_sym_chainid] = ACTIONS(1014),
    [anon_sym_origin] = ACTIONS(1014),
    [anon_sym_gasprice] = ACTIONS(1014),
    [anon_sym_blockhash] = ACTIONS(1014),
    [anon_sym_coinbase] = ACTIONS(1014),
    [anon_sym_timestamp] = ACTIONS(1014),
    [anon_sym_number] = ACTIONS(1014),
    [anon_sym_difficulty] = ACTIONS(1014),
    [anon_sym_gaslimit] = ACTIONS(1014),
    [anon_sym_DQUOTE] = ACTIONS(1016),
    [anon_sym_SQUOTE] = ACTIONS(1016),
    [sym_comment] = ACTIONS(3),
  },
  [250] = {
    [sym_identifier] = ACTIONS(1045),
    [anon_sym_LBRACE] = ACTIONS(1047),
    [anon_sym_RBRACE] = ACTIONS(1047),
    [anon_sym_for] = ACTIONS(1045),
    [sym_yul_leave] = ACTIONS(1045),
    [anon_sym_break] = ACTIONS(1045),
    [anon_sym_continue] = ACTIONS(1045),
    [sym_yul_decimal_number] = ACTIONS(1045),
    [sym_yul_hex_number] = ACTIONS(1047),
    [anon_sym_true] = ACTIONS(1045),
    [anon_sym_false] = ACTIONS(1045),
    [anon_sym_let] = ACTIONS(1045),
    [anon_sym_COLON_EQ] = ACTIONS(1049),
    [anon_sym_if] = ACTIONS(1045),
    [anon_sym_switch] = ACTIONS(1045),
    [anon_sym_function] = ACTIONS(1045),
    [anon_sym_stop] = ACTIONS(1045),
    [anon_sym_add] = ACTIONS(1045),
    [anon_sym_sub] = ACTIONS(1045),
    [anon_sym_mul] = ACTIONS(1045),
    [anon_sym_div] = ACTIONS(1045),
    [anon_sym_sdiv] = ACTIONS(1045),
    [anon_sym_mod] = ACTIONS(1045),
    [anon_sym_smod] = ACTIONS(1045),
    [anon_sym_exp] = ACTIONS(1045),
    [anon_sym_not] = ACTIONS(1045),
    [anon_sym_lt] = ACTIONS(1045),
    [anon_sym_gt] = ACTIONS(1045),
    [anon_sym_slt] = ACTIONS(1045),
    [anon_sym_sgt] = ACTIONS(1045),
    [anon_sym_eq] = ACTIONS(1045),
    [anon_sym_iszero] = ACTIONS(1045),
    [anon_sym_and] = ACTIONS(1045),
    [anon_sym_or] = ACTIONS(1045),
    [anon_sym_xor] = ACTIONS(1045),
    [anon_sym_byte] = ACTIONS(1045),
    [anon_sym_shl] = ACTIONS(1045),
    [anon_sym_shr] = ACTIONS(1045),
    [anon_sym_sar] = ACTIONS(1045),
    [anon_sym_addmod] = ACTIONS(1045),
    [anon_sym_mulmod] = ACTIONS(1045),
    [anon_sym_signextend] = ACTIONS(1045),
    [anon_sym_keccak256] = ACTIONS(1045),
    [anon_sym_pop] = ACTIONS(1045),
    [anon_sym_mload] = ACTIONS(1045),
    [anon_sym_mstore] = ACTIONS(1045),
    [anon_sym_mstore8] = ACTIONS(1045),
    [anon_sym_sload] = ACTIONS(1045),
    [anon_sym_sstore] = ACTIONS(1045),
    [anon_sym_msize] = ACTIONS(1045),
    [anon_sym_gas] = ACTIONS(1045),
    [anon_sym_address] = ACTIONS(1045),
    [anon_sym_balance] = ACTIONS(1045),
    [anon_sym_selfbalance] = ACTIONS(1045),
    [anon_sym_caller] = ACTIONS(1045),
    [anon_sym_callvalue] = ACTIONS(1045),
    [anon_sym_calldataload] = ACTIONS(1045),
    [anon_sym_calldatasize] = ACTIONS(1045),
    [anon_sym_calldatacopy] = ACTIONS(1045),
    [anon_sym_extcodesize] = ACTIONS(1045),
    [anon_sym_extcodecopy] = ACTIONS(1045),
    [anon_sym_returndatasize] = ACTIONS(1045),
    [anon_sym_returndatacopy] = ACTIONS(1045),
    [anon_sym_extcodehash] = ACTIONS(1045),
    [anon_sym_create] = ACTIONS(1045),
    [anon_sym_create2] = ACTIONS(1045),
    [anon_sym_call] = ACTIONS(1045),
    [anon_sym_callcode] = ACTIONS(1045),
    [anon_sym_delegatecall] = ACTIONS(1045),
    [anon_sym_staticcall] = ACTIONS(1045),
    [anon_sym_return] = ACTIONS(1045),
    [anon_sym_revert] = ACTIONS(1045),
    [anon_sym_selfdestruct] = ACTIONS(1045),
    [anon_sym_invalid] = ACTIONS(1045),
    [anon_sym_log0] = ACTIONS(1045),
    [anon_sym_log1] = ACTIONS(1045),
    [anon_sym_log2] = ACTIONS(1045),
    [anon_sym_log3] = ACTIONS(1045),
    [anon_sym_log4] = ACTIONS(1045),
    [anon_sym_chainid] = ACTIONS(1045),
    [anon_sym_origin] = ACTIONS(1045),
    [anon_sym_gasprice] = ACTIONS(1045),
    [anon_sym_blockhash] = ACTIONS(1045),
    [anon_sym_coinbase] = ACTIONS(1045),
    [anon_sym_timestamp] = ACTIONS(1045),
    [anon_sym_number] = ACTIONS(1045),
    [anon_sym_difficulty] = ACTIONS(1045),
    [anon_sym_gaslimit] = ACTIONS(1045),
    [anon_sym_DQUOTE] = ACTIONS(1047),
    [anon_sym_SQUOTE] = ACTIONS(1047),
    [sym_comment] = ACTIONS(3),
  },
  [251] = {
    [sym_identifier] = ACTIONS(1055),
    [anon_sym_LBRACE] = ACTIONS(1057),
    [anon_sym_RBRACE] = ACTIONS(1057),
    [anon_sym_for] = ACTIONS(1055),
    [sym_yul_leave] = ACTIONS(1055),
    [anon_sym_break] = ACTIONS(1055),
    [anon_sym_continue] = ACTIONS(1055),
    [sym_yul_decimal_number] = ACTIONS(1055),
    [sym_yul_hex_number] = ACTIONS(1057),
    [anon_sym_true] = ACTIONS(1055),
    [anon_sym_false] = ACTIONS(1055),
    [anon_sym_let] = ACTIONS(1055),
    [anon_sym_COLON_EQ] = ACTIONS(1059),
    [anon_sym_if] = ACTIONS(1055),
    [anon_sym_switch] = ACTIONS(1055),
    [anon_sym_function] = ACTIONS(1055),
    [anon_sym_stop] = ACTIONS(1055),
    [anon_sym_add] = ACTIONS(1055),
    [anon_sym_sub] = ACTIONS(1055),
    [anon_sym_mul] = ACTIONS(1055),
    [anon_sym_div] = ACTIONS(1055),
    [anon_sym_sdiv] = ACTIONS(1055),
    [anon_sym_mod] = ACTIONS(1055),
    [anon_sym_smod] = ACTIONS(1055),
    [anon_sym_exp] = ACTIONS(1055),
    [anon_sym_not] = ACTIONS(1055),
    [anon_sym_lt] = ACTIONS(1055),
    [anon_sym_gt] = ACTIONS(1055),
    [anon_sym_slt] = ACTIONS(1055),
    [anon_sym_sgt] = ACTIONS(1055),
    [anon_sym_eq] = ACTIONS(1055),
    [anon_sym_iszero] = ACTIONS(1055),
    [anon_sym_and] = ACTIONS(1055),
    [anon_sym_or] = ACTIONS(1055),
    [anon_sym_xor] = ACTIONS(1055),
    [anon_sym_byte] = ACTIONS(1055),
    [anon_sym_shl] = ACTIONS(1055),
    [anon_sym_shr] = ACTIONS(1055),
    [anon_sym_sar] = ACTIONS(1055),
    [anon_sym_addmod] = ACTIONS(1055),
    [anon_sym_mulmod] = ACTIONS(1055),
    [anon_sym_signextend] = ACTIONS(1055),
    [anon_sym_keccak256] = ACTIONS(1055),
    [anon_sym_pop] = ACTIONS(1055),
    [anon_sym_mload] = ACTIONS(1055),
    [anon_sym_mstore] = ACTIONS(1055),
    [anon_sym_mstore8] = ACTIONS(1055),
    [anon_sym_sload] = ACTIONS(1055),
    [anon_sym_sstore] = ACTIONS(1055),
    [anon_sym_msize] = ACTIONS(1055),
    [anon_sym_gas] = ACTIONS(1055),
    [anon_sym_address] = ACTIONS(1055),
    [anon_sym_balance] = ACTIONS(1055),
    [anon_sym_selfbalance] = ACTIONS(1055),
    [anon_sym_caller] = ACTIONS(1055),
    [anon_sym_callvalue] = ACTIONS(1055),
    [anon_sym_calldataload] = ACTIONS(1055),
    [anon_sym_calldatasize] = ACTIONS(1055),
    [anon_sym_calldatacopy] = ACTIONS(1055),
    [anon_sym_extcodesize] = ACTIONS(1055),
    [anon_sym_extcodecopy] = ACTIONS(1055),
    [anon_sym_returndatasize] = ACTIONS(1055),
    [anon_sym_returndatacopy] = ACTIONS(1055),
    [anon_sym_extcodehash] = ACTIONS(1055),
    [anon_sym_create] = ACTIONS(1055),
    [anon_sym_create2] = ACTIONS(1055),
    [anon_sym_call] = ACTIONS(1055),
    [anon_sym_callcode] = ACTIONS(1055),
    [anon_sym_delegatecall] = ACTIONS(1055),
    [anon_sym_staticcall] = ACTIONS(1055),
    [anon_sym_return] = ACTIONS(1055),
    [anon_sym_revert] = ACTIONS(1055),
    [anon_sym_selfdestruct] = ACTIONS(1055),
    [anon_sym_invalid] = ACTIONS(1055),
    [anon_sym_log0] = ACTIONS(1055),
    [anon_sym_log1] = ACTIONS(1055),
    [anon_sym_log2] = ACTIONS(1055),
    [anon_sym_log3] = ACTIONS(1055),
    [anon_sym_log4] = ACTIONS(1055),
    [anon_sym_chainid] = ACTIONS(1055),
    [anon_sym_origin] = ACTIONS(1055),
    [anon_sym_gasprice] = ACTIONS(1055),
    [anon_sym_blockhash] = ACTIONS(1055),
    [anon_sym_coinbase] = ACTIONS(1055),
    [anon_sym_timestamp] = ACTIONS(1055),
    [anon_sym_number] = ACTIONS(1055),
    [anon_sym_difficulty] = ACTIONS(1055),
    [anon_sym_gaslimit] = ACTIONS(1055),
    [anon_sym_DQUOTE] = ACTIONS(1057),
    [anon_sym_SQUOTE] = ACTIONS(1057),
    [sym_comment] = ACTIONS(3),
  },
  [252] = {
    [sym_identifier] = ACTIONS(1061),
    [anon_sym_LBRACE] = ACTIONS(1063),
    [anon_sym_RBRACE] = ACTIONS(1063),
    [anon_sym_for] = ACTIONS(1061),
    [sym_yul_leave] = ACTIONS(1061),
    [anon_sym_break] = ACTIONS(1061),
    [anon_sym_continue] = ACTIONS(1061),
    [sym_yul_decimal_number] = ACTIONS(1061),
    [sym_yul_hex_number] = ACTIONS(1063),
    [anon_sym_true] = ACTIONS(1061),
    [anon_sym_false] = ACTIONS(1061),
    [anon_sym_let] = ACTIONS(1061),
    [anon_sym_COLON_EQ] = ACTIONS(1065),
    [anon_sym_if] = ACTIONS(1061),
    [anon_sym_switch] = ACTIONS(1061),
    [anon_sym_function] = ACTIONS(1061),
    [anon_sym_stop] = ACTIONS(1061),
    [anon_sym_add] = ACTIONS(1061),
    [anon_sym_sub] = ACTIONS(1061),
    [anon_sym_mul] = ACTIONS(1061),
    [anon_sym_div] = ACTIONS(1061),
    [anon_sym_sdiv] = ACTIONS(1061),
    [anon_sym_mod] = ACTIONS(1061),
    [anon_sym_smod] = ACTIONS(1061),
    [anon_sym_exp] = ACTIONS(1061),
    [anon_sym_not] = ACTIONS(1061),
    [anon_sym_lt] = ACTIONS(1061),
    [anon_sym_gt] = ACTIONS(1061),
    [anon_sym_slt] = ACTIONS(1061),
    [anon_sym_sgt] = ACTIONS(1061),
    [anon_sym_eq] = ACTIONS(1061),
    [anon_sym_iszero] = ACTIONS(1061),
    [anon_sym_and] = ACTIONS(1061),
    [anon_sym_or] = ACTIONS(1061),
    [anon_sym_xor] = ACTIONS(1061),
    [anon_sym_byte] = ACTIONS(1061),
    [anon_sym_shl] = ACTIONS(1061),
    [anon_sym_shr] = ACTIONS(1061),
    [anon_sym_sar] = ACTIONS(1061),
    [anon_sym_addmod] = ACTIONS(1061),
    [anon_sym_mulmod] = ACTIONS(1061),
    [anon_sym_signextend] = ACTIONS(1061),
    [anon_sym_keccak256] = ACTIONS(1061),
    [anon_sym_pop] = ACTIONS(1061),
    [anon_sym_mload] = ACTIONS(1061),
    [anon_sym_mstore] = ACTIONS(1061),
    [anon_sym_mstore8] = ACTIONS(1061),
    [anon_sym_sload] = ACTIONS(1061),
    [anon_sym_sstore] = ACTIONS(1061),
    [anon_sym_msize] = ACTIONS(1061),
    [anon_sym_gas] = ACTIONS(1061),
    [anon_sym_address] = ACTIONS(1061),
    [anon_sym_balance] = ACTIONS(1061),
    [anon_sym_selfbalance] = ACTIONS(1061),
    [anon_sym_caller] = ACTIONS(1061),
    [anon_sym_callvalue] = ACTIONS(1061),
    [anon_sym_calldataload] = ACTIONS(1061),
    [anon_sym_calldatasize] = ACTIONS(1061),
    [anon_sym_calldatacopy] = ACTIONS(1061),
    [anon_sym_extcodesize] = ACTIONS(1061),
    [anon_sym_extcodecopy] = ACTIONS(1061),
    [anon_sym_returndatasize] = ACTIONS(1061),
    [anon_sym_returndatacopy] = ACTIONS(1061),
    [anon_sym_extcodehash] = ACTIONS(1061),
    [anon_sym_create] = ACTIONS(1061),
    [anon_sym_create2] = ACTIONS(1061),
    [anon_sym_call] = ACTIONS(1061),
    [anon_sym_callcode] = ACTIONS(1061),
    [anon_sym_delegatecall] = ACTIONS(1061),
    [anon_sym_staticcall] = ACTIONS(1061),
    [anon_sym_return] = ACTIONS(1061),
    [anon_sym_revert] = ACTIONS(1061),
    [anon_sym_selfdestruct] = ACTIONS(1061),
    [anon_sym_invalid] = ACTIONS(1061),
    [anon_sym_log0] = ACTIONS(1061),
    [anon_sym_log1] = ACTIONS(1061),
    [anon_sym_log2] = ACTIONS(1061),
    [anon_sym_log3] = ACTIONS(1061),
    [anon_sym_log4] = ACTIONS(1061),
    [anon_sym_chainid] = ACTIONS(1061),
    [anon_sym_origin] = ACTIONS(1061),
    [anon_sym_gasprice] = ACTIONS(1061),
    [anon_sym_blockhash] = ACTIONS(1061),
    [anon_sym_coinbase] = ACTIONS(1061),
    [anon_sym_timestamp] = ACTIONS(1061),
    [anon_sym_number] = ACTIONS(1061),
    [anon_sym_difficulty] = ACTIONS(1061),
    [anon_sym_gaslimit] = ACTIONS(1061),
    [anon_sym_DQUOTE] = ACTIONS(1063),
    [anon_sym_SQUOTE] = ACTIONS(1063),
    [sym_comment] = ACTIONS(3),
  },
  [253] = {
    [sym_identifier] = ACTIONS(1067),
    [anon_sym_LBRACE] = ACTIONS(1069),
    [anon_sym_RBRACE] = ACTIONS(1069),
    [anon_sym_for] = ACTIONS(1067),
    [sym_yul_leave] = ACTIONS(1067),
    [anon_sym_break] = ACTIONS(1067),
    [anon_sym_continue] = ACTIONS(1067),
    [sym_yul_decimal_number] = ACTIONS(1067),
    [sym_yul_hex_number] = ACTIONS(1069),
    [anon_sym_true] = ACTIONS(1067),
    [anon_sym_false] = ACTIONS(1067),
    [anon_sym_let] = ACTIONS(1067),
    [anon_sym_if] = ACTIONS(1067),
    [anon_sym_switch] = ACTIONS(1067),
    [anon_sym_function] = ACTIONS(1067),
    [anon_sym_stop] = ACTIONS(1067),
    [anon_sym_add] = ACTIONS(1067),
    [anon_sym_sub] = ACTIONS(1067),
    [anon_sym_mul] = ACTIONS(1067),
    [anon_sym_div] = ACTIONS(1067),
    [anon_sym_sdiv] = ACTIONS(1067),
    [anon_sym_mod] = ACTIONS(1067),
    [anon_sym_smod] = ACTIONS(1067),
    [anon_sym_exp] = ACTIONS(1067),
    [anon_sym_not] = ACTIONS(1067),
    [anon_sym_lt] = ACTIONS(1067),
    [anon_sym_gt] = ACTIONS(1067),
    [anon_sym_slt] = ACTIONS(1067),
    [anon_sym_sgt] = ACTIONS(1067),
    [anon_sym_eq] = ACTIONS(1067),
    [anon_sym_iszero] = ACTIONS(1067),
    [anon_sym_and] = ACTIONS(1067),
    [anon_sym_or] = ACTIONS(1067),
    [anon_sym_xor] = ACTIONS(1067),
    [anon_sym_byte] = ACTIONS(1067),
    [anon_sym_shl] = ACTIONS(1067),
    [anon_sym_shr] = ACTIONS(1067),
    [anon_sym_sar] = ACTIONS(1067),
    [anon_sym_addmod] = ACTIONS(1067),
    [anon_sym_mulmod] = ACTIONS(1067),
    [anon_sym_signextend] = ACTIONS(1067),
    [anon_sym_keccak256] = ACTIONS(1067),
    [anon_sym_pop] = ACTIONS(1067),
    [anon_sym_mload] = ACTIONS(1067),
    [anon_sym_mstore] = ACTIONS(1067),
    [anon_sym_mstore8] = ACTIONS(1067),
    [anon_sym_sload] = ACTIONS(1067),
    [anon_sym_sstore] = ACTIONS(1067),
    [anon_sym_msize] = ACTIONS(1067),
    [anon_sym_gas] = ACTIONS(1067),
    [anon_sym_address] = ACTIONS(1067),
    [anon_sym_balance] = ACTIONS(1067),
    [anon_sym_selfbalance] = ACTIONS(1067),
    [anon_sym_caller] = ACTIONS(1067),
    [anon_sym_callvalue] = ACTIONS(1067),
    [anon_sym_calldataload] = ACTIONS(1067),
    [anon_sym_calldatasize] = ACTIONS(1067),
    [anon_sym_calldatacopy] = ACTIONS(1067),
    [anon_sym_extcodesize] = ACTIONS(1067),
    [anon_sym_extcodecopy] = ACTIONS(1067),
    [anon_sym_returndatasize] = ACTIONS(1067),
    [anon_sym_returndatacopy] = ACTIONS(1067),
    [anon_sym_extcodehash] = ACTIONS(1067),
    [anon_sym_create] = ACTIONS(1067),
    [anon_sym_create2] = ACTIONS(1067),
    [anon_sym_call] = ACTIONS(1067),
    [anon_sym_callcode] = ACTIONS(1067),
    [anon_sym_delegatecall] = ACTIONS(1067),
    [anon_sym_staticcall] = ACTIONS(1067),
    [anon_sym_return] = ACTIONS(1067),
    [anon_sym_revert] = ACTIONS(1067),
    [anon_sym_selfdestruct] = ACTIONS(1067),
    [anon_sym_invalid] = ACTIONS(1067),
    [anon_sym_log0] = ACTIONS(1067),
    [anon_sym_log1] = ACTIONS(1067),
    [anon_sym_log2] = ACTIONS(1067),
    [anon_sym_log3] = ACTIONS(1067),
    [anon_sym_log4] = ACTIONS(1067),
    [anon_sym_chainid] = ACTIONS(1067),
    [anon_sym_origin] = ACTIONS(1067),
    [anon_sym_gasprice] = ACTIONS(1067),
    [anon_sym_blockhash] = ACTIONS(1067),
    [anon_sym_coinbase] = ACTIONS(1067),
    [anon_sym_timestamp] = ACTIONS(1067),
    [anon_sym_number] = ACTIONS(1067),
    [anon_sym_difficulty] = ACTIONS(1067),
    [anon_sym_gaslimit] = ACTIONS(1067),
    [anon_sym_DQUOTE] = ACTIONS(1069),
    [anon_sym_SQUOTE] = ACTIONS(1069),
    [sym_comment] = ACTIONS(3),
  },
  [254] = {
    [sym_identifier] = ACTIONS(962),
    [anon_sym_LBRACE] = ACTIONS(964),
    [anon_sym_RBRACE] = ACTIONS(964),
    [anon_sym_for] = ACTIONS(962),
    [sym_yul_leave] = ACTIONS(962),
    [anon_sym_break] = ACTIONS(962),
    [anon_sym_continue] = ACTIONS(962),
    [sym_yul_decimal_number] = ACTIONS(962),
    [sym_yul_hex_number] = ACTIONS(964),
    [anon_sym_true] = ACTIONS(962),
    [anon_sym_false] = ACTIONS(962),
    [anon_sym_let] = ACTIONS(962),
    [anon_sym_if] = ACTIONS(962),
    [anon_sym_switch] = ACTIONS(962),
    [anon_sym_function] = ACTIONS(962),
    [anon_sym_stop] = ACTIONS(962),
    [anon_sym_add] = ACTIONS(962),
    [anon_sym_sub] = ACTIONS(962),
    [anon_sym_mul] = ACTIONS(962),
    [anon_sym_div] = ACTIONS(962),
    [anon_sym_sdiv] = ACTIONS(962),
    [anon_sym_mod] = ACTIONS(962),
    [anon_sym_smod] = ACTIONS(962),
    [anon_sym_exp] = ACTIONS(962),
    [anon_sym_not] = ACTIONS(962),
    [anon_sym_lt] = ACTIONS(962),
    [anon_sym_gt] = ACTIONS(962),
    [anon_sym_slt] = ACTIONS(962),
    [anon_sym_sgt] = ACTIONS(962),
    [anon_sym_eq] = ACTIONS(962),
    [anon_sym_iszero] = ACTIONS(962),
    [anon_sym_and] = ACTIONS(962),
    [anon_sym_or] = ACTIONS(962),
    [anon_sym_xor] = ACTIONS(962),
    [anon_sym_byte] = ACTIONS(962),
    [anon_sym_shl] = ACTIONS(962),
    [anon_sym_shr] = ACTIONS(962),
    [anon_sym_sar] = ACTIONS(962),
    [anon_sym_addmod] = ACTIONS(962),
    [anon_sym_mulmod] = ACTIONS(962),
    [anon_sym_signextend] = ACTIONS(962),
    [anon_sym_keccak256] = ACTIONS(962),
    [anon_sym_pop] = ACTIONS(962),
    [anon_sym_mload] = ACTIONS(962),
    [anon_sym_mstore] = ACTIONS(962),
    [anon_sym_mstore8] = ACTIONS(962),
    [anon_sym_sload] = ACTIONS(962),
    [anon_sym_sstore] = ACTIONS(962),
    [anon_sym_msize] = ACTIONS(962),
    [anon_sym_gas] = ACTIONS(962),
    [anon_sym_address] = ACTIONS(962),
    [anon_sym_balance] = ACTIONS(962),
    [anon_sym_selfbalance] = ACTIONS(962),
    [anon_sym_caller] = ACTIONS(962),
    [anon_sym_callvalue] = ACTIONS(962),
    [anon_sym_calldataload] = ACTIONS(962),
    [anon_sym_calldatasize] = ACTIONS(962),
    [anon_sym_calldatacopy] = ACTIONS(962),
    [anon_sym_extcodesize] = ACTIONS(962),
    [anon_sym_extcodecopy] = ACTIONS(962),
    [anon_sym_returndatasize] = ACTIONS(962),
    [anon_sym_returndatacopy] = ACTIONS(962),
    [anon_sym_extcodehash] = ACTIONS(962),
    [anon_sym_create] = ACTIONS(962),
    [anon_sym_create2] = ACTIONS(962),
    [anon_sym_call] = ACTIONS(962),
    [anon_sym_callcode] = ACTIONS(962),
    [anon_sym_delegatecall] = ACTIONS(962),
    [anon_sym_staticcall] = ACTIONS(962),
    [anon_sym_return] = ACTIONS(962),
    [anon_sym_revert] = ACTIONS(962),
    [anon_sym_selfdestruct] = ACTIONS(962),
    [anon_sym_invalid] = ACTIONS(962),
    [anon_sym_log0] = ACTIONS(962),
    [anon_sym_log1] = ACTIONS(962),
    [anon_sym_log2] = ACTIONS(962),
    [anon_sym_log3] = ACTIONS(962),
    [anon_sym_log4] = ACTIONS(962),
    [anon_sym_chainid] = ACTIONS(962),
    [anon_sym_origin] = ACTIONS(962),
    [anon_sym_gasprice] = ACTIONS(962),
    [anon_sym_blockhash] = ACTIONS(962),
    [anon_sym_coinbase] = ACTIONS(962),
    [anon_sym_timestamp] = ACTIONS(962),
    [anon_sym_number] = ACTIONS(962),
    [anon_sym_difficulty] = ACTIONS(962),
    [anon_sym_gaslimit] = ACTIONS(962),
    [anon_sym_DQUOTE] = ACTIONS(964),
    [anon_sym_SQUOTE] = ACTIONS(964),
    [sym_comment] = ACTIONS(3),
  },
  [255] = {
    [sym_identifier] = ACTIONS(1071),
    [anon_sym_LBRACE] = ACTIONS(1073),
    [anon_sym_RBRACE] = ACTIONS(1073),
    [anon_sym_for] = ACTIONS(1071),
    [sym_yul_leave] = ACTIONS(1071),
    [anon_sym_break] = ACTIONS(1071),
    [anon_sym_continue] = ACTIONS(1071),
    [sym_yul_decimal_number] = ACTIONS(1071),
    [sym_yul_hex_number] = ACTIONS(1073),
    [anon_sym_true] = ACTIONS(1071),
    [anon_sym_false] = ACTIONS(1071),
    [anon_sym_let] = ACTIONS(1071),
    [anon_sym_if] = ACTIONS(1071),
    [anon_sym_switch] = ACTIONS(1071),
    [anon_sym_function] = ACTIONS(1071),
    [anon_sym_stop] = ACTIONS(1071),
    [anon_sym_add] = ACTIONS(1071),
    [anon_sym_sub] = ACTIONS(1071),
    [anon_sym_mul] = ACTIONS(1071),
    [anon_sym_div] = ACTIONS(1071),
    [anon_sym_sdiv] = ACTIONS(1071),
    [anon_sym_mod] = ACTIONS(1071),
    [anon_sym_smod] = ACTIONS(1071),
    [anon_sym_exp] = ACTIONS(1071),
    [anon_sym_not] = ACTIONS(1071),
    [anon_sym_lt] = ACTIONS(1071),
    [anon_sym_gt] = ACTIONS(1071),
    [anon_sym_slt] = ACTIONS(1071),
    [anon_sym_sgt] = ACTIONS(1071),
    [anon_sym_eq] = ACTIONS(1071),
    [anon_sym_iszero] = ACTIONS(1071),
    [anon_sym_and] = ACTIONS(1071),
    [anon_sym_or] = ACTIONS(1071),
    [anon_sym_xor] = ACTIONS(1071),
    [anon_sym_byte] = ACTIONS(1071),
    [anon_sym_shl] = ACTIONS(1071),
    [anon_sym_shr] = ACTIONS(1071),
    [anon_sym_sar] = ACTIONS(1071),
    [anon_sym_addmod] = ACTIONS(1071),
    [anon_sym_mulmod] = ACTIONS(1071),
    [anon_sym_signextend] = ACTIONS(1071),
    [anon_sym_keccak256] = ACTIONS(1071),
    [anon_sym_pop] = ACTIONS(1071),
    [anon_sym_mload] = ACTIONS(1071),
    [anon_sym_mstore] = ACTIONS(1071),
    [anon_sym_mstore8] = ACTIONS(1071),
    [anon_sym_sload] = ACTIONS(1071),
    [anon_sym_sstore] = ACTIONS(1071),
    [anon_sym_msize] = ACTIONS(1071),
    [anon_sym_gas] = ACTIONS(1071),
    [anon_sym_address] = ACTIONS(1071),
    [anon_sym_balance] = ACTIONS(1071),
    [anon_sym_selfbalance] = ACTIONS(1071),
    [anon_sym_caller] = ACTIONS(1071),
    [anon_sym_callvalue] = ACTIONS(1071),
    [anon_sym_calldataload] = ACTIONS(1071),
    [anon_sym_calldatasize] = ACTIONS(1071),
    [anon_sym_calldatacopy] = ACTIONS(1071),
    [anon_sym_extcodesize] = ACTIONS(1071),
    [anon_sym_extcodecopy] = ACTIONS(1071),
    [anon_sym_returndatasize] = ACTIONS(1071),
    [anon_sym_returndatacopy] = ACTIONS(1071),
    [anon_sym_extcodehash] = ACTIONS(1071),
    [anon_sym_create] = ACTIONS(1071),
    [anon_sym_create2] = ACTIONS(1071),
    [anon_sym_call] = ACTIONS(1071),
    [anon_sym_callcode] = ACTIONS(1071),
    [anon_sym_delegatecall] = ACTIONS(1071),
    [anon_sym_staticcall] = ACTIONS(1071),
    [anon_sym_return] = ACTIONS(1071),
    [anon_sym_revert] = ACTIONS(1071),
    [anon_sym_selfdestruct] = ACTIONS(1071),
    [anon_sym_invalid] = ACTIONS(1071),
    [anon_sym_log0] = ACTIONS(1071),
    [anon_sym_log1] = ACTIONS(1071),
    [anon_sym_log2] = ACTIONS(1071),
    [anon_sym_log3] = ACTIONS(1071),
    [anon_sym_log4] = ACTIONS(1071),
    [anon_sym_chainid] = ACTIONS(1071),
    [anon_sym_origin] = ACTIONS(1071),
    [anon_sym_gasprice] = ACTIONS(1071),
    [anon_sym_blockhash] = ACTIONS(1071),
    [anon_sym_coinbase] = ACTIONS(1071),
    [anon_sym_timestamp] = ACTIONS(1071),
    [anon_sym_number] = ACTIONS(1071),
    [anon_sym_difficulty] = ACTIONS(1071),
    [anon_sym_gaslimit] = ACTIONS(1071),
    [anon_sym_DQUOTE] = ACTIONS(1073),
    [anon_sym_SQUOTE] = ACTIONS(1073),
    [sym_comment] = ACTIONS(3),
  },
  [256] = {
    [sym_yul_identifier] = STATE(218),
    [sym__yul_expression] = STATE(699),
    [sym_yul_path] = STATE(699),
    [sym__yul_literal] = STATE(699),
    [sym_yul_string_literal] = STATE(699),
    [sym_yul_boolean] = STATE(699),
    [sym_yul_function_call] = STATE(699),
    [sym_yul_evm_builtin] = STATE(227),
    [sym_string] = STATE(235),
    [sym_identifier] = ACTIONS(1075),
    [anon_sym_RPAREN] = ACTIONS(1077),
    [sym_yul_decimal_number] = ACTIONS(1079),
    [sym_yul_hex_number] = ACTIONS(1081),
    [anon_sym_true] = ACTIONS(827),
    [anon_sym_false] = ACTIONS(827),
    [anon_sym_stop] = ACTIONS(837),
    [anon_sym_add] = ACTIONS(837),
    [anon_sym_sub] = ACTIONS(837),
    [anon_sym_mul] = ACTIONS(837),
    [anon_sym_div] = ACTIONS(837),
    [anon_sym_sdiv] = ACTIONS(837),
    [anon_sym_mod] = ACTIONS(837),
    [anon_sym_smod] = ACTIONS(837),
    [anon_sym_exp] = ACTIONS(837),
    [anon_sym_not] = ACTIONS(837),
    [anon_sym_lt] = ACTIONS(837),
    [anon_sym_gt] = ACTIONS(837),
    [anon_sym_slt] = ACTIONS(837),
    [anon_sym_sgt] = ACTIONS(837),
    [anon_sym_eq] = ACTIONS(837),
    [anon_sym_iszero] = ACTIONS(837),
    [anon_sym_and] = ACTIONS(837),
    [anon_sym_or] = ACTIONS(837),
    [anon_sym_xor] = ACTIONS(837),
    [anon_sym_byte] = ACTIONS(837),
    [anon_sym_shl] = ACTIONS(837),
    [anon_sym_shr] = ACTIONS(837),
    [anon_sym_sar] = ACTIONS(837),
    [anon_sym_addmod] = ACTIONS(837),
    [anon_sym_mulmod] = ACTIONS(837),
    [anon_sym_signextend] = ACTIONS(837),
    [anon_sym_keccak256] = ACTIONS(837),
    [anon_sym_pop] = ACTIONS(837),
    [anon_sym_mload] = ACTIONS(837),
    [anon_sym_mstore] = ACTIONS(837),
    [anon_sym_mstore8] = ACTIONS(837),
    [anon_sym_sload] = ACTIONS(837),
    [anon_sym_sstore] = ACTIONS(837),
    [anon_sym_msize] = ACTIONS(837),
    [anon_sym_gas] = ACTIONS(837),
    [anon_sym_address] = ACTIONS(837),
    [anon_sym_balance] = ACTIONS(837),
    [anon_sym_selfbalance] = ACTIONS(837),
    [anon_sym_caller] = ACTIONS(837),
    [anon_sym_callvalue] = ACTIONS(837),
    [anon_sym_calldataload] = ACTIONS(837),
    [anon_sym_calldatasize] = ACTIONS(837),
    [anon_sym_calldatacopy] = ACTIONS(837),
    [anon_sym_extcodesize] = ACTIONS(837),
    [anon_sym_extcodecopy] = ACTIONS(837),
    [anon_sym_returndatasize] = ACTIONS(837),
    [anon_sym_returndatacopy] = ACTIONS(837),
    [anon_sym_extcodehash] = ACTIONS(837),
    [anon_sym_create] = ACTIONS(837),
    [anon_sym_create2] = ACTIONS(837),
    [anon_sym_call] = ACTIONS(837),
    [anon_sym_callcode] = ACTIONS(837),
    [anon_sym_delegatecall] = ACTIONS(837),
    [anon_sym_staticcall] = ACTIONS(837),
    [anon_sym_return] = ACTIONS(837),
    [anon_sym_revert] = ACTIONS(837),
    [anon_sym_selfdestruct] = ACTIONS(837),
    [anon_sym_invalid] = ACTIONS(837),
    [anon_sym_log0] = ACTIONS(837),
    [anon_sym_log1] = ACTIONS(837),
    [anon_sym_log2] = ACTIONS(837),
    [anon_sym_log3] = ACTIONS(837),
    [anon_sym_log4] = ACTIONS(837),
    [anon_sym_chainid] = ACTIONS(837),
    [anon_sym_origin] = ACTIONS(837),
    [anon_sym_gasprice] = ACTIONS(837),
    [anon_sym_blockhash] = ACTIONS(837),
    [anon_sym_coinbase] = ACTIONS(837),
    [anon_sym_timestamp] = ACTIONS(837),
    [anon_sym_number] = ACTIONS(837),
    [anon_sym_difficulty] = ACTIONS(837),
    [anon_sym_gaslimit] = ACTIONS(837),
    [anon_sym_DQUOTE] = ACTIONS(99),
    [anon_sym_SQUOTE] = ACTIONS(101),
    [sym_comment] = ACTIONS(3),
  },
  [257] = {
    [sym_identifier] = ACTIONS(1083),
    [anon_sym_LBRACE] = ACTIONS(1085),
    [anon_sym_RBRACE] = ACTIONS(1085),
    [anon_sym_for] = ACTIONS(1083),
    [sym_yul_leave] = ACTIONS(1083),
    [anon_sym_break] = ACTIONS(1083),
    [anon_sym_continue] = ACTIONS(1083),
    [sym_yul_decimal_number] = ACTIONS(1083),
    [sym_yul_hex_number] = ACTIONS(1085),
    [anon_sym_true] = ACTIONS(1083),
    [anon_sym_false] = ACTIONS(1083),
    [anon_sym_let] = ACTIONS(1083),
    [anon_sym_if] = ACTIONS(1083),
    [anon_sym_switch] = ACTIONS(1083),
    [anon_sym_function] = ACTIONS(1083),
    [anon_sym_stop] = ACTIONS(1083),
    [anon_sym_add] = ACTIONS(1083),
    [anon_sym_sub] = ACTIONS(1083),
    [anon_sym_mul] = ACTIONS(1083),
    [anon_sym_div] = ACTIONS(1083),
    [anon_sym_sdiv] = ACTIONS(1083),
    [anon_sym_mod] = ACTIONS(1083),
    [anon_sym_smod] = ACTIONS(1083),
    [anon_sym_exp] = ACTIONS(1083),
    [anon_sym_not] = ACTIONS(1083),
    [anon_sym_lt] = ACTIONS(1083),
    [anon_sym_gt] = ACTIONS(1083),
    [anon_sym_slt] = ACTIONS(1083),
    [anon_sym_sgt] = ACTIONS(1083),
    [anon_sym_eq] = ACTIONS(1083),
    [anon_sym_iszero] = ACTIONS(1083),
    [anon_sym_and] = ACTIONS(1083),
    [anon_sym_or] = ACTIONS(1083),
    [anon_sym_xor] = ACTIONS(1083),
    [anon_sym_byte] = ACTIONS(1083),
    [anon_sym_shl] = ACTIONS(1083),
    [anon_sym_shr] = ACTIONS(1083),
    [anon_sym_sar] = ACTIONS(1083),
    [anon_sym_addmod] = ACTIONS(1083),
    [anon_sym_mulmod] = ACTIONS(1083),
    [anon_sym_signextend] = ACTIONS(1083),
    [anon_sym_keccak256] = ACTIONS(1083),
    [anon_sym_pop] = ACTIONS(1083),
    [anon_sym_mload] = ACTIONS(1083),
    [anon_sym_mstore] = ACTIONS(1083),
    [anon_sym_mstore8] = ACTIONS(1083),
    [anon_sym_sload] = ACTIONS(1083),
    [anon_sym_sstore] = ACTIONS(1083),
    [anon_sym_msize] = ACTIONS(1083),
    [anon_sym_gas] = ACTIONS(1083),
    [anon_sym_address] = ACTIONS(1083),
    [anon_sym_balance] = ACTIONS(1083),
    [anon_sym_selfbalance] = ACTIONS(1083),
    [anon_sym_caller] = ACTIONS(1083),
    [anon_sym_callvalue] = ACTIONS(1083),
    [anon_sym_calldataload] = ACTIONS(1083),
    [anon_sym_calldatasize] = ACTIONS(1083),
    [anon_sym_calldatacopy] = ACTIONS(1083),
    [anon_sym_extcodesize] = ACTIONS(1083),
    [anon_sym_extcodecopy] = ACTIONS(1083),
    [anon_sym_returndatasize] = ACTIONS(1083),
    [anon_sym_returndatacopy] = ACTIONS(1083),
    [anon_sym_extcodehash] = ACTIONS(1083),
    [anon_sym_create] = ACTIONS(1083),
    [anon_sym_create2] = ACTIONS(1083),
    [anon_sym_call] = ACTIONS(1083),
    [anon_sym_callcode] = ACTIONS(1083),
    [anon_sym_delegatecall] = ACTIONS(1083),
    [anon_sym_staticcall] = ACTIONS(1083),
    [anon_sym_return] = ACTIONS(1083),
    [anon_sym_revert] = ACTIONS(1083),
    [anon_sym_selfdestruct] = ACTIONS(1083),
    [anon_sym_invalid] = ACTIONS(1083),
    [anon_sym_log0] = ACTIONS(1083),
    [anon_sym_log1] = ACTIONS(1083),
    [anon_sym_log2] = ACTIONS(1083),
    [anon_sym_log3] = ACTIONS(1083),
    [anon_sym_log4] = ACTIONS(1083),
    [anon_sym_chainid] = ACTIONS(1083),
    [anon_sym_origin] = ACTIONS(1083),
    [anon_sym_gasprice] = ACTIONS(1083),
    [anon_sym_blockhash] = ACTIONS(1083),
    [anon_sym_coinbase] = ACTIONS(1083),
    [anon_sym_timestamp] = ACTIONS(1083),
    [anon_sym_number] = ACTIONS(1083),
    [anon_sym_difficulty] = ACTIONS(1083),
    [anon_sym_gaslimit] = ACTIONS(1083),
    [anon_sym_DQUOTE] = ACTIONS(1085),
    [anon_sym_SQUOTE] = ACTIONS(1085),
    [sym_comment] = ACTIONS(3),
  },
  [258] = {
    [sym_yul_identifier] = STATE(218),
    [sym__yul_expression] = STATE(699),
    [sym_yul_path] = STATE(699),
    [sym__yul_literal] = STATE(699),
    [sym_yul_string_literal] = STATE(699),
    [sym_yul_boolean] = STATE(699),
    [sym_yul_function_call] = STATE(699),
    [sym_yul_evm_builtin] = STATE(227),
    [sym_string] = STATE(235),
    [sym_identifier] = ACTIONS(1075),
    [anon_sym_RPAREN] = ACTIONS(1087),
    [sym_yul_decimal_number] = ACTIONS(1079),
    [sym_yul_hex_number] = ACTIONS(1081),
    [anon_sym_true] = ACTIONS(827),
    [anon_sym_false] = ACTIONS(827),
    [anon_sym_stop] = ACTIONS(837),
    [anon_sym_add] = ACTIONS(837),
    [anon_sym_sub] = ACTIONS(837),
    [anon_sym_mul] = ACTIONS(837),
    [anon_sym_div] = ACTIONS(837),
    [anon_sym_sdiv] = ACTIONS(837),
    [anon_sym_mod] = ACTIONS(837),
    [anon_sym_smod] = ACTIONS(837),
    [anon_sym_exp] = ACTIONS(837),
    [anon_sym_not] = ACTIONS(837),
    [anon_sym_lt] = ACTIONS(837),
    [anon_sym_gt] = ACTIONS(837),
    [anon_sym_slt] = ACTIONS(837),
    [anon_sym_sgt] = ACTIONS(837),
    [anon_sym_eq] = ACTIONS(837),
    [anon_sym_iszero] = ACTIONS(837),
    [anon_sym_and] = ACTIONS(837),
    [anon_sym_or] = ACTIONS(837),
    [anon_sym_xor] = ACTIONS(837),
    [anon_sym_byte] = ACTIONS(837),
    [anon_sym_shl] = ACTIONS(837),
    [anon_sym_shr] = ACTIONS(837),
    [anon_sym_sar] = ACTIONS(837),
    [anon_sym_addmod] = ACTIONS(837),
    [anon_sym_mulmod] = ACTIONS(837),
    [anon_sym_signextend] = ACTIONS(837),
    [anon_sym_keccak256] = ACTIONS(837),
    [anon_sym_pop] = ACTIONS(837),
    [anon_sym_mload] = ACTIONS(837),
    [anon_sym_mstore] = ACTIONS(837),
    [anon_sym_mstore8] = ACTIONS(837),
    [anon_sym_sload] = ACTIONS(837),
    [anon_sym_sstore] = ACTIONS(837),
    [anon_sym_msize] = ACTIONS(837),
    [anon_sym_gas] = ACTIONS(837),
    [anon_sym_address] = ACTIONS(837),
    [anon_sym_balance] = ACTIONS(837),
    [anon_sym_selfbalance] = ACTIONS(837),
    [anon_sym_caller] = ACTIONS(837),
    [anon_sym_callvalue] = ACTIONS(837),
    [anon_sym_calldataload] = ACTIONS(837),
    [anon_sym_calldatasize] = ACTIONS(837),
    [anon_sym_calldatacopy] = ACTIONS(837),
    [anon_sym_extcodesize] = ACTIONS(837),
    [anon_sym_extcodecopy] = ACTIONS(837),
    [anon_sym_returndatasize] = ACTIONS(837),
    [anon_sym_returndatacopy] = ACTIONS(837),
    [anon_sym_extcodehash] = ACTIONS(837),
    [anon_sym_create] = ACTIONS(837),
    [anon_sym_create2] = ACTIONS(837),
    [anon_sym_call] = ACTIONS(837),
    [anon_sym_callcode] = ACTIONS(837),
    [anon_sym_delegatecall] = ACTIONS(837),
    [anon_sym_staticcall] = ACTIONS(837),
    [anon_sym_return] = ACTIONS(837),
    [anon_sym_revert] = ACTIONS(837),
    [anon_sym_selfdestruct] = ACTIONS(837),
    [anon_sym_invalid] = ACTIONS(837),
    [anon_sym_log0] = ACTIONS(837),
    [anon_sym_log1] = ACTIONS(837),
    [anon_sym_log2] = ACTIONS(837),
    [anon_sym_log3] = ACTIONS(837),
    [anon_sym_log4] = ACTIONS(837),
    [anon_sym_chainid] = ACTIONS(837),
    [anon_sym_origin] = ACTIONS(837),
    [anon_sym_gasprice] = ACTIONS(837),
    [anon_sym_blockhash] = ACTIONS(837),
    [anon_sym_coinbase] = ACTIONS(837),
    [anon_sym_timestamp] = ACTIONS(837),
    [anon_sym_number] = ACTIONS(837),
    [anon_sym_difficulty] = ACTIONS(837),
    [anon_sym_gaslimit] = ACTIONS(837),
    [anon_sym_DQUOTE] = ACTIONS(99),
    [anon_sym_SQUOTE] = ACTIONS(101),
    [sym_comment] = ACTIONS(3),
  },
  [259] = {
    [sym_identifier] = ACTIONS(1089),
    [anon_sym_LBRACE] = ACTIONS(1091),
    [anon_sym_RBRACE] = ACTIONS(1091),
    [anon_sym_for] = ACTIONS(1089),
    [sym_yul_leave] = ACTIONS(1089),
    [anon_sym_break] = ACTIONS(1089),
    [anon_sym_continue] = ACTIONS(1089),
    [sym_yul_decimal_number] = ACTIONS(1089),
    [sym_yul_hex_number] = ACTIONS(1091),
    [anon_sym_true] = ACTIONS(1089),
    [anon_sym_false] = ACTIONS(1089),
    [anon_sym_let] = ACTIONS(1089),
    [anon_sym_if] = ACTIONS(1089),
    [anon_sym_switch] = ACTIONS(1089),
    [anon_sym_function] = ACTIONS(1089),
    [anon_sym_stop] = ACTIONS(1089),
    [anon_sym_add] = ACTIONS(1089),
    [anon_sym_sub] = ACTIONS(1089),
    [anon_sym_mul] = ACTIONS(1089),
    [anon_sym_div] = ACTIONS(1089),
    [anon_sym_sdiv] = ACTIONS(1089),
    [anon_sym_mod] = ACTIONS(1089),
    [anon_sym_smod] = ACTIONS(1089),
    [anon_sym_exp] = ACTIONS(1089),
    [anon_sym_not] = ACTIONS(1089),
    [anon_sym_lt] = ACTIONS(1089),
    [anon_sym_gt] = ACTIONS(1089),
    [anon_sym_slt] = ACTIONS(1089),
    [anon_sym_sgt] = ACTIONS(1089),
    [anon_sym_eq] = ACTIONS(1089),
    [anon_sym_iszero] = ACTIONS(1089),
    [anon_sym_and] = ACTIONS(1089),
    [anon_sym_or] = ACTIONS(1089),
    [anon_sym_xor] = ACTIONS(1089),
    [anon_sym_byte] = ACTIONS(1089),
    [anon_sym_shl] = ACTIONS(1089),
    [anon_sym_shr] = ACTIONS(1089),
    [anon_sym_sar] = ACTIONS(1089),
    [anon_sym_addmod] = ACTIONS(1089),
    [anon_sym_mulmod] = ACTIONS(1089),
    [anon_sym_signextend] = ACTIONS(1089),
    [anon_sym_keccak256] = ACTIONS(1089),
    [anon_sym_pop] = ACTIONS(1089),
    [anon_sym_mload] = ACTIONS(1089),
    [anon_sym_mstore] = ACTIONS(1089),
    [anon_sym_mstore8] = ACTIONS(1089),
    [anon_sym_sload] = ACTIONS(1089),
    [anon_sym_sstore] = ACTIONS(1089),
    [anon_sym_msize] = ACTIONS(1089),
    [anon_sym_gas] = ACTIONS(1089),
    [anon_sym_address] = ACTIONS(1089),
    [anon_sym_balance] = ACTIONS(1089),
    [anon_sym_selfbalance] = ACTIONS(1089),
    [anon_sym_caller] = ACTIONS(1089),
    [anon_sym_callvalue] = ACTIONS(1089),
    [anon_sym_calldataload] = ACTIONS(1089),
    [anon_sym_calldatasize] = ACTIONS(1089),
    [anon_sym_calldatacopy] = ACTIONS(1089),
    [anon_sym_extcodesize] = ACTIONS(1089),
    [anon_sym_extcodecopy] = ACTIONS(1089),
    [anon_sym_returndatasize] = ACTIONS(1089),
    [anon_sym_returndatacopy] = ACTIONS(1089),
    [anon_sym_extcodehash] = ACTIONS(1089),
    [anon_sym_create] = ACTIONS(1089),
    [anon_sym_create2] = ACTIONS(1089),
    [anon_sym_call] = ACTIONS(1089),
    [anon_sym_callcode] = ACTIONS(1089),
    [anon_sym_delegatecall] = ACTIONS(1089),
    [anon_sym_staticcall] = ACTIONS(1089),
    [anon_sym_return] = ACTIONS(1089),
    [anon_sym_revert] = ACTIONS(1089),
    [anon_sym_selfdestruct] = ACTIONS(1089),
    [anon_sym_invalid] = ACTIONS(1089),
    [anon_sym_log0] = ACTIONS(1089),
    [anon_sym_log1] = ACTIONS(1089),
    [anon_sym_log2] = ACTIONS(1089),
    [anon_sym_log3] = ACTIONS(1089),
    [anon_sym_log4] = ACTIONS(1089),
    [anon_sym_chainid] = ACTIONS(1089),
    [anon_sym_origin] = ACTIONS(1089),
    [anon_sym_gasprice] = ACTIONS(1089),
    [anon_sym_blockhash] = ACTIONS(1089),
    [anon_sym_coinbase] = ACTIONS(1089),
    [anon_sym_timestamp] = ACTIONS(1089),
    [anon_sym_number] = ACTIONS(1089),
    [anon_sym_difficulty] = ACTIONS(1089),
    [anon_sym_gaslimit] = ACTIONS(1089),
    [anon_sym_DQUOTE] = ACTIONS(1091),
    [anon_sym_SQUOTE] = ACTIONS(1091),
    [sym_comment] = ACTIONS(3),
  },
  [260] = {
    [sym_identifier] = ACTIONS(1093),
    [anon_sym_LBRACE] = ACTIONS(1095),
    [anon_sym_RBRACE] = ACTIONS(1095),
    [anon_sym_for] = ACTIONS(1093),
    [sym_yul_leave] = ACTIONS(1093),
    [anon_sym_break] = ACTIONS(1093),
    [anon_sym_continue] = ACTIONS(1093),
    [sym_yul_decimal_number] = ACTIONS(1093),
    [sym_yul_hex_number] = ACTIONS(1095),
    [anon_sym_true] = ACTIONS(1093),
    [anon_sym_false] = ACTIONS(1093),
    [anon_sym_let] = ACTIONS(1093),
    [anon_sym_if] = ACTIONS(1093),
    [anon_sym_switch] = ACTIONS(1093),
    [anon_sym_function] = ACTIONS(1093),
    [anon_sym_stop] = ACTIONS(1093),
    [anon_sym_add] = ACTIONS(1093),
    [anon_sym_sub] = ACTIONS(1093),
    [anon_sym_mul] = ACTIONS(1093),
    [anon_sym_div] = ACTIONS(1093),
    [anon_sym_sdiv] = ACTIONS(1093),
    [anon_sym_mod] = ACTIONS(1093),
    [anon_sym_smod] = ACTIONS(1093),
    [anon_sym_exp] = ACTIONS(1093),
    [anon_sym_not] = ACTIONS(1093),
    [anon_sym_lt] = ACTIONS(1093),
    [anon_sym_gt] = ACTIONS(1093),
    [anon_sym_slt] = ACTIONS(1093),
    [anon_sym_sgt] = ACTIONS(1093),
    [anon_sym_eq] = ACTIONS(1093),
    [anon_sym_iszero] = ACTIONS(1093),
    [anon_sym_and] = ACTIONS(1093),
    [anon_sym_or] = ACTIONS(1093),
    [anon_sym_xor] = ACTIONS(1093),
    [anon_sym_byte] = ACTIONS(1093),
    [anon_sym_shl] = ACTIONS(1093),
    [anon_sym_shr] = ACTIONS(1093),
    [anon_sym_sar] = ACTIONS(1093),
    [anon_sym_addmod] = ACTIONS(1093),
    [anon_sym_mulmod] = ACTIONS(1093),
    [anon_sym_signextend] = ACTIONS(1093),
    [anon_sym_keccak256] = ACTIONS(1093),
    [anon_sym_pop] = ACTIONS(1093),
    [anon_sym_mload] = ACTIONS(1093),
    [anon_sym_mstore] = ACTIONS(1093),
    [anon_sym_mstore8] = ACTIONS(1093),
    [anon_sym_sload] = ACTIONS(1093),
    [anon_sym_sstore] = ACTIONS(1093),
    [anon_sym_msize] = ACTIONS(1093),
    [anon_sym_gas] = ACTIONS(1093),
    [anon_sym_address] = ACTIONS(1093),
    [anon_sym_balance] = ACTIONS(1093),
    [anon_sym_selfbalance] = ACTIONS(1093),
    [anon_sym_caller] = ACTIONS(1093),
    [anon_sym_callvalue] = ACTIONS(1093),
    [anon_sym_calldataload] = ACTIONS(1093),
    [anon_sym_calldatasize] = ACTIONS(1093),
    [anon_sym_calldatacopy] = ACTIONS(1093),
    [anon_sym_extcodesize] = ACTIONS(1093),
    [anon_sym_extcodecopy] = ACTIONS(1093),
    [anon_sym_returndatasize] = ACTIONS(1093),
    [anon_sym_returndatacopy] = ACTIONS(1093),
    [anon_sym_extcodehash] = ACTIONS(1093),
    [anon_sym_create] = ACTIONS(1093),
    [anon_sym_create2] = ACTIONS(1093),
    [anon_sym_call] = ACTIONS(1093),
    [anon_sym_callcode] = ACTIONS(1093),
    [anon_sym_delegatecall] = ACTIONS(1093),
    [anon_sym_staticcall] = ACTIONS(1093),
    [anon_sym_return] = ACTIONS(1093),
    [anon_sym_revert] = ACTIONS(1093),
    [anon_sym_selfdestruct] = ACTIONS(1093),
    [anon_sym_invalid] = ACTIONS(1093),
    [anon_sym_log0] = ACTIONS(1093),
    [anon_sym_log1] = ACTIONS(1093),
    [anon_sym_log2] = ACTIONS(1093),
    [anon_sym_log3] = ACTIONS(1093),
    [anon_sym_log4] = ACTIONS(1093),
    [anon_sym_chainid] = ACTIONS(1093),
    [anon_sym_origin] = ACTIONS(1093),
    [anon_sym_gasprice] = ACTIONS(1093),
    [anon_sym_blockhash] = ACTIONS(1093),
    [anon_sym_coinbase] = ACTIONS(1093),
    [anon_sym_timestamp] = ACTIONS(1093),
    [anon_sym_number] = ACTIONS(1093),
    [anon_sym_difficulty] = ACTIONS(1093),
    [anon_sym_gaslimit] = ACTIONS(1093),
    [anon_sym_DQUOTE] = ACTIONS(1095),
    [anon_sym_SQUOTE] = ACTIONS(1095),
    [sym_comment] = ACTIONS(3),
  },
  [261] = {
    [sym_identifier] = ACTIONS(1097),
    [anon_sym_LBRACE] = ACTIONS(1099),
    [anon_sym_RBRACE] = ACTIONS(1099),
    [anon_sym_for] = ACTIONS(1097),
    [sym_yul_leave] = ACTIONS(1097),
    [anon_sym_break] = ACTIONS(1097),
    [anon_sym_continue] = ACTIONS(1097),
    [sym_yul_decimal_number] = ACTIONS(1097),
    [sym_yul_hex_number] = ACTIONS(1099),
    [anon_sym_true] = ACTIONS(1097),
    [anon_sym_false] = ACTIONS(1097),
    [anon_sym_let] = ACTIONS(1097),
    [anon_sym_if] = ACTIONS(1097),
    [anon_sym_switch] = ACTIONS(1097),
    [anon_sym_function] = ACTIONS(1097),
    [anon_sym_stop] = ACTIONS(1097),
    [anon_sym_add] = ACTIONS(1097),
    [anon_sym_sub] = ACTIONS(1097),
    [anon_sym_mul] = ACTIONS(1097),
    [anon_sym_div] = ACTIONS(1097),
    [anon_sym_sdiv] = ACTIONS(1097),
    [anon_sym_mod] = ACTIONS(1097),
    [anon_sym_smod] = ACTIONS(1097),
    [anon_sym_exp] = ACTIONS(1097),
    [anon_sym_not] = ACTIONS(1097),
    [anon_sym_lt] = ACTIONS(1097),
    [anon_sym_gt] = ACTIONS(1097),
    [anon_sym_slt] = ACTIONS(1097),
    [anon_sym_sgt] = ACTIONS(1097),
    [anon_sym_eq] = ACTIONS(1097),
    [anon_sym_iszero] = ACTIONS(1097),
    [anon_sym_and] = ACTIONS(1097),
    [anon_sym_or] = ACTIONS(1097),
    [anon_sym_xor] = ACTIONS(1097),
    [anon_sym_byte] = ACTIONS(1097),
    [anon_sym_shl] = ACTIONS(1097),
    [anon_sym_shr] = ACTIONS(1097),
    [anon_sym_sar] = ACTIONS(1097),
    [anon_sym_addmod] = ACTIONS(1097),
    [anon_sym_mulmod] = ACTIONS(1097),
    [anon_sym_signextend] = ACTIONS(1097),
    [anon_sym_keccak256] = ACTIONS(1097),
    [anon_sym_pop] = ACTIONS(1097),
    [anon_sym_mload] = ACTIONS(1097),
    [anon_sym_mstore] = ACTIONS(1097),
    [anon_sym_mstore8] = ACTIONS(1097),
    [anon_sym_sload] = ACTIONS(1097),
    [anon_sym_sstore] = ACTIONS(1097),
    [anon_sym_msize] = ACTIONS(1097),
    [anon_sym_gas] = ACTIONS(1097),
    [anon_sym_address] = ACTIONS(1097),
    [anon_sym_balance] = ACTIONS(1097),
    [anon_sym_selfbalance] = ACTIONS(1097),
    [anon_sym_caller] = ACTIONS(1097),
    [anon_sym_callvalue] = ACTIONS(1097),
    [anon_sym_calldataload] = ACTIONS(1097),
    [anon_sym_calldatasize] = ACTIONS(1097),
    [anon_sym_calldatacopy] = ACTIONS(1097),
    [anon_sym_extcodesize] = ACTIONS(1097),
    [anon_sym_extcodecopy] = ACTIONS(1097),
    [anon_sym_returndatasize] = ACTIONS(1097),
    [anon_sym_returndatacopy] = ACTIONS(1097),
    [anon_sym_extcodehash] = ACTIONS(1097),
    [anon_sym_create] = ACTIONS(1097),
    [anon_sym_create2] = ACTIONS(1097),
    [anon_sym_call] = ACTIONS(1097),
    [anon_sym_callcode] = ACTIONS(1097),
    [anon_sym_delegatecall] = ACTIONS(1097),
    [anon_sym_staticcall] = ACTIONS(1097),
    [anon_sym_return] = ACTIONS(1097),
    [anon_sym_revert] = ACTIONS(1097),
    [anon_sym_selfdestruct] = ACTIONS(1097),
    [anon_sym_invalid] = ACTIONS(1097),
    [anon_sym_log0] = ACTIONS(1097),
    [anon_sym_log1] = ACTIONS(1097),
    [anon_sym_log2] = ACTIONS(1097),
    [anon_sym_log3] = ACTIONS(1097),
    [anon_sym_log4] = ACTIONS(1097),
    [anon_sym_chainid] = ACTIONS(1097),
    [anon_sym_origin] = ACTIONS(1097),
    [anon_sym_gasprice] = ACTIONS(1097),
    [anon_sym_blockhash] = ACTIONS(1097),
    [anon_sym_coinbase] = ACTIONS(1097),
    [anon_sym_timestamp] = ACTIONS(1097),
    [anon_sym_number] = ACTIONS(1097),
    [anon_sym_difficulty] = ACTIONS(1097),
    [anon_sym_gaslimit] = ACTIONS(1097),
    [anon_sym_DQUOTE] = ACTIONS(1099),
    [anon_sym_SQUOTE] = ACTIONS(1099),
    [sym_comment] = ACTIONS(3),
  },
  [262] = {
    [sym_identifier] = ACTIONS(1101),
    [anon_sym_LBRACE] = ACTIONS(1103),
    [anon_sym_RBRACE] = ACTIONS(1103),
    [anon_sym_for] = ACTIONS(1101),
    [sym_yul_leave] = ACTIONS(1101),
    [anon_sym_break] = ACTIONS(1101),
    [anon_sym_continue] = ACTIONS(1101),
    [sym_yul_decimal_number] = ACTIONS(1101),
    [sym_yul_hex_number] = ACTIONS(1103),
    [anon_sym_true] = ACTIONS(1101),
    [anon_sym_false] = ACTIONS(1101),
    [anon_sym_let] = ACTIONS(1101),
    [anon_sym_if] = ACTIONS(1101),
    [anon_sym_switch] = ACTIONS(1101),
    [anon_sym_function] = ACTIONS(1101),
    [anon_sym_stop] = ACTIONS(1101),
    [anon_sym_add] = ACTIONS(1101),
    [anon_sym_sub] = ACTIONS(1101),
    [anon_sym_mul] = ACTIONS(1101),
    [anon_sym_div] = ACTIONS(1101),
    [anon_sym_sdiv] = ACTIONS(1101),
    [anon_sym_mod] = ACTIONS(1101),
    [anon_sym_smod] = ACTIONS(1101),
    [anon_sym_exp] = ACTIONS(1101),
    [anon_sym_not] = ACTIONS(1101),
    [anon_sym_lt] = ACTIONS(1101),
    [anon_sym_gt] = ACTIONS(1101),
    [anon_sym_slt] = ACTIONS(1101),
    [anon_sym_sgt] = ACTIONS(1101),
    [anon_sym_eq] = ACTIONS(1101),
    [anon_sym_iszero] = ACTIONS(1101),
    [anon_sym_and] = ACTIONS(1101),
    [anon_sym_or] = ACTIONS(1101),
    [anon_sym_xor] = ACTIONS(1101),
    [anon_sym_byte] = ACTIONS(1101),
    [anon_sym_shl] = ACTIONS(1101),
    [anon_sym_shr] = ACTIONS(1101),
    [anon_sym_sar] = ACTIONS(1101),
    [anon_sym_addmod] = ACTIONS(1101),
    [anon_sym_mulmod] = ACTIONS(1101),
    [anon_sym_signextend] = ACTIONS(1101),
    [anon_sym_keccak256] = ACTIONS(1101),
    [anon_sym_pop] = ACTIONS(1101),
    [anon_sym_mload] = ACTIONS(1101),
    [anon_sym_mstore] = ACTIONS(1101),
    [anon_sym_mstore8] = ACTIONS(1101),
    [anon_sym_sload] = ACTIONS(1101),
    [anon_sym_sstore] = ACTIONS(1101),
    [anon_sym_msize] = ACTIONS(1101),
    [anon_sym_gas] = ACTIONS(1101),
    [anon_sym_address] = ACTIONS(1101),
    [anon_sym_balance] = ACTIONS(1101),
    [anon_sym_selfbalance] = ACTIONS(1101),
    [anon_sym_caller] = ACTIONS(1101),
    [anon_sym_callvalue] = ACTIONS(1101),
    [anon_sym_calldataload] = ACTIONS(1101),
    [anon_sym_calldatasize] = ACTIONS(1101),
    [anon_sym_calldatacopy] = ACTIONS(1101),
    [anon_sym_extcodesize] = ACTIONS(1101),
    [anon_sym_extcodecopy] = ACTIONS(1101),
    [anon_sym_returndatasize] = ACTIONS(1101),
    [anon_sym_returndatacopy] = ACTIONS(1101),
    [anon_sym_extcodehash] = ACTIONS(1101),
    [anon_sym_create] = ACTIONS(1101),
    [anon_sym_create2] = ACTIONS(1101),
    [anon_sym_call] = ACTIONS(1101),
    [anon_sym_callcode] = ACTIONS(1101),
    [anon_sym_delegatecall] = ACTIONS(1101),
    [anon_sym_staticcall] = ACTIONS(1101),
    [anon_sym_return] = ACTIONS(1101),
    [anon_sym_revert] = ACTIONS(1101),
    [anon_sym_selfdestruct] = ACTIONS(1101),
    [anon_sym_invalid] = ACTIONS(1101),
    [anon_sym_log0] = ACTIONS(1101),
    [anon_sym_log1] = ACTIONS(1101),
    [anon_sym_log2] = ACTIONS(1101),
    [anon_sym_log3] = ACTIONS(1101),
    [anon_sym_log4] = ACTIONS(1101),
    [anon_sym_chainid] = ACTIONS(1101),
    [anon_sym_origin] = ACTIONS(1101),
    [anon_sym_gasprice] = ACTIONS(1101),
    [anon_sym_blockhash] = ACTIONS(1101),
    [anon_sym_coinbase] = ACTIONS(1101),
    [anon_sym_timestamp] = ACTIONS(1101),
    [anon_sym_number] = ACTIONS(1101),
    [anon_sym_difficulty] = ACTIONS(1101),
    [anon_sym_gaslimit] = ACTIONS(1101),
    [anon_sym_DQUOTE] = ACTIONS(1103),
    [anon_sym_SQUOTE] = ACTIONS(1103),
    [sym_comment] = ACTIONS(3),
  },
  [263] = {
    [sym_identifier] = ACTIONS(1105),
    [anon_sym_LBRACE] = ACTIONS(1107),
    [anon_sym_RBRACE] = ACTIONS(1107),
    [anon_sym_for] = ACTIONS(1105),
    [sym_yul_leave] = ACTIONS(1105),
    [anon_sym_break] = ACTIONS(1105),
    [anon_sym_continue] = ACTIONS(1105),
    [sym_yul_decimal_number] = ACTIONS(1105),
    [sym_yul_hex_number] = ACTIONS(1107),
    [anon_sym_true] = ACTIONS(1105),
    [anon_sym_false] = ACTIONS(1105),
    [anon_sym_let] = ACTIONS(1105),
    [anon_sym_if] = ACTIONS(1105),
    [anon_sym_switch] = ACTIONS(1105),
    [anon_sym_function] = ACTIONS(1105),
    [anon_sym_stop] = ACTIONS(1105),
    [anon_sym_add] = ACTIONS(1105),
    [anon_sym_sub] = ACTIONS(1105),
    [anon_sym_mul] = ACTIONS(1105),
    [anon_sym_div] = ACTIONS(1105),
    [anon_sym_sdiv] = ACTIONS(1105),
    [anon_sym_mod] = ACTIONS(1105),
    [anon_sym_smod] = ACTIONS(1105),
    [anon_sym_exp] = ACTIONS(1105),
    [anon_sym_not] = ACTIONS(1105),
    [anon_sym_lt] = ACTIONS(1105),
    [anon_sym_gt] = ACTIONS(1105),
    [anon_sym_slt] = ACTIONS(1105),
    [anon_sym_sgt] = ACTIONS(1105),
    [anon_sym_eq] = ACTIONS(1105),
    [anon_sym_iszero] = ACTIONS(1105),
    [anon_sym_and] = ACTIONS(1105),
    [anon_sym_or] = ACTIONS(1105),
    [anon_sym_xor] = ACTIONS(1105),
    [anon_sym_byte] = ACTIONS(1105),
    [anon_sym_shl] = ACTIONS(1105),
    [anon_sym_shr] = ACTIONS(1105),
    [anon_sym_sar] = ACTIONS(1105),
    [anon_sym_addmod] = ACTIONS(1105),
    [anon_sym_mulmod] = ACTIONS(1105),
    [anon_sym_signextend] = ACTIONS(1105),
    [anon_sym_keccak256] = ACTIONS(1105),
    [anon_sym_pop] = ACTIONS(1105),
    [anon_sym_mload] = ACTIONS(1105),
    [anon_sym_mstore] = ACTIONS(1105),
    [anon_sym_mstore8] = ACTIONS(1105),
    [anon_sym_sload] = ACTIONS(1105),
    [anon_sym_sstore] = ACTIONS(1105),
    [anon_sym_msize] = ACTIONS(1105),
    [anon_sym_gas] = ACTIONS(1105),
    [anon_sym_address] = ACTIONS(1105),
    [anon_sym_balance] = ACTIONS(1105),
    [anon_sym_selfbalance] = ACTIONS(1105),
    [anon_sym_caller] = ACTIONS(1105),
    [anon_sym_callvalue] = ACTIONS(1105),
    [anon_sym_calldataload] = ACTIONS(1105),
    [anon_sym_calldatasize] = ACTIONS(1105),
    [anon_sym_calldatacopy] = ACTIONS(1105),
    [anon_sym_extcodesize] = ACTIONS(1105),
    [anon_sym_extcodecopy] = ACTIONS(1105),
    [anon_sym_returndatasize] = ACTIONS(1105),
    [anon_sym_returndatacopy] = ACTIONS(1105),
    [anon_sym_extcodehash] = ACTIONS(1105),
    [anon_sym_create] = ACTIONS(1105),
    [anon_sym_create2] = ACTIONS(1105),
    [anon_sym_call] = ACTIONS(1105),
    [anon_sym_callcode] = ACTIONS(1105),
    [anon_sym_delegatecall] = ACTIONS(1105),
    [anon_sym_staticcall] = ACTIONS(1105),
    [anon_sym_return] = ACTIONS(1105),
    [anon_sym_revert] = ACTIONS(1105),
    [anon_sym_selfdestruct] = ACTIONS(1105),
    [anon_sym_invalid] = ACTIONS(1105),
    [anon_sym_log0] = ACTIONS(1105),
    [anon_sym_log1] = ACTIONS(1105),
    [anon_sym_log2] = ACTIONS(1105),
    [anon_sym_log3] = ACTIONS(1105),
    [anon_sym_log4] = ACTIONS(1105),
    [anon_sym_chainid] = ACTIONS(1105),
    [anon_sym_origin] = ACTIONS(1105),
    [anon_sym_gasprice] = ACTIONS(1105),
    [anon_sym_blockhash] = ACTIONS(1105),
    [anon_sym_coinbase] = ACTIONS(1105),
    [anon_sym_timestamp] = ACTIONS(1105),
    [anon_sym_number] = ACTIONS(1105),
    [anon_sym_difficulty] = ACTIONS(1105),
    [anon_sym_gaslimit] = ACTIONS(1105),
    [anon_sym_DQUOTE] = ACTIONS(1107),
    [anon_sym_SQUOTE] = ACTIONS(1107),
    [sym_comment] = ACTIONS(3),
  },
  [264] = {
    [sym_identifier] = ACTIONS(1109),
    [anon_sym_LBRACE] = ACTIONS(1111),
    [anon_sym_RBRACE] = ACTIONS(1111),
    [anon_sym_for] = ACTIONS(1109),
    [sym_yul_leave] = ACTIONS(1109),
    [anon_sym_break] = ACTIONS(1109),
    [anon_sym_continue] = ACTIONS(1109),
    [sym_yul_decimal_number] = ACTIONS(1109),
    [sym_yul_hex_number] = ACTIONS(1111),
    [anon_sym_true] = ACTIONS(1109),
    [anon_sym_false] = ACTIONS(1109),
    [anon_sym_let] = ACTIONS(1109),
    [anon_sym_if] = ACTIONS(1109),
    [anon_sym_switch] = ACTIONS(1109),
    [anon_sym_function] = ACTIONS(1109),
    [anon_sym_stop] = ACTIONS(1109),
    [anon_sym_add] = ACTIONS(1109),
    [anon_sym_sub] = ACTIONS(1109),
    [anon_sym_mul] = ACTIONS(1109),
    [anon_sym_div] = ACTIONS(1109),
    [anon_sym_sdiv] = ACTIONS(1109),
    [anon_sym_mod] = ACTIONS(1109),
    [anon_sym_smod] = ACTIONS(1109),
    [anon_sym_exp] = ACTIONS(1109),
    [anon_sym_not] = ACTIONS(1109),
    [anon_sym_lt] = ACTIONS(1109),
    [anon_sym_gt] = ACTIONS(1109),
    [anon_sym_slt] = ACTIONS(1109),
    [anon_sym_sgt] = ACTIONS(1109),
    [anon_sym_eq] = ACTIONS(1109),
    [anon_sym_iszero] = ACTIONS(1109),
    [anon_sym_and] = ACTIONS(1109),
    [anon_sym_or] = ACTIONS(1109),
    [anon_sym_xor] = ACTIONS(1109),
    [anon_sym_byte] = ACTIONS(1109),
    [anon_sym_shl] = ACTIONS(1109),
    [anon_sym_shr] = ACTIONS(1109),
    [anon_sym_sar] = ACTIONS(1109),
    [anon_sym_addmod] = ACTIONS(1109),
    [anon_sym_mulmod] = ACTIONS(1109),
    [anon_sym_signextend] = ACTIONS(1109),
    [anon_sym_keccak256] = ACTIONS(1109),
    [anon_sym_pop] = ACTIONS(1109),
    [anon_sym_mload] = ACTIONS(1109),
    [anon_sym_mstore] = ACTIONS(1109),
    [anon_sym_mstore8] = ACTIONS(1109),
    [anon_sym_sload] = ACTIONS(1109),
    [anon_sym_sstore] = ACTIONS(1109),
    [anon_sym_msize] = ACTIONS(1109),
    [anon_sym_gas] = ACTIONS(1109),
    [anon_sym_address] = ACTIONS(1109),
    [anon_sym_balance] = ACTIONS(1109),
    [anon_sym_selfbalance] = ACTIONS(1109),
    [anon_sym_caller] = ACTIONS(1109),
    [anon_sym_callvalue] = ACTIONS(1109),
    [anon_sym_calldataload] = ACTIONS(1109),
    [anon_sym_calldatasize] = ACTIONS(1109),
    [anon_sym_calldatacopy] = ACTIONS(1109),
    [anon_sym_extcodesize] = ACTIONS(1109),
    [anon_sym_extcodecopy] = ACTIONS(1109),
    [anon_sym_returndatasize] = ACTIONS(1109),
    [anon_sym_returndatacopy] = ACTIONS(1109),
    [anon_sym_extcodehash] = ACTIONS(1109),
    [anon_sym_create] = ACTIONS(1109),
    [anon_sym_create2] = ACTIONS(1109),
    [anon_sym_call] = ACTIONS(1109),
    [anon_sym_callcode] = ACTIONS(1109),
    [anon_sym_delegatecall] = ACTIONS(1109),
    [anon_sym_staticcall] = ACTIONS(1109),
    [anon_sym_return] = ACTIONS(1109),
    [anon_sym_revert] = ACTIONS(1109),
    [anon_sym_selfdestruct] = ACTIONS(1109),
    [anon_sym_invalid] = ACTIONS(1109),
    [anon_sym_log0] = ACTIONS(1109),
    [anon_sym_log1] = ACTIONS(1109),
    [anon_sym_log2] = ACTIONS(1109),
    [anon_sym_log3] = ACTIONS(1109),
    [anon_sym_log4] = ACTIONS(1109),
    [anon_sym_chainid] = ACTIONS(1109),
    [anon_sym_origin] = ACTIONS(1109),
    [anon_sym_gasprice] = ACTIONS(1109),
    [anon_sym_blockhash] = ACTIONS(1109),
    [anon_sym_coinbase] = ACTIONS(1109),
    [anon_sym_timestamp] = ACTIONS(1109),
    [anon_sym_number] = ACTIONS(1109),
    [anon_sym_difficulty] = ACTIONS(1109),
    [anon_sym_gaslimit] = ACTIONS(1109),
    [anon_sym_DQUOTE] = ACTIONS(1111),
    [anon_sym_SQUOTE] = ACTIONS(1111),
    [sym_comment] = ACTIONS(3),
  },
  [265] = {
    [sym_identifier] = ACTIONS(1113),
    [anon_sym_LBRACE] = ACTIONS(1115),
    [anon_sym_RBRACE] = ACTIONS(1115),
    [anon_sym_for] = ACTIONS(1113),
    [sym_yul_leave] = ACTIONS(1113),
    [anon_sym_break] = ACTIONS(1113),
    [anon_sym_continue] = ACTIONS(1113),
    [sym_yul_decimal_number] = ACTIONS(1113),
    [sym_yul_hex_number] = ACTIONS(1115),
    [anon_sym_true] = ACTIONS(1113),
    [anon_sym_false] = ACTIONS(1113),
    [anon_sym_let] = ACTIONS(1113),
    [anon_sym_if] = ACTIONS(1113),
    [anon_sym_switch] = ACTIONS(1113),
    [anon_sym_function] = ACTIONS(1113),
    [anon_sym_stop] = ACTIONS(1113),
    [anon_sym_add] = ACTIONS(1113),
    [anon_sym_sub] = ACTIONS(1113),
    [anon_sym_mul] = ACTIONS(1113),
    [anon_sym_div] = ACTIONS(1113),
    [anon_sym_sdiv] = ACTIONS(1113),
    [anon_sym_mod] = ACTIONS(1113),
    [anon_sym_smod] = ACTIONS(1113),
    [anon_sym_exp] = ACTIONS(1113),
    [anon_sym_not] = ACTIONS(1113),
    [anon_sym_lt] = ACTIONS(1113),
    [anon_sym_gt] = ACTIONS(1113),
    [anon_sym_slt] = ACTIONS(1113),
    [anon_sym_sgt] = ACTIONS(1113),
    [anon_sym_eq] = ACTIONS(1113),
    [anon_sym_iszero] = ACTIONS(1113),
    [anon_sym_and] = ACTIONS(1113),
    [anon_sym_or] = ACTIONS(1113),
    [anon_sym_xor] = ACTIONS(1113),
    [anon_sym_byte] = ACTIONS(1113),
    [anon_sym_shl] = ACTIONS(1113),
    [anon_sym_shr] = ACTIONS(1113),
    [anon_sym_sar] = ACTIONS(1113),
    [anon_sym_addmod] = ACTIONS(1113),
    [anon_sym_mulmod] = ACTIONS(1113),
    [anon_sym_signextend] = ACTIONS(1113),
    [anon_sym_keccak256] = ACTIONS(1113),
    [anon_sym_pop] = ACTIONS(1113),
    [anon_sym_mload] = ACTIONS(1113),
    [anon_sym_mstore] = ACTIONS(1113),
    [anon_sym_mstore8] = ACTIONS(1113),
    [anon_sym_sload] = ACTIONS(1113),
    [anon_sym_sstore] = ACTIONS(1113),
    [anon_sym_msize] = ACTIONS(1113),
    [anon_sym_gas] = ACTIONS(1113),
    [anon_sym_address] = ACTIONS(1113),
    [anon_sym_balance] = ACTIONS(1113),
    [anon_sym_selfbalance] = ACTIONS(1113),
    [anon_sym_caller] = ACTIONS(1113),
    [anon_sym_callvalue] = ACTIONS(1113),
    [anon_sym_calldataload] = ACTIONS(1113),
    [anon_sym_calldatasize] = ACTIONS(1113),
    [anon_sym_calldatacopy] = ACTIONS(1113),
    [anon_sym_extcodesize] = ACTIONS(1113),
    [anon_sym_extcodecopy] = ACTIONS(1113),
    [anon_sym_returndatasize] = ACTIONS(1113),
    [anon_sym_returndatacopy] = ACTIONS(1113),
    [anon_sym_extcodehash] = ACTIONS(1113),
    [anon_sym_create] = ACTIONS(1113),
    [anon_sym_create2] = ACTIONS(1113),
    [anon_sym_call] = ACTIONS(1113),
    [anon_sym_callcode] = ACTIONS(1113),
    [anon_sym_delegatecall] = ACTIONS(1113),
    [anon_sym_staticcall] = ACTIONS(1113),
    [anon_sym_return] = ACTIONS(1113),
    [anon_sym_revert] = ACTIONS(1113),
    [anon_sym_selfdestruct] = ACTIONS(1113),
    [anon_sym_invalid] = ACTIONS(1113),
    [anon_sym_log0] = ACTIONS(1113),
    [anon_sym_log1] = ACTIONS(1113),
    [anon_sym_log2] = ACTIONS(1113),
    [anon_sym_log3] = ACTIONS(1113),
    [anon_sym_log4] = ACTIONS(1113),
    [anon_sym_chainid] = ACTIONS(1113),
    [anon_sym_origin] = ACTIONS(1113),
    [anon_sym_gasprice] = ACTIONS(1113),
    [anon_sym_blockhash] = ACTIONS(1113),
    [anon_sym_coinbase] = ACTIONS(1113),
    [anon_sym_timestamp] = ACTIONS(1113),
    [anon_sym_number] = ACTIONS(1113),
    [anon_sym_difficulty] = ACTIONS(1113),
    [anon_sym_gaslimit] = ACTIONS(1113),
    [anon_sym_DQUOTE] = ACTIONS(1115),
    [anon_sym_SQUOTE] = ACTIONS(1115),
    [sym_comment] = ACTIONS(3),
  },
  [266] = {
    [sym_identifier] = ACTIONS(1117),
    [anon_sym_LBRACE] = ACTIONS(1119),
    [anon_sym_RBRACE] = ACTIONS(1119),
    [anon_sym_for] = ACTIONS(1117),
    [sym_yul_leave] = ACTIONS(1117),
    [anon_sym_break] = ACTIONS(1117),
    [anon_sym_continue] = ACTIONS(1117),
    [sym_yul_decimal_number] = ACTIONS(1117),
    [sym_yul_hex_number] = ACTIONS(1119),
    [anon_sym_true] = ACTIONS(1117),
    [anon_sym_false] = ACTIONS(1117),
    [anon_sym_let] = ACTIONS(1117),
    [anon_sym_if] = ACTIONS(1117),
    [anon_sym_switch] = ACTIONS(1117),
    [anon_sym_function] = ACTIONS(1117),
    [anon_sym_stop] = ACTIONS(1117),
    [anon_sym_add] = ACTIONS(1117),
    [anon_sym_sub] = ACTIONS(1117),
    [anon_sym_mul] = ACTIONS(1117),
    [anon_sym_div] = ACTIONS(1117),
    [anon_sym_sdiv] = ACTIONS(1117),
    [anon_sym_mod] = ACTIONS(1117),
    [anon_sym_smod] = ACTIONS(1117),
    [anon_sym_exp] = ACTIONS(1117),
    [anon_sym_not] = ACTIONS(1117),
    [anon_sym_lt] = ACTIONS(1117),
    [anon_sym_gt] = ACTIONS(1117),
    [anon_sym_slt] = ACTIONS(1117),
    [anon_sym_sgt] = ACTIONS(1117),
    [anon_sym_eq] = ACTIONS(1117),
    [anon_sym_iszero] = ACTIONS(1117),
    [anon_sym_and] = ACTIONS(1117),
    [anon_sym_or] = ACTIONS(1117),
    [anon_sym_xor] = ACTIONS(1117),
    [anon_sym_byte] = ACTIONS(1117),
    [anon_sym_shl] = ACTIONS(1117),
    [anon_sym_shr] = ACTIONS(1117),
    [anon_sym_sar] = ACTIONS(1117),
    [anon_sym_addmod] = ACTIONS(1117),
    [anon_sym_mulmod] = ACTIONS(1117),
    [anon_sym_signextend] = ACTIONS(1117),
    [anon_sym_keccak256] = ACTIONS(1117),
    [anon_sym_pop] = ACTIONS(1117),
    [anon_sym_mload] = ACTIONS(1117),
    [anon_sym_mstore] = ACTIONS(1117),
    [anon_sym_mstore8] = ACTIONS(1117),
    [anon_sym_sload] = ACTIONS(1117),
    [anon_sym_sstore] = ACTIONS(1117),
    [anon_sym_msize] = ACTIONS(1117),
    [anon_sym_gas] = ACTIONS(1117),
    [anon_sym_address] = ACTIONS(1117),
    [anon_sym_balance] = ACTIONS(1117),
    [anon_sym_selfbalance] = ACTIONS(1117),
    [anon_sym_caller] = ACTIONS(1117),
    [anon_sym_callvalue] = ACTIONS(1117),
    [anon_sym_calldataload] = ACTIONS(1117),
    [anon_sym_calldatasize] = ACTIONS(1117),
    [anon_sym_calldatacopy] = ACTIONS(1117),
    [anon_sym_extcodesize] = ACTIONS(1117),
    [anon_sym_extcodecopy] = ACTIONS(1117),
    [anon_sym_returndatasize] = ACTIONS(1117),
    [anon_sym_returndatacopy] = ACTIONS(1117),
    [anon_sym_extcodehash] = ACTIONS(1117),
    [anon_sym_create] = ACTIONS(1117),
    [anon_sym_create2] = ACTIONS(1117),
    [anon_sym_call] = ACTIONS(1117),
    [anon_sym_callcode] = ACTIONS(1117),
    [anon_sym_delegatecall] = ACTIONS(1117),
    [anon_sym_staticcall] = ACTIONS(1117),
    [anon_sym_return] = ACTIONS(1117),
    [anon_sym_revert] = ACTIONS(1117),
    [anon_sym_selfdestruct] = ACTIONS(1117),
    [anon_sym_invalid] = ACTIONS(1117),
    [anon_sym_log0] = ACTIONS(1117),
    [anon_sym_log1] = ACTIONS(1117),
    [anon_sym_log2] = ACTIONS(1117),
    [anon_sym_log3] = ACTIONS(1117),
    [anon_sym_log4] = ACTIONS(1117),
    [anon_sym_chainid] = ACTIONS(1117),
    [anon_sym_origin] = ACTIONS(1117),
    [anon_sym_gasprice] = ACTIONS(1117),
    [anon_sym_blockhash] = ACTIONS(1117),
    [anon_sym_coinbase] = ACTIONS(1117),
    [anon_sym_timestamp] = ACTIONS(1117),
    [anon_sym_number] = ACTIONS(1117),
    [anon_sym_difficulty] = ACTIONS(1117),
    [anon_sym_gaslimit] = ACTIONS(1117),
    [anon_sym_DQUOTE] = ACTIONS(1119),
    [anon_sym_SQUOTE] = ACTIONS(1119),
    [sym_comment] = ACTIONS(3),
  },
  [267] = {
    [sym_identifier] = ACTIONS(1121),
    [anon_sym_LBRACE] = ACTIONS(1123),
    [anon_sym_RBRACE] = ACTIONS(1123),
    [anon_sym_for] = ACTIONS(1121),
    [sym_yul_leave] = ACTIONS(1121),
    [anon_sym_break] = ACTIONS(1121),
    [anon_sym_continue] = ACTIONS(1121),
    [sym_yul_decimal_number] = ACTIONS(1121),
    [sym_yul_hex_number] = ACTIONS(1123),
    [anon_sym_true] = ACTIONS(1121),
    [anon_sym_false] = ACTIONS(1121),
    [anon_sym_let] = ACTIONS(1121),
    [anon_sym_if] = ACTIONS(1121),
    [anon_sym_switch] = ACTIONS(1121),
    [anon_sym_function] = ACTIONS(1121),
    [anon_sym_stop] = ACTIONS(1121),
    [anon_sym_add] = ACTIONS(1121),
    [anon_sym_sub] = ACTIONS(1121),
    [anon_sym_mul] = ACTIONS(1121),
    [anon_sym_div] = ACTIONS(1121),
    [anon_sym_sdiv] = ACTIONS(1121),
    [anon_sym_mod] = ACTIONS(1121),
    [anon_sym_smod] = ACTIONS(1121),
    [anon_sym_exp] = ACTIONS(1121),
    [anon_sym_not] = ACTIONS(1121),
    [anon_sym_lt] = ACTIONS(1121),
    [anon_sym_gt] = ACTIONS(1121),
    [anon_sym_slt] = ACTIONS(1121),
    [anon_sym_sgt] = ACTIONS(1121),
    [anon_sym_eq] = ACTIONS(1121),
    [anon_sym_iszero] = ACTIONS(1121),
    [anon_sym_and] = ACTIONS(1121),
    [anon_sym_or] = ACTIONS(1121),
    [anon_sym_xor] = ACTIONS(1121),
    [anon_sym_byte] = ACTIONS(1121),
    [anon_sym_shl] = ACTIONS(1121),
    [anon_sym_shr] = ACTIONS(1121),
    [anon_sym_sar] = ACTIONS(1121),
    [anon_sym_addmod] = ACTIONS(1121),
    [anon_sym_mulmod] = ACTIONS(1121),
    [anon_sym_signextend] = ACTIONS(1121),
    [anon_sym_keccak256] = ACTIONS(1121),
    [anon_sym_pop] = ACTIONS(1121),
    [anon_sym_mload] = ACTIONS(1121),
    [anon_sym_mstore] = ACTIONS(1121),
    [anon_sym_mstore8] = ACTIONS(1121),
    [anon_sym_sload] = ACTIONS(1121),
    [anon_sym_sstore] = ACTIONS(1121),
    [anon_sym_msize] = ACTIONS(1121),
    [anon_sym_gas] = ACTIONS(1121),
    [anon_sym_address] = ACTIONS(1121),
    [anon_sym_balance] = ACTIONS(1121),
    [anon_sym_selfbalance] = ACTIONS(1121),
    [anon_sym_caller] = ACTIONS(1121),
    [anon_sym_callvalue] = ACTIONS(1121),
    [anon_sym_calldataload] = ACTIONS(1121),
    [anon_sym_calldatasize] = ACTIONS(1121),
    [anon_sym_calldatacopy] = ACTIONS(1121),
    [anon_sym_extcodesize] = ACTIONS(1121),
    [anon_sym_extcodecopy] = ACTIONS(1121),
    [anon_sym_returndatasize] = ACTIONS(1121),
    [anon_sym_returndatacopy] = ACTIONS(1121),
    [anon_sym_extcodehash] = ACTIONS(1121),
    [anon_sym_create] = ACTIONS(1121),
    [anon_sym_create2] = ACTIONS(1121),
    [anon_sym_call] = ACTIONS(1121),
    [anon_sym_callcode] = ACTIONS(1121),
    [anon_sym_delegatecall] = ACTIONS(1121),
    [anon_sym_staticcall] = ACTIONS(1121),
    [anon_sym_return] = ACTIONS(1121),
    [anon_sym_revert] = ACTIONS(1121),
    [anon_sym_selfdestruct] = ACTIONS(1121),
    [anon_sym_invalid] = ACTIONS(1121),
    [anon_sym_log0] = ACTIONS(1121),
    [anon_sym_log1] = ACTIONS(1121),
    [anon_sym_log2] = ACTIONS(1121),
    [anon_sym_log3] = ACTIONS(1121),
    [anon_sym_log4] = ACTIONS(1121),
    [anon_sym_chainid] = ACTIONS(1121),
    [anon_sym_origin] = ACTIONS(1121),
    [anon_sym_gasprice] = ACTIONS(1121),
    [anon_sym_blockhash] = ACTIONS(1121),
    [anon_sym_coinbase] = ACTIONS(1121),
    [anon_sym_timestamp] = ACTIONS(1121),
    [anon_sym_number] = ACTIONS(1121),
    [anon_sym_difficulty] = ACTIONS(1121),
    [anon_sym_gaslimit] = ACTIONS(1121),
    [anon_sym_DQUOTE] = ACTIONS(1123),
    [anon_sym_SQUOTE] = ACTIONS(1123),
    [sym_comment] = ACTIONS(3),
  },
  [268] = {
    [sym_identifier] = ACTIONS(1125),
    [anon_sym_LBRACE] = ACTIONS(1127),
    [anon_sym_RBRACE] = ACTIONS(1127),
    [anon_sym_for] = ACTIONS(1125),
    [sym_yul_leave] = ACTIONS(1125),
    [anon_sym_break] = ACTIONS(1125),
    [anon_sym_continue] = ACTIONS(1125),
    [sym_yul_decimal_number] = ACTIONS(1125),
    [sym_yul_hex_number] = ACTIONS(1127),
    [anon_sym_true] = ACTIONS(1125),
    [anon_sym_false] = ACTIONS(1125),
    [anon_sym_let] = ACTIONS(1125),
    [anon_sym_if] = ACTIONS(1125),
    [anon_sym_switch] = ACTIONS(1125),
    [anon_sym_function] = ACTIONS(1125),
    [anon_sym_stop] = ACTIONS(1125),
    [anon_sym_add] = ACTIONS(1125),
    [anon_sym_sub] = ACTIONS(1125),
    [anon_sym_mul] = ACTIONS(1125),
    [anon_sym_div] = ACTIONS(1125),
    [anon_sym_sdiv] = ACTIONS(1125),
    [anon_sym_mod] = ACTIONS(1125),
    [anon_sym_smod] = ACTIONS(1125),
    [anon_sym_exp] = ACTIONS(1125),
    [anon_sym_not] = ACTIONS(1125),
    [anon_sym_lt] = ACTIONS(1125),
    [anon_sym_gt] = ACTIONS(1125),
    [anon_sym_slt] = ACTIONS(1125),
    [anon_sym_sgt] = ACTIONS(1125),
    [anon_sym_eq] = ACTIONS(1125),
    [anon_sym_iszero] = ACTIONS(1125),
    [anon_sym_and] = ACTIONS(1125),
    [anon_sym_or] = ACTIONS(1125),
    [anon_sym_xor] = ACTIONS(1125),
    [anon_sym_byte] = ACTIONS(1125),
    [anon_sym_shl] = ACTIONS(1125),
    [anon_sym_shr] = ACTIONS(1125),
    [anon_sym_sar] = ACTIONS(1125),
    [anon_sym_addmod] = ACTIONS(1125),
    [anon_sym_mulmod] = ACTIONS(1125),
    [anon_sym_signextend] = ACTIONS(1125),
    [anon_sym_keccak256] = ACTIONS(1125),
    [anon_sym_pop] = ACTIONS(1125),
    [anon_sym_mload] = ACTIONS(1125),
    [anon_sym_mstore] = ACTIONS(1125),
    [anon_sym_mstore8] = ACTIONS(1125),
    [anon_sym_sload] = ACTIONS(1125),
    [anon_sym_sstore] = ACTIONS(1125),
    [anon_sym_msize] = ACTIONS(1125),
    [anon_sym_gas] = ACTIONS(1125),
    [anon_sym_address] = ACTIONS(1125),
    [anon_sym_balance] = ACTIONS(1125),
    [anon_sym_selfbalance] = ACTIONS(1125),
    [anon_sym_caller] = ACTIONS(1125),
    [anon_sym_callvalue] = ACTIONS(1125),
    [anon_sym_calldataload] = ACTIONS(1125),
    [anon_sym_calldatasize] = ACTIONS(1125),
    [anon_sym_calldatacopy] = ACTIONS(1125),
    [anon_sym_extcodesize] = ACTIONS(1125),
    [anon_sym_extcodecopy] = ACTIONS(1125),
    [anon_sym_returndatasize] = ACTIONS(1125),
    [anon_sym_returndatacopy] = ACTIONS(1125),
    [anon_sym_extcodehash] = ACTIONS(1125),
    [anon_sym_create] = ACTIONS(1125),
    [anon_sym_create2] = ACTIONS(1125),
    [anon_sym_call] = ACTIONS(1125),
    [anon_sym_callcode] = ACTIONS(1125),
    [anon_sym_delegatecall] = ACTIONS(1125),
    [anon_sym_staticcall] = ACTIONS(1125),
    [anon_sym_return] = ACTIONS(1125),
    [anon_sym_revert] = ACTIONS(1125),
    [anon_sym_selfdestruct] = ACTIONS(1125),
    [anon_sym_invalid] = ACTIONS(1125),
    [anon_sym_log0] = ACTIONS(1125),
    [anon_sym_log1] = ACTIONS(1125),
    [anon_sym_log2] = ACTIONS(1125),
    [anon_sym_log3] = ACTIONS(1125),
    [anon_sym_log4] = ACTIONS(1125),
    [anon_sym_chainid] = ACTIONS(1125),
    [anon_sym_origin] = ACTIONS(1125),
    [anon_sym_gasprice] = ACTIONS(1125),
    [anon_sym_blockhash] = ACTIONS(1125),
    [anon_sym_coinbase] = ACTIONS(1125),
    [anon_sym_timestamp] = ACTIONS(1125),
    [anon_sym_number] = ACTIONS(1125),
    [anon_sym_difficulty] = ACTIONS(1125),
    [anon_sym_gaslimit] = ACTIONS(1125),
    [anon_sym_DQUOTE] = ACTIONS(1127),
    [anon_sym_SQUOTE] = ACTIONS(1127),
    [sym_comment] = ACTIONS(3),
  },
  [269] = {
    [sym_identifier] = ACTIONS(1129),
    [anon_sym_LBRACE] = ACTIONS(1131),
    [anon_sym_RBRACE] = ACTIONS(1131),
    [anon_sym_for] = ACTIONS(1129),
    [sym_yul_leave] = ACTIONS(1129),
    [anon_sym_break] = ACTIONS(1129),
    [anon_sym_continue] = ACTIONS(1129),
    [sym_yul_decimal_number] = ACTIONS(1129),
    [sym_yul_hex_number] = ACTIONS(1131),
    [anon_sym_true] = ACTIONS(1129),
    [anon_sym_false] = ACTIONS(1129),
    [anon_sym_let] = ACTIONS(1129),
    [anon_sym_if] = ACTIONS(1129),
    [anon_sym_switch] = ACTIONS(1129),
    [anon_sym_function] = ACTIONS(1129),
    [anon_sym_stop] = ACTIONS(1129),
    [anon_sym_add] = ACTIONS(1129),
    [anon_sym_sub] = ACTIONS(1129),
    [anon_sym_mul] = ACTIONS(1129),
    [anon_sym_div] = ACTIONS(1129),
    [anon_sym_sdiv] = ACTIONS(1129),
    [anon_sym_mod] = ACTIONS(1129),
    [anon_sym_smod] = ACTIONS(1129),
    [anon_sym_exp] = ACTIONS(1129),
    [anon_sym_not] = ACTIONS(1129),
    [anon_sym_lt] = ACTIONS(1129),
    [anon_sym_gt] = ACTIONS(1129),
    [anon_sym_slt] = ACTIONS(1129),
    [anon_sym_sgt] = ACTIONS(1129),
    [anon_sym_eq] = ACTIONS(1129),
    [anon_sym_iszero] = ACTIONS(1129),
    [anon_sym_and] = ACTIONS(1129),
    [anon_sym_or] = ACTIONS(1129),
    [anon_sym_xor] = ACTIONS(1129),
    [anon_sym_byte] = ACTIONS(1129),
    [anon_sym_shl] = ACTIONS(1129),
    [anon_sym_shr] = ACTIONS(1129),
    [anon_sym_sar] = ACTIONS(1129),
    [anon_sym_addmod] = ACTIONS(1129),
    [anon_sym_mulmod] = ACTIONS(1129),
    [anon_sym_signextend] = ACTIONS(1129),
    [anon_sym_keccak256] = ACTIONS(1129),
    [anon_sym_pop] = ACTIONS(1129),
    [anon_sym_mload] = ACTIONS(1129),
    [anon_sym_mstore] = ACTIONS(1129),
    [anon_sym_mstore8] = ACTIONS(1129),
    [anon_sym_sload] = ACTIONS(1129),
    [anon_sym_sstore] = ACTIONS(1129),
    [anon_sym_msize] = ACTIONS(1129),
    [anon_sym_gas] = ACTIONS(1129),
    [anon_sym_address] = ACTIONS(1129),
    [anon_sym_balance] = ACTIONS(1129),
    [anon_sym_selfbalance] = ACTIONS(1129),
    [anon_sym_caller] = ACTIONS(1129),
    [anon_sym_callvalue] = ACTIONS(1129),
    [anon_sym_calldataload] = ACTIONS(1129),
    [anon_sym_calldatasize] = ACTIONS(1129),
    [anon_sym_calldatacopy] = ACTIONS(1129),
    [anon_sym_extcodesize] = ACTIONS(1129),
    [anon_sym_extcodecopy] = ACTIONS(1129),
    [anon_sym_returndatasize] = ACTIONS(1129),
    [anon_sym_returndatacopy] = ACTIONS(1129),
    [anon_sym_extcodehash] = ACTIONS(1129),
    [anon_sym_create] = ACTIONS(1129),
    [anon_sym_create2] = ACTIONS(1129),
    [anon_sym_call] = ACTIONS(1129),
    [anon_sym_callcode] = ACTIONS(1129),
    [anon_sym_delegatecall] = ACTIONS(1129),
    [anon_sym_staticcall] = ACTIONS(1129),
    [anon_sym_return] = ACTIONS(1129),
    [anon_sym_revert] = ACTIONS(1129),
    [anon_sym_selfdestruct] = ACTIONS(1129),
    [anon_sym_invalid] = ACTIONS(1129),
    [anon_sym_log0] = ACTIONS(1129),
    [anon_sym_log1] = ACTIONS(1129),
    [anon_sym_log2] = ACTIONS(1129),
    [anon_sym_log3] = ACTIONS(1129),
    [anon_sym_log4] = ACTIONS(1129),
    [anon_sym_chainid] = ACTIONS(1129),
    [anon_sym_origin] = ACTIONS(1129),
    [anon_sym_gasprice] = ACTIONS(1129),
    [anon_sym_blockhash] = ACTIONS(1129),
    [anon_sym_coinbase] = ACTIONS(1129),
    [anon_sym_timestamp] = ACTIONS(1129),
    [anon_sym_number] = ACTIONS(1129),
    [anon_sym_difficulty] = ACTIONS(1129),
    [anon_sym_gaslimit] = ACTIONS(1129),
    [anon_sym_DQUOTE] = ACTIONS(1131),
    [anon_sym_SQUOTE] = ACTIONS(1131),
    [sym_comment] = ACTIONS(3),
  },
  [270] = {
    [sym_identifier] = ACTIONS(1133),
    [anon_sym_LBRACE] = ACTIONS(1135),
    [anon_sym_RBRACE] = ACTIONS(1135),
    [anon_sym_for] = ACTIONS(1133),
    [sym_yul_leave] = ACTIONS(1133),
    [anon_sym_break] = ACTIONS(1133),
    [anon_sym_continue] = ACTIONS(1133),
    [sym_yul_decimal_number] = ACTIONS(1133),
    [sym_yul_hex_number] = ACTIONS(1135),
    [anon_sym_true] = ACTIONS(1133),
    [anon_sym_false] = ACTIONS(1133),
    [anon_sym_let] = ACTIONS(1133),
    [anon_sym_if] = ACTIONS(1133),
    [anon_sym_switch] = ACTIONS(1133),
    [anon_sym_function] = ACTIONS(1133),
    [anon_sym_stop] = ACTIONS(1133),
    [anon_sym_add] = ACTIONS(1133),
    [anon_sym_sub] = ACTIONS(1133),
    [anon_sym_mul] = ACTIONS(1133),
    [anon_sym_div] = ACTIONS(1133),
    [anon_sym_sdiv] = ACTIONS(1133),
    [anon_sym_mod] = ACTIONS(1133),
    [anon_sym_smod] = ACTIONS(1133),
    [anon_sym_exp] = ACTIONS(1133),
    [anon_sym_not] = ACTIONS(1133),
    [anon_sym_lt] = ACTIONS(1133),
    [anon_sym_gt] = ACTIONS(1133),
    [anon_sym_slt] = ACTIONS(1133),
    [anon_sym_sgt] = ACTIONS(1133),
    [anon_sym_eq] = ACTIONS(1133),
    [anon_sym_iszero] = ACTIONS(1133),
    [anon_sym_and] = ACTIONS(1133),
    [anon_sym_or] = ACTIONS(1133),
    [anon_sym_xor] = ACTIONS(1133),
    [anon_sym_byte] = ACTIONS(1133),
    [anon_sym_shl] = ACTIONS(1133),
    [anon_sym_shr] = ACTIONS(1133),
    [anon_sym_sar] = ACTIONS(1133),
    [anon_sym_addmod] = ACTIONS(1133),
    [anon_sym_mulmod] = ACTIONS(1133),
    [anon_sym_signextend] = ACTIONS(1133),
    [anon_sym_keccak256] = ACTIONS(1133),
    [anon_sym_pop] = ACTIONS(1133),
    [anon_sym_mload] = ACTIONS(1133),
    [anon_sym_mstore] = ACTIONS(1133),
    [anon_sym_mstore8] = ACTIONS(1133),
    [anon_sym_sload] = ACTIONS(1133),
    [anon_sym_sstore] = ACTIONS(1133),
    [anon_sym_msize] = ACTIONS(1133),
    [anon_sym_gas] = ACTIONS(1133),
    [anon_sym_address] = ACTIONS(1133),
    [anon_sym_balance] = ACTIONS(1133),
    [anon_sym_selfbalance] = ACTIONS(1133),
    [anon_sym_caller] = ACTIONS(1133),
    [anon_sym_callvalue] = ACTIONS(1133),
    [anon_sym_calldataload] = ACTIONS(1133),
    [anon_sym_calldatasize] = ACTIONS(1133),
    [anon_sym_calldatacopy] = ACTIONS(1133),
    [anon_sym_extcodesize] = ACTIONS(1133),
    [anon_sym_extcodecopy] = ACTIONS(1133),
    [anon_sym_returndatasize] = ACTIONS(1133),
    [anon_sym_returndatacopy] = ACTIONS(1133),
    [anon_sym_extcodehash] = ACTIONS(1133),
    [anon_sym_create] = ACTIONS(1133),
    [anon_sym_create2] = ACTIONS(1133),
    [anon_sym_call] = ACTIONS(1133),
    [anon_sym_callcode] = ACTIONS(1133),
    [anon_sym_delegatecall] = ACTIONS(1133),
    [anon_sym_staticcall] = ACTIONS(1133),
    [anon_sym_return] = ACTIONS(1133),
    [anon_sym_revert] = ACTIONS(1133),
    [anon_sym_selfdestruct] = ACTIONS(1133),
    [anon_sym_invalid] = ACTIONS(1133),
    [anon_sym_log0] = ACTIONS(1133),
    [anon_sym_log1] = ACTIONS(1133),
    [anon_sym_log2] = ACTIONS(1133),
    [anon_sym_log3] = ACTIONS(1133),
    [anon_sym_log4] = ACTIONS(1133),
    [anon_sym_chainid] = ACTIONS(1133),
    [anon_sym_origin] = ACTIONS(1133),
    [anon_sym_gasprice] = ACTIONS(1133),
    [anon_sym_blockhash] = ACTIONS(1133),
    [anon_sym_coinbase] = ACTIONS(1133),
    [anon_sym_timestamp] = ACTIONS(1133),
    [anon_sym_number] = ACTIONS(1133),
    [anon_sym_difficulty] = ACTIONS(1133),
    [anon_sym_gaslimit] = ACTIONS(1133),
    [anon_sym_DQUOTE] = ACTIONS(1135),
    [anon_sym_SQUOTE] = ACTIONS(1135),
    [sym_comment] = ACTIONS(3),
  },
  [271] = {
    [sym_identifier] = ACTIONS(1137),
    [anon_sym_LBRACE] = ACTIONS(1139),
    [anon_sym_RBRACE] = ACTIONS(1139),
    [anon_sym_for] = ACTIONS(1137),
    [sym_yul_leave] = ACTIONS(1137),
    [anon_sym_break] = ACTIONS(1137),
    [anon_sym_continue] = ACTIONS(1137),
    [sym_yul_decimal_number] = ACTIONS(1137),
    [sym_yul_hex_number] = ACTIONS(1139),
    [anon_sym_true] = ACTIONS(1137),
    [anon_sym_false] = ACTIONS(1137),
    [anon_sym_let] = ACTIONS(1137),
    [anon_sym_if] = ACTIONS(1137),
    [anon_sym_switch] = ACTIONS(1137),
    [anon_sym_function] = ACTIONS(1137),
    [anon_sym_stop] = ACTIONS(1137),
    [anon_sym_add] = ACTIONS(1137),
    [anon_sym_sub] = ACTIONS(1137),
    [anon_sym_mul] = ACTIONS(1137),
    [anon_sym_div] = ACTIONS(1137),
    [anon_sym_sdiv] = ACTIONS(1137),
    [anon_sym_mod] = ACTIONS(1137),
    [anon_sym_smod] = ACTIONS(1137),
    [anon_sym_exp] = ACTIONS(1137),
    [anon_sym_not] = ACTIONS(1137),
    [anon_sym_lt] = ACTIONS(1137),
    [anon_sym_gt] = ACTIONS(1137),
    [anon_sym_slt] = ACTIONS(1137),
    [anon_sym_sgt] = ACTIONS(1137),
    [anon_sym_eq] = ACTIONS(1137),
    [anon_sym_iszero] = ACTIONS(1137),
    [anon_sym_and] = ACTIONS(1137),
    [anon_sym_or] = ACTIONS(1137),
    [anon_sym_xor] = ACTIONS(1137),
    [anon_sym_byte] = ACTIONS(1137),
    [anon_sym_shl] = ACTIONS(1137),
    [anon_sym_shr] = ACTIONS(1137),
    [anon_sym_sar] = ACTIONS(1137),
    [anon_sym_addmod] = ACTIONS(1137),
    [anon_sym_mulmod] = ACTIONS(1137),
    [anon_sym_signextend] = ACTIONS(1137),
    [anon_sym_keccak256] = ACTIONS(1137),
    [anon_sym_pop] = ACTIONS(1137),
    [anon_sym_mload] = ACTIONS(1137),
    [anon_sym_mstore] = ACTIONS(1137),
    [anon_sym_mstore8] = ACTIONS(1137),
    [anon_sym_sload] = ACTIONS(1137),
    [anon_sym_sstore] = ACTIONS(1137),
    [anon_sym_msize] = ACTIONS(1137),
    [anon_sym_gas] = ACTIONS(1137),
    [anon_sym_address] = ACTIONS(1137),
    [anon_sym_balance] = ACTIONS(1137),
    [anon_sym_selfbalance] = ACTIONS(1137),
    [anon_sym_caller] = ACTIONS(1137),
    [anon_sym_callvalue] = ACTIONS(1137),
    [anon_sym_calldataload] = ACTIONS(1137),
    [anon_sym_calldatasize] = ACTIONS(1137),
    [anon_sym_calldatacopy] = ACTIONS(1137),
    [anon_sym_extcodesize] = ACTIONS(1137),
    [anon_sym_extcodecopy] = ACTIONS(1137),
    [anon_sym_returndatasize] = ACTIONS(1137),
    [anon_sym_returndatacopy] = ACTIONS(1137),
    [anon_sym_extcodehash] = ACTIONS(1137),
    [anon_sym_create] = ACTIONS(1137),
    [anon_sym_create2] = ACTIONS(1137),
    [anon_sym_call] = ACTIONS(1137),
    [anon_sym_callcode] = ACTIONS(1137),
    [anon_sym_delegatecall] = ACTIONS(1137),
    [anon_sym_staticcall] = ACTIONS(1137),
    [anon_sym_return] = ACTIONS(1137),
    [anon_sym_revert] = ACTIONS(1137),
    [anon_sym_selfdestruct] = ACTIONS(1137),
    [anon_sym_invalid] = ACTIONS(1137),
    [anon_sym_log0] = ACTIONS(1137),
    [anon_sym_log1] = ACTIONS(1137),
    [anon_sym_log2] = ACTIONS(1137),
    [anon_sym_log3] = ACTIONS(1137),
    [anon_sym_log4] = ACTIONS(1137),
    [anon_sym_chainid] = ACTIONS(1137),
    [anon_sym_origin] = ACTIONS(1137),
    [anon_sym_gasprice] = ACTIONS(1137),
    [anon_sym_blockhash] = ACTIONS(1137),
    [anon_sym_coinbase] = ACTIONS(1137),
    [anon_sym_timestamp] = ACTIONS(1137),
    [anon_sym_number] = ACTIONS(1137),
    [anon_sym_difficulty] = ACTIONS(1137),
    [anon_sym_gaslimit] = ACTIONS(1137),
    [anon_sym_DQUOTE] = ACTIONS(1139),
    [anon_sym_SQUOTE] = ACTIONS(1139),
    [sym_comment] = ACTIONS(3),
  },
  [272] = {
    [sym_identifier] = ACTIONS(1141),
    [anon_sym_LBRACE] = ACTIONS(1143),
    [anon_sym_RBRACE] = ACTIONS(1143),
    [anon_sym_for] = ACTIONS(1141),
    [sym_yul_leave] = ACTIONS(1141),
    [anon_sym_break] = ACTIONS(1141),
    [anon_sym_continue] = ACTIONS(1141),
    [sym_yul_decimal_number] = ACTIONS(1141),
    [sym_yul_hex_number] = ACTIONS(1143),
    [anon_sym_true] = ACTIONS(1141),
    [anon_sym_false] = ACTIONS(1141),
    [anon_sym_let] = ACTIONS(1141),
    [anon_sym_if] = ACTIONS(1141),
    [anon_sym_switch] = ACTIONS(1141),
    [anon_sym_function] = ACTIONS(1141),
    [anon_sym_stop] = ACTIONS(1141),
    [anon_sym_add] = ACTIONS(1141),
    [anon_sym_sub] = ACTIONS(1141),
    [anon_sym_mul] = ACTIONS(1141),
    [anon_sym_div] = ACTIONS(1141),
    [anon_sym_sdiv] = ACTIONS(1141),
    [anon_sym_mod] = ACTIONS(1141),
    [anon_sym_smod] = ACTIONS(1141),
    [anon_sym_exp] = ACTIONS(1141),
    [anon_sym_not] = ACTIONS(1141),
    [anon_sym_lt] = ACTIONS(1141),
    [anon_sym_gt] = ACTIONS(1141),
    [anon_sym_slt] = ACTIONS(1141),
    [anon_sym_sgt] = ACTIONS(1141),
    [anon_sym_eq] = ACTIONS(1141),
    [anon_sym_iszero] = ACTIONS(1141),
    [anon_sym_and] = ACTIONS(1141),
    [anon_sym_or] = ACTIONS(1141),
    [anon_sym_xor] = ACTIONS(1141),
    [anon_sym_byte] = ACTIONS(1141),
    [anon_sym_shl] = ACTIONS(1141),
    [anon_sym_shr] = ACTIONS(1141),
    [anon_sym_sar] = ACTIONS(1141),
    [anon_sym_addmod] = ACTIONS(1141),
    [anon_sym_mulmod] = ACTIONS(1141),
    [anon_sym_signextend] = ACTIONS(1141),
    [anon_sym_keccak256] = ACTIONS(1141),
    [anon_sym_pop] = ACTIONS(1141),
    [anon_sym_mload] = ACTIONS(1141),
    [anon_sym_mstore] = ACTIONS(1141),
    [anon_sym_mstore8] = ACTIONS(1141),
    [anon_sym_sload] = ACTIONS(1141),
    [anon_sym_sstore] = ACTIONS(1141),
    [anon_sym_msize] = ACTIONS(1141),
    [anon_sym_gas] = ACTIONS(1141),
    [anon_sym_address] = ACTIONS(1141),
    [anon_sym_balance] = ACTIONS(1141),
    [anon_sym_selfbalance] = ACTIONS(1141),
    [anon_sym_caller] = ACTIONS(1141),
    [anon_sym_callvalue] = ACTIONS(1141),
    [anon_sym_calldataload] = ACTIONS(1141),
    [anon_sym_calldatasize] = ACTIONS(1141),
    [anon_sym_calldatacopy] = ACTIONS(1141),
    [anon_sym_extcodesize] = ACTIONS(1141),
    [anon_sym_extcodecopy] = ACTIONS(1141),
    [anon_sym_returndatasize] = ACTIONS(1141),
    [anon_sym_returndatacopy] = ACTIONS(1141),
    [anon_sym_extcodehash] = ACTIONS(1141),
    [anon_sym_create] = ACTIONS(1141),
    [anon_sym_create2] = ACTIONS(1141),
    [anon_sym_call] = ACTIONS(1141),
    [anon_sym_callcode] = ACTIONS(1141),
    [anon_sym_delegatecall] = ACTIONS(1141),
    [anon_sym_staticcall] = ACTIONS(1141),
    [anon_sym_return] = ACTIONS(1141),
    [anon_sym_revert] = ACTIONS(1141),
    [anon_sym_selfdestruct] = ACTIONS(1141),
    [anon_sym_invalid] = ACTIONS(1141),
    [anon_sym_log0] = ACTIONS(1141),
    [anon_sym_log1] = ACTIONS(1141),
    [anon_sym_log2] = ACTIONS(1141),
    [anon_sym_log3] = ACTIONS(1141),
    [anon_sym_log4] = ACTIONS(1141),
    [anon_sym_chainid] = ACTIONS(1141),
    [anon_sym_origin] = ACTIONS(1141),
    [anon_sym_gasprice] = ACTIONS(1141),
    [anon_sym_blockhash] = ACTIONS(1141),
    [anon_sym_coinbase] = ACTIONS(1141),
    [anon_sym_timestamp] = ACTIONS(1141),
    [anon_sym_number] = ACTIONS(1141),
    [anon_sym_difficulty] = ACTIONS(1141),
    [anon_sym_gaslimit] = ACTIONS(1141),
    [anon_sym_DQUOTE] = ACTIONS(1143),
    [anon_sym_SQUOTE] = ACTIONS(1143),
    [sym_comment] = ACTIONS(3),
  },
  [273] = {
    [sym_identifier] = ACTIONS(1145),
    [anon_sym_LBRACE] = ACTIONS(1147),
    [anon_sym_RBRACE] = ACTIONS(1147),
    [anon_sym_for] = ACTIONS(1145),
    [sym_yul_leave] = ACTIONS(1145),
    [anon_sym_break] = ACTIONS(1145),
    [anon_sym_continue] = ACTIONS(1145),
    [sym_yul_decimal_number] = ACTIONS(1145),
    [sym_yul_hex_number] = ACTIONS(1147),
    [anon_sym_true] = ACTIONS(1145),
    [anon_sym_false] = ACTIONS(1145),
    [anon_sym_let] = ACTIONS(1145),
    [anon_sym_if] = ACTIONS(1145),
    [anon_sym_switch] = ACTIONS(1145),
    [anon_sym_function] = ACTIONS(1145),
    [anon_sym_stop] = ACTIONS(1145),
    [anon_sym_add] = ACTIONS(1145),
    [anon_sym_sub] = ACTIONS(1145),
    [anon_sym_mul] = ACTIONS(1145),
    [anon_sym_div] = ACTIONS(1145),
    [anon_sym_sdiv] = ACTIONS(1145),
    [anon_sym_mod] = ACTIONS(1145),
    [anon_sym_smod] = ACTIONS(1145),
    [anon_sym_exp] = ACTIONS(1145),
    [anon_sym_not] = ACTIONS(1145),
    [anon_sym_lt] = ACTIONS(1145),
    [anon_sym_gt] = ACTIONS(1145),
    [anon_sym_slt] = ACTIONS(1145),
    [anon_sym_sgt] = ACTIONS(1145),
    [anon_sym_eq] = ACTIONS(1145),
    [anon_sym_iszero] = ACTIONS(1145),
    [anon_sym_and] = ACTIONS(1145),
    [anon_sym_or] = ACTIONS(1145),
    [anon_sym_xor] = ACTIONS(1145),
    [anon_sym_byte] = ACTIONS(1145),
    [anon_sym_shl] = ACTIONS(1145),
    [anon_sym_shr] = ACTIONS(1145),
    [anon_sym_sar] = ACTIONS(1145),
    [anon_sym_addmod] = ACTIONS(1145),
    [anon_sym_mulmod] = ACTIONS(1145),
    [anon_sym_signextend] = ACTIONS(1145),
    [anon_sym_keccak256] = ACTIONS(1145),
    [anon_sym_pop] = ACTIONS(1145),
    [anon_sym_mload] = ACTIONS(1145),
    [anon_sym_mstore] = ACTIONS(1145),
    [anon_sym_mstore8] = ACTIONS(1145),
    [anon_sym_sload] = ACTIONS(1145),
    [anon_sym_sstore] = ACTIONS(1145),
    [anon_sym_msize] = ACTIONS(1145),
    [anon_sym_gas] = ACTIONS(1145),
    [anon_sym_address] = ACTIONS(1145),
    [anon_sym_balance] = ACTIONS(1145),
    [anon_sym_selfbalance] = ACTIONS(1145),
    [anon_sym_caller] = ACTIONS(1145),
    [anon_sym_callvalue] = ACTIONS(1145),
    [anon_sym_calldataload] = ACTIONS(1145),
    [anon_sym_calldatasize] = ACTIONS(1145),
    [anon_sym_calldatacopy] = ACTIONS(1145),
    [anon_sym_extcodesize] = ACTIONS(1145),
    [anon_sym_extcodecopy] = ACTIONS(1145),
    [anon_sym_returndatasize] = ACTIONS(1145),
    [anon_sym_returndatacopy] = ACTIONS(1145),
    [anon_sym_extcodehash] = ACTIONS(1145),
    [anon_sym_create] = ACTIONS(1145),
    [anon_sym_create2] = ACTIONS(1145),
    [anon_sym_call] = ACTIONS(1145),
    [anon_sym_callcode] = ACTIONS(1145),
    [anon_sym_delegatecall] = ACTIONS(1145),
    [anon_sym_staticcall] = ACTIONS(1145),
    [anon_sym_return] = ACTIONS(1145),
    [anon_sym_revert] = ACTIONS(1145),
    [anon_sym_selfdestruct] = ACTIONS(1145),
    [anon_sym_invalid] = ACTIONS(1145),
    [anon_sym_log0] = ACTIONS(1145),
    [anon_sym_log1] = ACTIONS(1145),
    [anon_sym_log2] = ACTIONS(1145),
    [anon_sym_log3] = ACTIONS(1145),
    [anon_sym_log4] = ACTIONS(1145),
    [anon_sym_chainid] = ACTIONS(1145),
    [anon_sym_origin] = ACTIONS(1145),
    [anon_sym_gasprice] = ACTIONS(1145),
    [anon_sym_blockhash] = ACTIONS(1145),
    [anon_sym_coinbase] = ACTIONS(1145),
    [anon_sym_timestamp] = ACTIONS(1145),
    [anon_sym_number] = ACTIONS(1145),
    [anon_sym_difficulty] = ACTIONS(1145),
    [anon_sym_gaslimit] = ACTIONS(1145),
    [anon_sym_DQUOTE] = ACTIONS(1147),
    [anon_sym_SQUOTE] = ACTIONS(1147),
    [sym_comment] = ACTIONS(3),
  },
  [274] = {
    [sym_identifier] = ACTIONS(1149),
    [anon_sym_LBRACE] = ACTIONS(1151),
    [anon_sym_RBRACE] = ACTIONS(1151),
    [anon_sym_for] = ACTIONS(1149),
    [sym_yul_leave] = ACTIONS(1149),
    [anon_sym_break] = ACTIONS(1149),
    [anon_sym_continue] = ACTIONS(1149),
    [sym_yul_decimal_number] = ACTIONS(1149),
    [sym_yul_hex_number] = ACTIONS(1151),
    [anon_sym_true] = ACTIONS(1149),
    [anon_sym_false] = ACTIONS(1149),
    [anon_sym_let] = ACTIONS(1149),
    [anon_sym_if] = ACTIONS(1149),
    [anon_sym_switch] = ACTIONS(1149),
    [anon_sym_function] = ACTIONS(1149),
    [anon_sym_stop] = ACTIONS(1149),
    [anon_sym_add] = ACTIONS(1149),
    [anon_sym_sub] = ACTIONS(1149),
    [anon_sym_mul] = ACTIONS(1149),
    [anon_sym_div] = ACTIONS(1149),
    [anon_sym_sdiv] = ACTIONS(1149),
    [anon_sym_mod] = ACTIONS(1149),
    [anon_sym_smod] = ACTIONS(1149),
    [anon_sym_exp] = ACTIONS(1149),
    [anon_sym_not] = ACTIONS(1149),
    [anon_sym_lt] = ACTIONS(1149),
    [anon_sym_gt] = ACTIONS(1149),
    [anon_sym_slt] = ACTIONS(1149),
    [anon_sym_sgt] = ACTIONS(1149),
    [anon_sym_eq] = ACTIONS(1149),
    [anon_sym_iszero] = ACTIONS(1149),
    [anon_sym_and] = ACTIONS(1149),
    [anon_sym_or] = ACTIONS(1149),
    [anon_sym_xor] = ACTIONS(1149),
    [anon_sym_byte] = ACTIONS(1149),
    [anon_sym_shl] = ACTIONS(1149),
    [anon_sym_shr] = ACTIONS(1149),
    [anon_sym_sar] = ACTIONS(1149),
    [anon_sym_addmod] = ACTIONS(1149),
    [anon_sym_mulmod] = ACTIONS(1149),
    [anon_sym_signextend] = ACTIONS(1149),
    [anon_sym_keccak256] = ACTIONS(1149),
    [anon_sym_pop] = ACTIONS(1149),
    [anon_sym_mload] = ACTIONS(1149),
    [anon_sym_mstore] = ACTIONS(1149),
    [anon_sym_mstore8] = ACTIONS(1149),
    [anon_sym_sload] = ACTIONS(1149),
    [anon_sym_sstore] = ACTIONS(1149),
    [anon_sym_msize] = ACTIONS(1149),
    [anon_sym_gas] = ACTIONS(1149),
    [anon_sym_address] = ACTIONS(1149),
    [anon_sym_balance] = ACTIONS(1149),
    [anon_sym_selfbalance] = ACTIONS(1149),
    [anon_sym_caller] = ACTIONS(1149),
    [anon_sym_callvalue] = ACTIONS(1149),
    [anon_sym_calldataload] = ACTIONS(1149),
    [anon_sym_calldatasize] = ACTIONS(1149),
    [anon_sym_calldatacopy] = ACTIONS(1149),
    [anon_sym_extcodesize] = ACTIONS(1149),
    [anon_sym_extcodecopy] = ACTIONS(1149),
    [anon_sym_returndatasize] = ACTIONS(1149),
    [anon_sym_returndatacopy] = ACTIONS(1149),
    [anon_sym_extcodehash] = ACTIONS(1149),
    [anon_sym_create] = ACTIONS(1149),
    [anon_sym_create2] = ACTIONS(1149),
    [anon_sym_call] = ACTIONS(1149),
    [anon_sym_callcode] = ACTIONS(1149),
    [anon_sym_delegatecall] = ACTIONS(1149),
    [anon_sym_staticcall] = ACTIONS(1149),
    [anon_sym_return] = ACTIONS(1149),
    [anon_sym_revert] = ACTIONS(1149),
    [anon_sym_selfdestruct] = ACTIONS(1149),
    [anon_sym_invalid] = ACTIONS(1149),
    [anon_sym_log0] = ACTIONS(1149),
    [anon_sym_log1] = ACTIONS(1149),
    [anon_sym_log2] = ACTIONS(1149),
    [anon_sym_log3] = ACTIONS(1149),
    [anon_sym_log4] = ACTIONS(1149),
    [anon_sym_chainid] = ACTIONS(1149),
    [anon_sym_origin] = ACTIONS(1149),
    [anon_sym_gasprice] = ACTIONS(1149),
    [anon_sym_blockhash] = ACTIONS(1149),
    [anon_sym_coinbase] = ACTIONS(1149),
    [anon_sym_timestamp] = ACTIONS(1149),
    [anon_sym_number] = ACTIONS(1149),
    [anon_sym_difficulty] = ACTIONS(1149),
    [anon_sym_gaslimit] = ACTIONS(1149),
    [anon_sym_DQUOTE] = ACTIONS(1151),
    [anon_sym_SQUOTE] = ACTIONS(1151),
    [sym_comment] = ACTIONS(3),
  },
  [275] = {
    [sym_identifier] = ACTIONS(1153),
    [anon_sym_LBRACE] = ACTIONS(1156),
    [anon_sym_RBRACE] = ACTIONS(1156),
    [anon_sym_for] = ACTIONS(1153),
    [sym_yul_leave] = ACTIONS(1153),
    [anon_sym_break] = ACTIONS(1153),
    [anon_sym_continue] = ACTIONS(1153),
    [sym_yul_decimal_number] = ACTIONS(1153),
    [sym_yul_hex_number] = ACTIONS(1156),
    [anon_sym_true] = ACTIONS(1153),
    [anon_sym_false] = ACTIONS(1153),
    [anon_sym_let] = ACTIONS(1153),
    [anon_sym_if] = ACTIONS(1153),
    [anon_sym_switch] = ACTIONS(1153),
    [anon_sym_function] = ACTIONS(1153),
    [anon_sym_stop] = ACTIONS(1153),
    [anon_sym_add] = ACTIONS(1153),
    [anon_sym_sub] = ACTIONS(1153),
    [anon_sym_mul] = ACTIONS(1153),
    [anon_sym_div] = ACTIONS(1153),
    [anon_sym_sdiv] = ACTIONS(1153),
    [anon_sym_mod] = ACTIONS(1153),
    [anon_sym_smod] = ACTIONS(1153),
    [anon_sym_exp] = ACTIONS(1153),
    [anon_sym_not] = ACTIONS(1153),
    [anon_sym_lt] = ACTIONS(1153),
    [anon_sym_gt] = ACTIONS(1153),
    [anon_sym_slt] = ACTIONS(1153),
    [anon_sym_sgt] = ACTIONS(1153),
    [anon_sym_eq] = ACTIONS(1153),
    [anon_sym_iszero] = ACTIONS(1153),
    [anon_sym_and] = ACTIONS(1153),
    [anon_sym_or] = ACTIONS(1153),
    [anon_sym_xor] = ACTIONS(1153),
    [anon_sym_byte] = ACTIONS(1153),
    [anon_sym_shl] = ACTIONS(1153),
    [anon_sym_shr] = ACTIONS(1153),
    [anon_sym_sar] = ACTIONS(1153),
    [anon_sym_addmod] = ACTIONS(1153),
    [anon_sym_mulmod] = ACTIONS(1153),
    [anon_sym_signextend] = ACTIONS(1153),
    [anon_sym_keccak256] = ACTIONS(1153),
    [anon_sym_pop] = ACTIONS(1153),
    [anon_sym_mload] = ACTIONS(1153),
    [anon_sym_mstore] = ACTIONS(1153),
    [anon_sym_mstore8] = ACTIONS(1153),
    [anon_sym_sload] = ACTIONS(1153),
    [anon_sym_sstore] = ACTIONS(1153),
    [anon_sym_msize] = ACTIONS(1153),
    [anon_sym_gas] = ACTIONS(1153),
    [anon_sym_address] = ACTIONS(1153),
    [anon_sym_balance] = ACTIONS(1153),
    [anon_sym_selfbalance] = ACTIONS(1153),
    [anon_sym_caller] = ACTIONS(1153),
    [anon_sym_callvalue] = ACTIONS(1153),
    [anon_sym_calldataload] = ACTIONS(1153),
    [anon_sym_calldatasize] = ACTIONS(1153),
    [anon_sym_calldatacopy] = ACTIONS(1153),
    [anon_sym_extcodesize] = ACTIONS(1153),
    [anon_sym_extcodecopy] = ACTIONS(1153),
    [anon_sym_returndatasize] = ACTIONS(1153),
    [anon_sym_returndatacopy] = ACTIONS(1153),
    [anon_sym_extcodehash] = ACTIONS(1153),
    [anon_sym_create] = ACTIONS(1153),
    [anon_sym_create2] = ACTIONS(1153),
    [anon_sym_call] = ACTIONS(1153),
    [anon_sym_callcode] = ACTIONS(1153),
    [anon_sym_delegatecall] = ACTIONS(1153),
    [anon_sym_staticcall] = ACTIONS(1153),
    [anon_sym_return] = ACTIONS(1153),
    [anon_sym_revert] = ACTIONS(1153),
    [anon_sym_selfdestruct] = ACTIONS(1153),
    [anon_sym_invalid] = ACTIONS(1153),
    [anon_sym_log0] = ACTIONS(1153),
    [anon_sym_log1] = ACTIONS(1153),
    [anon_sym_log2] = ACTIONS(1153),
    [anon_sym_log3] = ACTIONS(1153),
    [anon_sym_log4] = ACTIONS(1153),
    [anon_sym_chainid] = ACTIONS(1153),
    [anon_sym_origin] = ACTIONS(1153),
    [anon_sym_gasprice] = ACTIONS(1153),
    [anon_sym_blockhash] = ACTIONS(1153),
    [anon_sym_coinbase] = ACTIONS(1153),
    [anon_sym_timestamp] = ACTIONS(1153),
    [anon_sym_number] = ACTIONS(1153),
    [anon_sym_difficulty] = ACTIONS(1153),
    [anon_sym_gaslimit] = ACTIONS(1153),
    [anon_sym_DQUOTE] = ACTIONS(1156),
    [anon_sym_SQUOTE] = ACTIONS(1156),
    [sym_comment] = ACTIONS(3),
  },
  [276] = {
    [sym_identifier] = ACTIONS(1159),
    [anon_sym_LBRACE] = ACTIONS(1161),
    [anon_sym_RBRACE] = ACTIONS(1161),
    [anon_sym_for] = ACTIONS(1159),
    [sym_yul_leave] = ACTIONS(1159),
    [anon_sym_break] = ACTIONS(1159),
    [anon_sym_continue] = ACTIONS(1159),
    [sym_yul_decimal_number] = ACTIONS(1159),
    [sym_yul_hex_number] = ACTIONS(1161),
    [anon_sym_true] = ACTIONS(1159),
    [anon_sym_false] = ACTIONS(1159),
    [anon_sym_let] = ACTIONS(1159),
    [anon_sym_if] = ACTIONS(1159),
    [anon_sym_switch] = ACTIONS(1159),
    [anon_sym_function] = ACTIONS(1159),
    [anon_sym_stop] = ACTIONS(1159),
    [anon_sym_add] = ACTIONS(1159),
    [anon_sym_sub] = ACTIONS(1159),
    [anon_sym_mul] = ACTIONS(1159),
    [anon_sym_div] = ACTIONS(1159),
    [anon_sym_sdiv] = ACTIONS(1159),
    [anon_sym_mod] = ACTIONS(1159),
    [anon_sym_smod] = ACTIONS(1159),
    [anon_sym_exp] = ACTIONS(1159),
    [anon_sym_not] = ACTIONS(1159),
    [anon_sym_lt] = ACTIONS(1159),
    [anon_sym_gt] = ACTIONS(1159),
    [anon_sym_slt] = ACTIONS(1159),
    [anon_sym_sgt] = ACTIONS(1159),
    [anon_sym_eq] = ACTIONS(1159),
    [anon_sym_iszero] = ACTIONS(1159),
    [anon_sym_and] = ACTIONS(1159),
    [anon_sym_or] = ACTIONS(1159),
    [anon_sym_xor] = ACTIONS(1159),
    [anon_sym_byte] = ACTIONS(1159),
    [anon_sym_shl] = ACTIONS(1159),
    [anon_sym_shr] = ACTIONS(1159),
    [anon_sym_sar] = ACTIONS(1159),
    [anon_sym_addmod] = ACTIONS(1159),
    [anon_sym_mulmod] = ACTIONS(1159),
    [anon_sym_signextend] = ACTIONS(1159),
    [anon_sym_keccak256] = ACTIONS(1159),
    [anon_sym_pop] = ACTIONS(1159),
    [anon_sym_mload] = ACTIONS(1159),
    [anon_sym_mstore] = ACTIONS(1159),
    [anon_sym_mstore8] = ACTIONS(1159),
    [anon_sym_sload] = ACTIONS(1159),
    [anon_sym_sstore] = ACTIONS(1159),
    [anon_sym_msize] = ACTIONS(1159),
    [anon_sym_gas] = ACTIONS(1159),
    [anon_sym_address] = ACTIONS(1159),
    [anon_sym_balance] = ACTIONS(1159),
    [anon_sym_selfbalance] = ACTIONS(1159),
    [anon_sym_caller] = ACTIONS(1159),
    [anon_sym_callvalue] = ACTIONS(1159),
    [anon_sym_calldataload] = ACTIONS(1159),
    [anon_sym_calldatasize] = ACTIONS(1159),
    [anon_sym_calldatacopy] = ACTIONS(1159),
    [anon_sym_extcodesize] = ACTIONS(1159),
    [anon_sym_extcodecopy] = ACTIONS(1159),
    [anon_sym_returndatasize] = ACTIONS(1159),
    [anon_sym_returndatacopy] = ACTIONS(1159),
    [anon_sym_extcodehash] = ACTIONS(1159),
    [anon_sym_create] = ACTIONS(1159),
    [anon_sym_create2] = ACTIONS(1159),
    [anon_sym_call] = ACTIONS(1159),
    [anon_sym_callcode] = ACTIONS(1159),
    [anon_sym_delegatecall] = ACTIONS(1159),
    [anon_sym_staticcall] = ACTIONS(1159),
    [anon_sym_return] = ACTIONS(1159),
    [anon_sym_revert] = ACTIONS(1159),
    [anon_sym_selfdestruct] = ACTIONS(1159),
    [anon_sym_invalid] = ACTIONS(1159),
    [anon_sym_log0] = ACTIONS(1159),
    [anon_sym_log1] = ACTIONS(1159),
    [anon_sym_log2] = ACTIONS(1159),
    [anon_sym_log3] = ACTIONS(1159),
    [anon_sym_log4] = ACTIONS(1159),
    [anon_sym_chainid] = ACTIONS(1159),
    [anon_sym_origin] = ACTIONS(1159),
    [anon_sym_gasprice] = ACTIONS(1159),
    [anon_sym_blockhash] = ACTIONS(1159),
    [anon_sym_coinbase] = ACTIONS(1159),
    [anon_sym_timestamp] = ACTIONS(1159),
    [anon_sym_number] = ACTIONS(1159),
    [anon_sym_difficulty] = ACTIONS(1159),
    [anon_sym_gaslimit] = ACTIONS(1159),
    [anon_sym_DQUOTE] = ACTIONS(1161),
    [anon_sym_SQUOTE] = ACTIONS(1161),
    [sym_comment] = ACTIONS(3),
  },
  [277] = {
    [sym_identifier] = ACTIONS(1149),
    [anon_sym_LBRACE] = ACTIONS(1151),
    [anon_sym_RBRACE] = ACTIONS(1151),
    [anon_sym_for] = ACTIONS(1149),
    [sym_yul_leave] = ACTIONS(1149),
    [anon_sym_break] = ACTIONS(1149),
    [anon_sym_continue] = ACTIONS(1149),
    [sym_yul_decimal_number] = ACTIONS(1149),
    [sym_yul_hex_number] = ACTIONS(1151),
    [anon_sym_true] = ACTIONS(1149),
    [anon_sym_false] = ACTIONS(1149),
    [anon_sym_let] = ACTIONS(1149),
    [anon_sym_if] = ACTIONS(1149),
    [anon_sym_switch] = ACTIONS(1149),
    [anon_sym_function] = ACTIONS(1149),
    [anon_sym_stop] = ACTIONS(1149),
    [anon_sym_add] = ACTIONS(1149),
    [anon_sym_sub] = ACTIONS(1149),
    [anon_sym_mul] = ACTIONS(1149),
    [anon_sym_div] = ACTIONS(1149),
    [anon_sym_sdiv] = ACTIONS(1149),
    [anon_sym_mod] = ACTIONS(1149),
    [anon_sym_smod] = ACTIONS(1149),
    [anon_sym_exp] = ACTIONS(1149),
    [anon_sym_not] = ACTIONS(1149),
    [anon_sym_lt] = ACTIONS(1149),
    [anon_sym_gt] = ACTIONS(1149),
    [anon_sym_slt] = ACTIONS(1149),
    [anon_sym_sgt] = ACTIONS(1149),
    [anon_sym_eq] = ACTIONS(1149),
    [anon_sym_iszero] = ACTIONS(1149),
    [anon_sym_and] = ACTIONS(1149),
    [anon_sym_or] = ACTIONS(1149),
    [anon_sym_xor] = ACTIONS(1149),
    [anon_sym_byte] = ACTIONS(1149),
    [anon_sym_shl] = ACTIONS(1149),
    [anon_sym_shr] = ACTIONS(1149),
    [anon_sym_sar] = ACTIONS(1149),
    [anon_sym_addmod] = ACTIONS(1149),
    [anon_sym_mulmod] = ACTIONS(1149),
    [anon_sym_signextend] = ACTIONS(1149),
    [anon_sym_keccak256] = ACTIONS(1149),
    [anon_sym_pop] = ACTIONS(1149),
    [anon_sym_mload] = ACTIONS(1149),
    [anon_sym_mstore] = ACTIONS(1149),
    [anon_sym_mstore8] = ACTIONS(1149),
    [anon_sym_sload] = ACTIONS(1149),
    [anon_sym_sstore] = ACTIONS(1149),
    [anon_sym_msize] = ACTIONS(1149),
    [anon_sym_gas] = ACTIONS(1149),
    [anon_sym_address] = ACTIONS(1149),
    [anon_sym_balance] = ACTIONS(1149),
    [anon_sym_selfbalance] = ACTIONS(1149),
    [anon_sym_caller] = ACTIONS(1149),
    [anon_sym_callvalue] = ACTIONS(1149),
    [anon_sym_calldataload] = ACTIONS(1149),
    [anon_sym_calldatasize] = ACTIONS(1149),
    [anon_sym_calldatacopy] = ACTIONS(1149),
    [anon_sym_extcodesize] = ACTIONS(1149),
    [anon_sym_extcodecopy] = ACTIONS(1149),
    [anon_sym_returndatasize] = ACTIONS(1149),
    [anon_sym_returndatacopy] = ACTIONS(1149),
    [anon_sym_extcodehash] = ACTIONS(1149),
    [anon_sym_create] = ACTIONS(1149),
    [anon_sym_create2] = ACTIONS(1149),
    [anon_sym_call] = ACTIONS(1149),
    [anon_sym_callcode] = ACTIONS(1149),
    [anon_sym_delegatecall] = ACTIONS(1149),
    [anon_sym_staticcall] = ACTIONS(1149),
    [anon_sym_return] = ACTIONS(1149),
    [anon_sym_revert] = ACTIONS(1149),
    [anon_sym_selfdestruct] = ACTIONS(1149),
    [anon_sym_invalid] = ACTIONS(1149),
    [anon_sym_log0] = ACTIONS(1149),
    [anon_sym_log1] = ACTIONS(1149),
    [anon_sym_log2] = ACTIONS(1149),
    [anon_sym_log3] = ACTIONS(1149),
    [anon_sym_log4] = ACTIONS(1149),
    [anon_sym_chainid] = ACTIONS(1149),
    [anon_sym_origin] = ACTIONS(1149),
    [anon_sym_gasprice] = ACTIONS(1149),
    [anon_sym_blockhash] = ACTIONS(1149),
    [anon_sym_coinbase] = ACTIONS(1149),
    [anon_sym_timestamp] = ACTIONS(1149),
    [anon_sym_number] = ACTIONS(1149),
    [anon_sym_difficulty] = ACTIONS(1149),
    [anon_sym_gaslimit] = ACTIONS(1149),
    [anon_sym_DQUOTE] = ACTIONS(1151),
    [anon_sym_SQUOTE] = ACTIONS(1151),
    [sym_comment] = ACTIONS(3),
  },
  [278] = {
    [sym_identifier] = ACTIONS(1163),
    [anon_sym_LBRACE] = ACTIONS(1165),
    [anon_sym_RBRACE] = ACTIONS(1165),
    [anon_sym_for] = ACTIONS(1163),
    [sym_yul_leave] = ACTIONS(1163),
    [anon_sym_break] = ACTIONS(1163),
    [anon_sym_continue] = ACTIONS(1163),
    [sym_yul_decimal_number] = ACTIONS(1163),
    [sym_yul_hex_number] = ACTIONS(1165),
    [anon_sym_true] = ACTIONS(1163),
    [anon_sym_false] = ACTIONS(1163),
    [anon_sym_let] = ACTIONS(1163),
    [anon_sym_if] = ACTIONS(1163),
    [anon_sym_switch] = ACTIONS(1163),
    [anon_sym_function] = ACTIONS(1163),
    [anon_sym_stop] = ACTIONS(1163),
    [anon_sym_add] = ACTIONS(1163),
    [anon_sym_sub] = ACTIONS(1163),
    [anon_sym_mul] = ACTIONS(1163),
    [anon_sym_div] = ACTIONS(1163),
    [anon_sym_sdiv] = ACTIONS(1163),
    [anon_sym_mod] = ACTIONS(1163),
    [anon_sym_smod] = ACTIONS(1163),
    [anon_sym_exp] = ACTIONS(1163),
    [anon_sym_not] = ACTIONS(1163),
    [anon_sym_lt] = ACTIONS(1163),
    [anon_sym_gt] = ACTIONS(1163),
    [anon_sym_slt] = ACTIONS(1163),
    [anon_sym_sgt] = ACTIONS(1163),
    [anon_sym_eq] = ACTIONS(1163),
    [anon_sym_iszero] = ACTIONS(1163),
    [anon_sym_and] = ACTIONS(1163),
    [anon_sym_or] = ACTIONS(1163),
    [anon_sym_xor] = ACTIONS(1163),
    [anon_sym_byte] = ACTIONS(1163),
    [anon_sym_shl] = ACTIONS(1163),
    [anon_sym_shr] = ACTIONS(1163),
    [anon_sym_sar] = ACTIONS(1163),
    [anon_sym_addmod] = ACTIONS(1163),
    [anon_sym_mulmod] = ACTIONS(1163),
    [anon_sym_signextend] = ACTIONS(1163),
    [anon_sym_keccak256] = ACTIONS(1163),
    [anon_sym_pop] = ACTIONS(1163),
    [anon_sym_mload] = ACTIONS(1163),
    [anon_sym_mstore] = ACTIONS(1163),
    [anon_sym_mstore8] = ACTIONS(1163),
    [anon_sym_sload] = ACTIONS(1163),
    [anon_sym_sstore] = ACTIONS(1163),
    [anon_sym_msize] = ACTIONS(1163),
    [anon_sym_gas] = ACTIONS(1163),
    [anon_sym_address] = ACTIONS(1163),
    [anon_sym_balance] = ACTIONS(1163),
    [anon_sym_selfbalance] = ACTIONS(1163),
    [anon_sym_caller] = ACTIONS(1163),
    [anon_sym_callvalue] = ACTIONS(1163),
    [anon_sym_calldataload] = ACTIONS(1163),
    [anon_sym_calldatasize] = ACTIONS(1163),
    [anon_sym_calldatacopy] = ACTIONS(1163),
    [anon_sym_extcodesize] = ACTIONS(1163),
    [anon_sym_extcodecopy] = ACTIONS(1163),
    [anon_sym_returndatasize] = ACTIONS(1163),
    [anon_sym_returndatacopy] = ACTIONS(1163),
    [anon_sym_extcodehash] = ACTIONS(1163),
    [anon_sym_create] = ACTIONS(1163),
    [anon_sym_create2] = ACTIONS(1163),
    [anon_sym_call] = ACTIONS(1163),
    [anon_sym_callcode] = ACTIONS(1163),
    [anon_sym_delegatecall] = ACTIONS(1163),
    [anon_sym_staticcall] = ACTIONS(1163),
    [anon_sym_return] = ACTIONS(1163),
    [anon_sym_revert] = ACTIONS(1163),
    [anon_sym_selfdestruct] = ACTIONS(1163),
    [anon_sym_invalid] = ACTIONS(1163),
    [anon_sym_log0] = ACTIONS(1163),
    [anon_sym_log1] = ACTIONS(1163),
    [anon_sym_log2] = ACTIONS(1163),
    [anon_sym_log3] = ACTIONS(1163),
    [anon_sym_log4] = ACTIONS(1163),
    [anon_sym_chainid] = ACTIONS(1163),
    [anon_sym_origin] = ACTIONS(1163),
    [anon_sym_gasprice] = ACTIONS(1163),
    [anon_sym_blockhash] = ACTIONS(1163),
    [anon_sym_coinbase] = ACTIONS(1163),
    [anon_sym_timestamp] = ACTIONS(1163),
    [anon_sym_number] = ACTIONS(1163),
    [anon_sym_difficulty] = ACTIONS(1163),
    [anon_sym_gaslimit] = ACTIONS(1163),
    [anon_sym_DQUOTE] = ACTIONS(1165),
    [anon_sym_SQUOTE] = ACTIONS(1165),
    [sym_comment] = ACTIONS(3),
  },
  [279] = {
    [sym_identifier] = ACTIONS(1167),
    [anon_sym_LBRACE] = ACTIONS(1169),
    [anon_sym_RBRACE] = ACTIONS(1169),
    [anon_sym_for] = ACTIONS(1167),
    [sym_yul_leave] = ACTIONS(1167),
    [anon_sym_break] = ACTIONS(1167),
    [anon_sym_continue] = ACTIONS(1167),
    [sym_yul_decimal_number] = ACTIONS(1167),
    [sym_yul_hex_number] = ACTIONS(1169),
    [anon_sym_true] = ACTIONS(1167),
    [anon_sym_false] = ACTIONS(1167),
    [anon_sym_let] = ACTIONS(1167),
    [anon_sym_if] = ACTIONS(1167),
    [anon_sym_switch] = ACTIONS(1167),
    [anon_sym_function] = ACTIONS(1167),
    [anon_sym_stop] = ACTIONS(1167),
    [anon_sym_add] = ACTIONS(1167),
    [anon_sym_sub] = ACTIONS(1167),
    [anon_sym_mul] = ACTIONS(1167),
    [anon_sym_div] = ACTIONS(1167),
    [anon_sym_sdiv] = ACTIONS(1167),
    [anon_sym_mod] = ACTIONS(1167),
    [anon_sym_smod] = ACTIONS(1167),
    [anon_sym_exp] = ACTIONS(1167),
    [anon_sym_not] = ACTIONS(1167),
    [anon_sym_lt] = ACTIONS(1167),
    [anon_sym_gt] = ACTIONS(1167),
    [anon_sym_slt] = ACTIONS(1167),
    [anon_sym_sgt] = ACTIONS(1167),
    [anon_sym_eq] = ACTIONS(1167),
    [anon_sym_iszero] = ACTIONS(1167),
    [anon_sym_and] = ACTIONS(1167),
    [anon_sym_or] = ACTIONS(1167),
    [anon_sym_xor] = ACTIONS(1167),
    [anon_sym_byte] = ACTIONS(1167),
    [anon_sym_shl] = ACTIONS(1167),
    [anon_sym_shr] = ACTIONS(1167),
    [anon_sym_sar] = ACTIONS(1167),
    [anon_sym_addmod] = ACTIONS(1167),
    [anon_sym_mulmod] = ACTIONS(1167),
    [anon_sym_signextend] = ACTIONS(1167),
    [anon_sym_keccak256] = ACTIONS(1167),
    [anon_sym_pop] = ACTIONS(1167),
    [anon_sym_mload] = ACTIONS(1167),
    [anon_sym_mstore] = ACTIONS(1167),
    [anon_sym_mstore8] = ACTIONS(1167),
    [anon_sym_sload] = ACTIONS(1167),
    [anon_sym_sstore] = ACTIONS(1167),
    [anon_sym_msize] = ACTIONS(1167),
    [anon_sym_gas] = ACTIONS(1167),
    [anon_sym_address] = ACTIONS(1167),
    [anon_sym_balance] = ACTIONS(1167),
    [anon_sym_selfbalance] = ACTIONS(1167),
    [anon_sym_caller] = ACTIONS(1167),
    [anon_sym_callvalue] = ACTIONS(1167),
    [anon_sym_calldataload] = ACTIONS(1167),
    [anon_sym_calldatasize] = ACTIONS(1167),
    [anon_sym_calldatacopy] = ACTIONS(1167),
    [anon_sym_extcodesize] = ACTIONS(1167),
    [anon_sym_extcodecopy] = ACTIONS(1167),
    [anon_sym_returndatasize] = ACTIONS(1167),
    [anon_sym_returndatacopy] = ACTIONS(1167),
    [anon_sym_extcodehash] = ACTIONS(1167),
    [anon_sym_create] = ACTIONS(1167),
    [anon_sym_create2] = ACTIONS(1167),
    [anon_sym_call] = ACTIONS(1167),
    [anon_sym_callcode] = ACTIONS(1167),
    [anon_sym_delegatecall] = ACTIONS(1167),
    [anon_sym_staticcall] = ACTIONS(1167),
    [anon_sym_return] = ACTIONS(1167),
    [anon_sym_revert] = ACTIONS(1167),
    [anon_sym_selfdestruct] = ACTIONS(1167),
    [anon_sym_invalid] = ACTIONS(1167),
    [anon_sym_log0] = ACTIONS(1167),
    [anon_sym_log1] = ACTIONS(1167),
    [anon_sym_log2] = ACTIONS(1167),
    [anon_sym_log3] = ACTIONS(1167),
    [anon_sym_log4] = ACTIONS(1167),
    [anon_sym_chainid] = ACTIONS(1167),
    [anon_sym_origin] = ACTIONS(1167),
    [anon_sym_gasprice] = ACTIONS(1167),
    [anon_sym_blockhash] = ACTIONS(1167),
    [anon_sym_coinbase] = ACTIONS(1167),
    [anon_sym_timestamp] = ACTIONS(1167),
    [anon_sym_number] = ACTIONS(1167),
    [anon_sym_difficulty] = ACTIONS(1167),
    [anon_sym_gaslimit] = ACTIONS(1167),
    [anon_sym_DQUOTE] = ACTIONS(1169),
    [anon_sym_SQUOTE] = ACTIONS(1169),
    [sym_comment] = ACTIONS(3),
  },
  [280] = {
    [sym_identifier] = ACTIONS(1171),
    [anon_sym_LBRACE] = ACTIONS(1173),
    [anon_sym_RBRACE] = ACTIONS(1173),
    [anon_sym_for] = ACTIONS(1171),
    [sym_yul_leave] = ACTIONS(1171),
    [anon_sym_break] = ACTIONS(1171),
    [anon_sym_continue] = ACTIONS(1171),
    [sym_yul_decimal_number] = ACTIONS(1171),
    [sym_yul_hex_number] = ACTIONS(1173),
    [anon_sym_true] = ACTIONS(1171),
    [anon_sym_false] = ACTIONS(1171),
    [anon_sym_let] = ACTIONS(1171),
    [anon_sym_if] = ACTIONS(1171),
    [anon_sym_switch] = ACTIONS(1171),
    [anon_sym_function] = ACTIONS(1171),
    [anon_sym_stop] = ACTIONS(1171),
    [anon_sym_add] = ACTIONS(1171),
    [anon_sym_sub] = ACTIONS(1171),
    [anon_sym_mul] = ACTIONS(1171),
    [anon_sym_div] = ACTIONS(1171),
    [anon_sym_sdiv] = ACTIONS(1171),
    [anon_sym_mod] = ACTIONS(1171),
    [anon_sym_smod] = ACTIONS(1171),
    [anon_sym_exp] = ACTIONS(1171),
    [anon_sym_not] = ACTIONS(1171),
    [anon_sym_lt] = ACTIONS(1171),
    [anon_sym_gt] = ACTIONS(1171),
    [anon_sym_slt] = ACTIONS(1171),
    [anon_sym_sgt] = ACTIONS(1171),
    [anon_sym_eq] = ACTIONS(1171),
    [anon_sym_iszero] = ACTIONS(1171),
    [anon_sym_and] = ACTIONS(1171),
    [anon_sym_or] = ACTIONS(1171),
    [anon_sym_xor] = ACTIONS(1171),
    [anon_sym_byte] = ACTIONS(1171),
    [anon_sym_shl] = ACTIONS(1171),
    [anon_sym_shr] = ACTIONS(1171),
    [anon_sym_sar] = ACTIONS(1171),
    [anon_sym_addmod] = ACTIONS(1171),
    [anon_sym_mulmod] = ACTIONS(1171),
    [anon_sym_signextend] = ACTIONS(1171),
    [anon_sym_keccak256] = ACTIONS(1171),
    [anon_sym_pop] = ACTIONS(1171),
    [anon_sym_mload] = ACTIONS(1171),
    [anon_sym_mstore] = ACTIONS(1171),
    [anon_sym_mstore8] = ACTIONS(1171),
    [anon_sym_sload] = ACTIONS(1171),
    [anon_sym_sstore] = ACTIONS(1171),
    [anon_sym_msize] = ACTIONS(1171),
    [anon_sym_gas] = ACTIONS(1171),
    [anon_sym_address] = ACTIONS(1171),
    [anon_sym_balance] = ACTIONS(1171),
    [anon_sym_selfbalance] = ACTIONS(1171),
    [anon_sym_caller] = ACTIONS(1171),
    [anon_sym_callvalue] = ACTIONS(1171),
    [anon_sym_calldataload] = ACTIONS(1171),
    [anon_sym_calldatasize] = ACTIONS(1171),
    [anon_sym_calldatacopy] = ACTIONS(1171),
    [anon_sym_extcodesize] = ACTIONS(1171),
    [anon_sym_extcodecopy] = ACTIONS(1171),
    [anon_sym_returndatasize] = ACTIONS(1171),
    [anon_sym_returndatacopy] = ACTIONS(1171),
    [anon_sym_extcodehash] = ACTIONS(1171),
    [anon_sym_create] = ACTIONS(1171),
    [anon_sym_create2] = ACTIONS(1171),
    [anon_sym_call] = ACTIONS(1171),
    [anon_sym_callcode] = ACTIONS(1171),
    [anon_sym_delegatecall] = ACTIONS(1171),
    [anon_sym_staticcall] = ACTIONS(1171),
    [anon_sym_return] = ACTIONS(1171),
    [anon_sym_revert] = ACTIONS(1171),
    [anon_sym_selfdestruct] = ACTIONS(1171),
    [anon_sym_invalid] = ACTIONS(1171),
    [anon_sym_log0] = ACTIONS(1171),
    [anon_sym_log1] = ACTIONS(1171),
    [anon_sym_log2] = ACTIONS(1171),
    [anon_sym_log3] = ACTIONS(1171),
    [anon_sym_log4] = ACTIONS(1171),
    [anon_sym_chainid] = ACTIONS(1171),
    [anon_sym_origin] = ACTIONS(1171),
    [anon_sym_gasprice] = ACTIONS(1171),
    [anon_sym_blockhash] = ACTIONS(1171),
    [anon_sym_coinbase] = ACTIONS(1171),
    [anon_sym_timestamp] = ACTIONS(1171),
    [anon_sym_number] = ACTIONS(1171),
    [anon_sym_difficulty] = ACTIONS(1171),
    [anon_sym_gaslimit] = ACTIONS(1171),
    [anon_sym_DQUOTE] = ACTIONS(1173),
    [anon_sym_SQUOTE] = ACTIONS(1173),
    [sym_comment] = ACTIONS(3),
  },
  [281] = {
    [sym_yul_identifier] = STATE(218),
    [sym__yul_expression] = STATE(610),
    [sym_yul_path] = STATE(610),
    [sym__yul_literal] = STATE(610),
    [sym_yul_string_literal] = STATE(610),
    [sym_yul_boolean] = STATE(610),
    [sym_yul_function_call] = STATE(610),
    [sym_yul_evm_builtin] = STATE(227),
    [sym_string] = STATE(235),
    [sym_identifier] = ACTIONS(1075),
    [anon_sym_RPAREN] = ACTIONS(1175),
    [sym_yul_decimal_number] = ACTIONS(1177),
    [sym_yul_hex_number] = ACTIONS(1179),
    [anon_sym_true] = ACTIONS(827),
    [anon_sym_false] = ACTIONS(827),
    [anon_sym_stop] = ACTIONS(837),
    [anon_sym_add] = ACTIONS(837),
    [anon_sym_sub] = ACTIONS(837),
    [anon_sym_mul] = ACTIONS(837),
    [anon_sym_div] = ACTIONS(837),
    [anon_sym_sdiv] = ACTIONS(837),
    [anon_sym_mod] = ACTIONS(837),
    [anon_sym_smod] = ACTIONS(837),
    [anon_sym_exp] = ACTIONS(837),
    [anon_sym_not] = ACTIONS(837),
    [anon_sym_lt] = ACTIONS(837),
    [anon_sym_gt] = ACTIONS(837),
    [anon_sym_slt] = ACTIONS(837),
    [anon_sym_sgt] = ACTIONS(837),
    [anon_sym_eq] = ACTIONS(837),
    [anon_sym_iszero] = ACTIONS(837),
    [anon_sym_and] = ACTIONS(837),
    [anon_sym_or] = ACTIONS(837),
    [anon_sym_xor] = ACTIONS(837),
    [anon_sym_byte] = ACTIONS(837),
    [anon_sym_shl] = ACTIONS(837),
    [anon_sym_shr] = ACTIONS(837),
    [anon_sym_sar] = ACTIONS(837),
    [anon_sym_addmod] = ACTIONS(837),
    [anon_sym_mulmod] = ACTIONS(837),
    [anon_sym_signextend] = ACTIONS(837),
    [anon_sym_keccak256] = ACTIONS(837),
    [anon_sym_pop] = ACTIONS(837),
    [anon_sym_mload] = ACTIONS(837),
    [anon_sym_mstore] = ACTIONS(837),
    [anon_sym_mstore8] = ACTIONS(837),
    [anon_sym_sload] = ACTIONS(837),
    [anon_sym_sstore] = ACTIONS(837),
    [anon_sym_msize] = ACTIONS(837),
    [anon_sym_gas] = ACTIONS(837),
    [anon_sym_address] = ACTIONS(837),
    [anon_sym_balance] = ACTIONS(837),
    [anon_sym_selfbalance] = ACTIONS(837),
    [anon_sym_caller] = ACTIONS(837),
    [anon_sym_callvalue] = ACTIONS(837),
    [anon_sym_calldataload] = ACTIONS(837),
    [anon_sym_calldatasize] = ACTIONS(837),
    [anon_sym_calldatacopy] = ACTIONS(837),
    [anon_sym_extcodesize] = ACTIONS(837),
    [anon_sym_extcodecopy] = ACTIONS(837),
    [anon_sym_returndatasize] = ACTIONS(837),
    [anon_sym_returndatacopy] = ACTIONS(837),
    [anon_sym_extcodehash] = ACTIONS(837),
    [anon_sym_create] = ACTIONS(837),
    [anon_sym_create2] = ACTIONS(837),
    [anon_sym_call] = ACTIONS(837),
    [anon_sym_callcode] = ACTIONS(837),
    [anon_sym_delegatecall] = ACTIONS(837),
    [anon_sym_staticcall] = ACTIONS(837),
    [anon_sym_return] = ACTIONS(837),
    [anon_sym_revert] = ACTIONS(837),
    [anon_sym_selfdestruct] = ACTIONS(837),
    [anon_sym_invalid] = ACTIONS(837),
    [anon_sym_log0] = ACTIONS(837),
    [anon_sym_log1] = ACTIONS(837),
    [anon_sym_log2] = ACTIONS(837),
    [anon_sym_log3] = ACTIONS(837),
    [anon_sym_log4] = ACTIONS(837),
    [anon_sym_chainid] = ACTIONS(837),
    [anon_sym_origin] = ACTIONS(837),
    [anon_sym_gasprice] = ACTIONS(837),
    [anon_sym_blockhash] = ACTIONS(837),
    [anon_sym_coinbase] = ACTIONS(837),
    [anon_sym_timestamp] = ACTIONS(837),
    [anon_sym_number] = ACTIONS(837),
    [anon_sym_difficulty] = ACTIONS(837),
    [anon_sym_gaslimit] = ACTIONS(837),
    [anon_sym_DQUOTE] = ACTIONS(99),
    [anon_sym_SQUOTE] = ACTIONS(101),
    [sym_comment] = ACTIONS(3),
  },
  [282] = {
    [sym_identifier] = ACTIONS(1181),
    [anon_sym_LBRACE] = ACTIONS(1183),
    [anon_sym_RBRACE] = ACTIONS(1183),
    [anon_sym_for] = ACTIONS(1181),
    [sym_yul_leave] = ACTIONS(1181),
    [anon_sym_break] = ACTIONS(1181),
    [anon_sym_continue] = ACTIONS(1181),
    [sym_yul_decimal_number] = ACTIONS(1181),
    [sym_yul_hex_number] = ACTIONS(1183),
    [anon_sym_true] = ACTIONS(1181),
    [anon_sym_false] = ACTIONS(1181),
    [anon_sym_let] = ACTIONS(1181),
    [anon_sym_if] = ACTIONS(1181),
    [anon_sym_switch] = ACTIONS(1181),
    [anon_sym_function] = ACTIONS(1181),
    [anon_sym_stop] = ACTIONS(1181),
    [anon_sym_add] = ACTIONS(1181),
    [anon_sym_sub] = ACTIONS(1181),
    [anon_sym_mul] = ACTIONS(1181),
    [anon_sym_div] = ACTIONS(1181),
    [anon_sym_sdiv] = ACTIONS(1181),
    [anon_sym_mod] = ACTIONS(1181),
    [anon_sym_smod] = ACTIONS(1181),
    [anon_sym_exp] = ACTIONS(1181),
    [anon_sym_not] = ACTIONS(1181),
    [anon_sym_lt] = ACTIONS(1181),
    [anon_sym_gt] = ACTIONS(1181),
    [anon_sym_slt] = ACTIONS(1181),
    [anon_sym_sgt] = ACTIONS(1181),
    [anon_sym_eq] = ACTIONS(1181),
    [anon_sym_iszero] = ACTIONS(1181),
    [anon_sym_and] = ACTIONS(1181),
    [anon_sym_or] = ACTIONS(1181),
    [anon_sym_xor] = ACTIONS(1181),
    [anon_sym_byte] = ACTIONS(1181),
    [anon_sym_shl] = ACTIONS(1181),
    [anon_sym_shr] = ACTIONS(1181),
    [anon_sym_sar] = ACTIONS(1181),
    [anon_sym_addmod] = ACTIONS(1181),
    [anon_sym_mulmod] = ACTIONS(1181),
    [anon_sym_signextend] = ACTIONS(1181),
    [anon_sym_keccak256] = ACTIONS(1181),
    [anon_sym_pop] = ACTIONS(1181),
    [anon_sym_mload] = ACTIONS(1181),
    [anon_sym_mstore] = ACTIONS(1181),
    [anon_sym_mstore8] = ACTIONS(1181),
    [anon_sym_sload] = ACTIONS(1181),
    [anon_sym_sstore] = ACTIONS(1181),
    [anon_sym_msize] = ACTIONS(1181),
    [anon_sym_gas] = ACTIONS(1181),
    [anon_sym_address] = ACTIONS(1181),
    [anon_sym_balance] = ACTIONS(1181),
    [anon_sym_selfbalance] = ACTIONS(1181),
    [anon_sym_caller] = ACTIONS(1181),
    [anon_sym_callvalue] = ACTIONS(1181),
    [anon_sym_calldataload] = ACTIONS(1181),
    [anon_sym_calldatasize] = ACTIONS(1181),
    [anon_sym_calldatacopy] = ACTIONS(1181),
    [anon_sym_extcodesize] = ACTIONS(1181),
    [anon_sym_extcodecopy] = ACTIONS(1181),
    [anon_sym_returndatasize] = ACTIONS(1181),
    [anon_sym_returndatacopy] = ACTIONS(1181),
    [anon_sym_extcodehash] = ACTIONS(1181),
    [anon_sym_create] = ACTIONS(1181),
    [anon_sym_create2] = ACTIONS(1181),
    [anon_sym_call] = ACTIONS(1181),
    [anon_sym_callcode] = ACTIONS(1181),
    [anon_sym_delegatecall] = ACTIONS(1181),
    [anon_sym_staticcall] = ACTIONS(1181),
    [anon_sym_return] = ACTIONS(1181),
    [anon_sym_revert] = ACTIONS(1181),
    [anon_sym_selfdestruct] = ACTIONS(1181),
    [anon_sym_invalid] = ACTIONS(1181),
    [anon_sym_log0] = ACTIONS(1181),
    [anon_sym_log1] = ACTIONS(1181),
    [anon_sym_log2] = ACTIONS(1181),
    [anon_sym_log3] = ACTIONS(1181),
    [anon_sym_log4] = ACTIONS(1181),
    [anon_sym_chainid] = ACTIONS(1181),
    [anon_sym_origin] = ACTIONS(1181),
    [anon_sym_gasprice] = ACTIONS(1181),
    [anon_sym_blockhash] = ACTIONS(1181),
    [anon_sym_coinbase] = ACTIONS(1181),
    [anon_sym_timestamp] = ACTIONS(1181),
    [anon_sym_number] = ACTIONS(1181),
    [anon_sym_difficulty] = ACTIONS(1181),
    [anon_sym_gaslimit] = ACTIONS(1181),
    [anon_sym_DQUOTE] = ACTIONS(1183),
    [anon_sym_SQUOTE] = ACTIONS(1183),
    [sym_comment] = ACTIONS(3),
  },
  [283] = {
    [sym_yul_identifier] = STATE(218),
    [sym__yul_expression] = STATE(277),
    [sym_yul_path] = STATE(277),
    [sym__yul_literal] = STATE(277),
    [sym_yul_string_literal] = STATE(277),
    [sym_yul_boolean] = STATE(277),
    [sym_yul_function_call] = STATE(274),
    [sym_yul_evm_builtin] = STATE(227),
    [sym_string] = STATE(235),
    [sym_identifier] = ACTIONS(1075),
    [sym_yul_decimal_number] = ACTIONS(1185),
    [sym_yul_hex_number] = ACTIONS(1187),
    [anon_sym_true] = ACTIONS(827),
    [anon_sym_false] = ACTIONS(827),
    [anon_sym_stop] = ACTIONS(837),
    [anon_sym_add] = ACTIONS(837),
    [anon_sym_sub] = ACTIONS(837),
    [anon_sym_mul] = ACTIONS(837),
    [anon_sym_div] = ACTIONS(837),
    [anon_sym_sdiv] = ACTIONS(837),
    [anon_sym_mod] = ACTIONS(837),
    [anon_sym_smod] = ACTIONS(837),
    [anon_sym_exp] = ACTIONS(837),
    [anon_sym_not] = ACTIONS(837),
    [anon_sym_lt] = ACTIONS(837),
    [anon_sym_gt] = ACTIONS(837),
    [anon_sym_slt] = ACTIONS(837),
    [anon_sym_sgt] = ACTIONS(837),
    [anon_sym_eq] = ACTIONS(837),
    [anon_sym_iszero] = ACTIONS(837),
    [anon_sym_and] = ACTIONS(837),
    [anon_sym_or] = ACTIONS(837),
    [anon_sym_xor] = ACTIONS(837),
    [anon_sym_byte] = ACTIONS(837),
    [anon_sym_shl] = ACTIONS(837),
    [anon_sym_shr] = ACTIONS(837),
    [anon_sym_sar] = ACTIONS(837),
    [anon_sym_addmod] = ACTIONS(837),
    [anon_sym_mulmod] = ACTIONS(837),
    [anon_sym_signextend] = ACTIONS(837),
    [anon_sym_keccak256] = ACTIONS(837),
    [anon_sym_pop] = ACTIONS(837),
    [anon_sym_mload] = ACTIONS(837),
    [anon_sym_mstore] = ACTIONS(837),
    [anon_sym_mstore8] = ACTIONS(837),
    [anon_sym_sload] = ACTIONS(837),
    [anon_sym_sstore] = ACTIONS(837),
    [anon_sym_msize] = ACTIONS(837),
    [anon_sym_gas] = ACTIONS(837),
    [anon_sym_address] = ACTIONS(837),
    [anon_sym_balance] = ACTIONS(837),
    [anon_sym_selfbalance] = ACTIONS(837),
    [anon_sym_caller] = ACTIONS(837),
    [anon_sym_callvalue] = ACTIONS(837),
    [anon_sym_calldataload] = ACTIONS(837),
    [anon_sym_calldatasize] = ACTIONS(837),
    [anon_sym_calldatacopy] = ACTIONS(837),
    [anon_sym_extcodesize] = ACTIONS(837),
    [anon_sym_extcodecopy] = ACTIONS(837),
    [anon_sym_returndatasize] = ACTIONS(837),
    [anon_sym_returndatacopy] = ACTIONS(837),
    [anon_sym_extcodehash] = ACTIONS(837),
    [anon_sym_create] = ACTIONS(837),
    [anon_sym_create2] = ACTIONS(837),
    [anon_sym_call] = ACTIONS(837),
    [anon_sym_callcode] = ACTIONS(837),
    [anon_sym_delegatecall] = ACTIONS(837),
    [anon_sym_staticcall] = ACTIONS(837),
    [anon_sym_return] = ACTIONS(837),
    [anon_sym_revert] = ACTIONS(837),
    [anon_sym_selfdestruct] = ACTIONS(837),
    [anon_sym_invalid] = ACTIONS(837),
    [anon_sym_log0] = ACTIONS(837),
    [anon_sym_log1] = ACTIONS(837),
    [anon_sym_log2] = ACTIONS(837),
    [anon_sym_log3] = ACTIONS(837),
    [anon_sym_log4] = ACTIONS(837),
    [anon_sym_chainid] = ACTIONS(837),
    [anon_sym_origin] = ACTIONS(837),
    [anon_sym_gasprice] = ACTIONS(837),
    [anon_sym_blockhash] = ACTIONS(837),
    [anon_sym_coinbase] = ACTIONS(837),
    [anon_sym_timestamp] = ACTIONS(837),
    [anon_sym_number] = ACTIONS(837),
    [anon_sym_difficulty] = ACTIONS(837),
    [anon_sym_gaslimit] = ACTIONS(837),
    [anon_sym_DQUOTE] = ACTIONS(839),
    [anon_sym_SQUOTE] = ACTIONS(841),
    [sym_comment] = ACTIONS(3),
  },
  [284] = {
    [sym_yul_identifier] = STATE(218),
    [sym__yul_expression] = STATE(679),
    [sym_yul_path] = STATE(679),
    [sym__yul_literal] = STATE(679),
    [sym_yul_string_literal] = STATE(679),
    [sym_yul_boolean] = STATE(679),
    [sym_yul_function_call] = STATE(679),
    [sym_yul_evm_builtin] = STATE(227),
    [sym_string] = STATE(235),
    [sym_identifier] = ACTIONS(1075),
    [sym_yul_decimal_number] = ACTIONS(1189),
    [sym_yul_hex_number] = ACTIONS(1191),
    [anon_sym_true] = ACTIONS(827),
    [anon_sym_false] = ACTIONS(827),
    [anon_sym_stop] = ACTIONS(837),
    [anon_sym_add] = ACTIONS(837),
    [anon_sym_sub] = ACTIONS(837),
    [anon_sym_mul] = ACTIONS(837),
    [anon_sym_div] = ACTIONS(837),
    [anon_sym_sdiv] = ACTIONS(837),
    [anon_sym_mod] = ACTIONS(837),
    [anon_sym_smod] = ACTIONS(837),
    [anon_sym_exp] = ACTIONS(837),
    [anon_sym_not] = ACTIONS(837),
    [anon_sym_lt] = ACTIONS(837),
    [anon_sym_gt] = ACTIONS(837),
    [anon_sym_slt] = ACTIONS(837),
    [anon_sym_sgt] = ACTIONS(837),
    [anon_sym_eq] = ACTIONS(837),
    [anon_sym_iszero] = ACTIONS(837),
    [anon_sym_and] = ACTIONS(837),
    [anon_sym_or] = ACTIONS(837),
    [anon_sym_xor] = ACTIONS(837),
    [anon_sym_byte] = ACTIONS(837),
    [anon_sym_shl] = ACTIONS(837),
    [anon_sym_shr] = ACTIONS(837),
    [anon_sym_sar] = ACTIONS(837),
    [anon_sym_addmod] = ACTIONS(837),
    [anon_sym_mulmod] = ACTIONS(837),
    [anon_sym_signextend] = ACTIONS(837),
    [anon_sym_keccak256] = ACTIONS(837),
    [anon_sym_pop] = ACTIONS(837),
    [anon_sym_mload] = ACTIONS(837),
    [anon_sym_mstore] = ACTIONS(837),
    [anon_sym_mstore8] = ACTIONS(837),
    [anon_sym_sload] = ACTIONS(837),
    [anon_sym_sstore] = ACTIONS(837),
    [anon_sym_msize] = ACTIONS(837),
    [anon_sym_gas] = ACTIONS(837),
    [anon_sym_address] = ACTIONS(837),
    [anon_sym_balance] = ACTIONS(837),
    [anon_sym_selfbalance] = ACTIONS(837),
    [anon_sym_caller] = ACTIONS(837),
    [anon_sym_callvalue] = ACTIONS(837),
    [anon_sym_calldataload] = ACTIONS(837),
    [anon_sym_calldatasize] = ACTIONS(837),
    [anon_sym_calldatacopy] = ACTIONS(837),
    [anon_sym_extcodesize] = ACTIONS(837),
    [anon_sym_extcodecopy] = ACTIONS(837),
    [anon_sym_returndatasize] = ACTIONS(837),
    [anon_sym_returndatacopy] = ACTIONS(837),
    [anon_sym_extcodehash] = ACTIONS(837),
    [anon_sym_create] = ACTIONS(837),
    [anon_sym_create2] = ACTIONS(837),
    [anon_sym_call] = ACTIONS(837),
    [anon_sym_callcode] = ACTIONS(837),
    [anon_sym_delegatecall] = ACTIONS(837),
    [anon_sym_staticcall] = ACTIONS(837),
    [anon_sym_return] = ACTIONS(837),
    [anon_sym_revert] = ACTIONS(837),
    [anon_sym_selfdestruct] = ACTIONS(837),
    [anon_sym_invalid] = ACTIONS(837),
    [anon_sym_log0] = ACTIONS(837),
    [anon_sym_log1] = ACTIONS(837),
    [anon_sym_log2] = ACTIONS(837),
    [anon_sym_log3] = ACTIONS(837),
    [anon_sym_log4] = ACTIONS(837),
    [anon_sym_chainid] = ACTIONS(837),
    [anon_sym_origin] = ACTIONS(837),
    [anon_sym_gasprice] = ACTIONS(837),
    [anon_sym_blockhash] = ACTIONS(837),
    [anon_sym_coinbase] = ACTIONS(837),
    [anon_sym_timestamp] = ACTIONS(837),
    [anon_sym_number] = ACTIONS(837),
    [anon_sym_difficulty] = ACTIONS(837),
    [anon_sym_gaslimit] = ACTIONS(837),
    [anon_sym_DQUOTE] = ACTIONS(99),
    [anon_sym_SQUOTE] = ACTIONS(101),
    [sym_comment] = ACTIONS(3),
  },
  [285] = {
    [sym_yul_identifier] = STATE(218),
    [sym__yul_expression] = STATE(254),
    [sym_yul_path] = STATE(254),
    [sym__yul_literal] = STATE(254),
    [sym_yul_string_literal] = STATE(254),
    [sym_yul_boolean] = STATE(254),
    [sym_yul_function_call] = STATE(275),
    [sym_yul_evm_builtin] = STATE(227),
    [sym_string] = STATE(235),
    [sym_identifier] = ACTIONS(1075),
    [sym_yul_decimal_number] = ACTIONS(1193),
    [sym_yul_hex_number] = ACTIONS(1195),
    [anon_sym_true] = ACTIONS(827),
    [anon_sym_false] = ACTIONS(827),
    [anon_sym_stop] = ACTIONS(837),
    [anon_sym_add] = ACTIONS(837),
    [anon_sym_sub] = ACTIONS(837),
    [anon_sym_mul] = ACTIONS(837),
    [anon_sym_div] = ACTIONS(837),
    [anon_sym_sdiv] = ACTIONS(837),
    [anon_sym_mod] = ACTIONS(837),
    [anon_sym_smod] = ACTIONS(837),
    [anon_sym_exp] = ACTIONS(837),
    [anon_sym_not] = ACTIONS(837),
    [anon_sym_lt] = ACTIONS(837),
    [anon_sym_gt] = ACTIONS(837),
    [anon_sym_slt] = ACTIONS(837),
    [anon_sym_sgt] = ACTIONS(837),
    [anon_sym_eq] = ACTIONS(837),
    [anon_sym_iszero] = ACTIONS(837),
    [anon_sym_and] = ACTIONS(837),
    [anon_sym_or] = ACTIONS(837),
    [anon_sym_xor] = ACTIONS(837),
    [anon_sym_byte] = ACTIONS(837),
    [anon_sym_shl] = ACTIONS(837),
    [anon_sym_shr] = ACTIONS(837),
    [anon_sym_sar] = ACTIONS(837),
    [anon_sym_addmod] = ACTIONS(837),
    [anon_sym_mulmod] = ACTIONS(837),
    [anon_sym_signextend] = ACTIONS(837),
    [anon_sym_keccak256] = ACTIONS(837),
    [anon_sym_pop] = ACTIONS(837),
    [anon_sym_mload] = ACTIONS(837),
    [anon_sym_mstore] = ACTIONS(837),
    [anon_sym_mstore8] = ACTIONS(837),
    [anon_sym_sload] = ACTIONS(837),
    [anon_sym_sstore] = ACTIONS(837),
    [anon_sym_msize] = ACTIONS(837),
    [anon_sym_gas] = ACTIONS(837),
    [anon_sym_address] = ACTIONS(837),
    [anon_sym_balance] = ACTIONS(837),
    [anon_sym_selfbalance] = ACTIONS(837),
    [anon_sym_caller] = ACTIONS(837),
    [anon_sym_callvalue] = ACTIONS(837),
    [anon_sym_calldataload] = ACTIONS(837),
    [anon_sym_calldatasize] = ACTIONS(837),
    [anon_sym_calldatacopy] = ACTIONS(837),
    [anon_sym_extcodesize] = ACTIONS(837),
    [anon_sym_extcodecopy] = ACTIONS(837),
    [anon_sym_returndatasize] = ACTIONS(837),
    [anon_sym_returndatacopy] = ACTIONS(837),
    [anon_sym_extcodehash] = ACTIONS(837),
    [anon_sym_create] = ACTIONS(837),
    [anon_sym_create2] = ACTIONS(837),
    [anon_sym_call] = ACTIONS(837),
    [anon_sym_callcode] = ACTIONS(837),
    [anon_sym_delegatecall] = ACTIONS(837),
    [anon_sym_staticcall] = ACTIONS(837),
    [anon_sym_return] = ACTIONS(837),
    [anon_sym_revert] = ACTIONS(837),
    [anon_sym_selfdestruct] = ACTIONS(837),
    [anon_sym_invalid] = ACTIONS(837),
    [anon_sym_log0] = ACTIONS(837),
    [anon_sym_log1] = ACTIONS(837),
    [anon_sym_log2] = ACTIONS(837),
    [anon_sym_log3] = ACTIONS(837),
    [anon_sym_log4] = ACTIONS(837),
    [anon_sym_chainid] = ACTIONS(837),
    [anon_sym_origin] = ACTIONS(837),
    [anon_sym_gasprice] = ACTIONS(837),
    [anon_sym_blockhash] = ACTIONS(837),
    [anon_sym_coinbase] = ACTIONS(837),
    [anon_sym_timestamp] = ACTIONS(837),
    [anon_sym_number] = ACTIONS(837),
    [anon_sym_difficulty] = ACTIONS(837),
    [anon_sym_gaslimit] = ACTIONS(837),
    [anon_sym_DQUOTE] = ACTIONS(839),
    [anon_sym_SQUOTE] = ACTIONS(841),
    [sym_comment] = ACTIONS(3),
  },
  [286] = {
    [sym_yul_identifier] = STATE(218),
    [sym__yul_expression] = STATE(699),
    [sym_yul_path] = STATE(699),
    [sym__yul_literal] = STATE(699),
    [sym_yul_string_literal] = STATE(699),
    [sym_yul_boolean] = STATE(699),
    [sym_yul_function_call] = STATE(699),
    [sym_yul_evm_builtin] = STATE(227),
    [sym_string] = STATE(235),
    [sym_identifier] = ACTIONS(1075),
    [sym_yul_decimal_number] = ACTIONS(1079),
    [sym_yul_hex_number] = ACTIONS(1081),
    [anon_sym_true] = ACTIONS(827),
    [anon_sym_false] = ACTIONS(827),
    [anon_sym_stop] = ACTIONS(837),
    [anon_sym_add] = ACTIONS(837),
    [anon_sym_sub] = ACTIONS(837),
    [anon_sym_mul] = ACTIONS(837),
    [anon_sym_div] = ACTIONS(837),
    [anon_sym_sdiv] = ACTIONS(837),
    [anon_sym_mod] = ACTIONS(837),
    [anon_sym_smod] = ACTIONS(837),
    [anon_sym_exp] = ACTIONS(837),
    [anon_sym_not] = ACTIONS(837),
    [anon_sym_lt] = ACTIONS(837),
    [anon_sym_gt] = ACTIONS(837),
    [anon_sym_slt] = ACTIONS(837),
    [anon_sym_sgt] = ACTIONS(837),
    [anon_sym_eq] = ACTIONS(837),
    [anon_sym_iszero] = ACTIONS(837),
    [anon_sym_and] = ACTIONS(837),
    [anon_sym_or] = ACTIONS(837),
    [anon_sym_xor] = ACTIONS(837),
    [anon_sym_byte] = ACTIONS(837),
    [anon_sym_shl] = ACTIONS(837),
    [anon_sym_shr] = ACTIONS(837),
    [anon_sym_sar] = ACTIONS(837),
    [anon_sym_addmod] = ACTIONS(837),
    [anon_sym_mulmod] = ACTIONS(837),
    [anon_sym_signextend] = ACTIONS(837),
    [anon_sym_keccak256] = ACTIONS(837),
    [anon_sym_pop] = ACTIONS(837),
    [anon_sym_mload] = ACTIONS(837),
    [anon_sym_mstore] = ACTIONS(837),
    [anon_sym_mstore8] = ACTIONS(837),
    [anon_sym_sload] = ACTIONS(837),
    [anon_sym_sstore] = ACTIONS(837),
    [anon_sym_msize] = ACTIONS(837),
    [anon_sym_gas] = ACTIONS(837),
    [anon_sym_address] = ACTIONS(837),
    [anon_sym_balance] = ACTIONS(837),
    [anon_sym_selfbalance] = ACTIONS(837),
    [anon_sym_caller] = ACTIONS(837),
    [anon_sym_callvalue] = ACTIONS(837),
    [anon_sym_calldataload] = ACTIONS(837),
    [anon_sym_calldatasize] = ACTIONS(837),
    [anon_sym_calldatacopy] = ACTIONS(837),
    [anon_sym_extcodesize] = ACTIONS(837),
    [anon_sym_extcodecopy] = ACTIONS(837),
    [anon_sym_returndatasize] = ACTIONS(837),
    [anon_sym_returndatacopy] = ACTIONS(837),
    [anon_sym_extcodehash] = ACTIONS(837),
    [anon_sym_create] = ACTIONS(837),
    [anon_sym_create2] = ACTIONS(837),
    [anon_sym_call] = ACTIONS(837),
    [anon_sym_callcode] = ACTIONS(837),
    [anon_sym_delegatecall] = ACTIONS(837),
    [anon_sym_staticcall] = ACTIONS(837),
    [anon_sym_return] = ACTIONS(837),
    [anon_sym_revert] = ACTIONS(837),
    [anon_sym_selfdestruct] = ACTIONS(837),
    [anon_sym_invalid] = ACTIONS(837),
    [anon_sym_log0] = ACTIONS(837),
    [anon_sym_log1] = ACTIONS(837),
    [anon_sym_log2] = ACTIONS(837),
    [anon_sym_log3] = ACTIONS(837),
    [anon_sym_log4] = ACTIONS(837),
    [anon_sym_chainid] = ACTIONS(837),
    [anon_sym_origin] = ACTIONS(837),
    [anon_sym_gasprice] = ACTIONS(837),
    [anon_sym_blockhash] = ACTIONS(837),
    [anon_sym_coinbase] = ACTIONS(837),
    [anon_sym_timestamp] = ACTIONS(837),
    [anon_sym_number] = ACTIONS(837),
    [anon_sym_difficulty] = ACTIONS(837),
    [anon_sym_gaslimit] = ACTIONS(837),
    [anon_sym_DQUOTE] = ACTIONS(99),
    [anon_sym_SQUOTE] = ACTIONS(101),
    [sym_comment] = ACTIONS(3),
  },
  [287] = {
    [sym_yul_identifier] = STATE(218),
    [sym__yul_expression] = STATE(629),
    [sym_yul_path] = STATE(629),
    [sym__yul_literal] = STATE(629),
    [sym_yul_string_literal] = STATE(629),
    [sym_yul_boolean] = STATE(629),
    [sym_yul_function_call] = STATE(629),
    [sym_yul_evm_builtin] = STATE(227),
    [sym_string] = STATE(235),
    [sym_identifier] = ACTIONS(1075),
    [sym_yul_decimal_number] = ACTIONS(1197),
    [sym_yul_hex_number] = ACTIONS(1199),
    [anon_sym_true] = ACTIONS(827),
    [anon_sym_false] = ACTIONS(827),
    [anon_sym_stop] = ACTIONS(837),
    [anon_sym_add] = ACTIONS(837),
    [anon_sym_sub] = ACTIONS(837),
    [anon_sym_mul] = ACTIONS(837),
    [anon_sym_div] = ACTIONS(837),
    [anon_sym_sdiv] = ACTIONS(837),
    [anon_sym_mod] = ACTIONS(837),
    [anon_sym_smod] = ACTIONS(837),
    [anon_sym_exp] = ACTIONS(837),
    [anon_sym_not] = ACTIONS(837),
    [anon_sym_lt] = ACTIONS(837),
    [anon_sym_gt] = ACTIONS(837),
    [anon_sym_slt] = ACTIONS(837),
    [anon_sym_sgt] = ACTIONS(837),
    [anon_sym_eq] = ACTIONS(837),
    [anon_sym_iszero] = ACTIONS(837),
    [anon_sym_and] = ACTIONS(837),
    [anon_sym_or] = ACTIONS(837),
    [anon_sym_xor] = ACTIONS(837),
    [anon_sym_byte] = ACTIONS(837),
    [anon_sym_shl] = ACTIONS(837),
    [anon_sym_shr] = ACTIONS(837),
    [anon_sym_sar] = ACTIONS(837),
    [anon_sym_addmod] = ACTIONS(837),
    [anon_sym_mulmod] = ACTIONS(837),
    [anon_sym_signextend] = ACTIONS(837),
    [anon_sym_keccak256] = ACTIONS(837),
    [anon_sym_pop] = ACTIONS(837),
    [anon_sym_mload] = ACTIONS(837),
    [anon_sym_mstore] = ACTIONS(837),
    [anon_sym_mstore8] = ACTIONS(837),
    [anon_sym_sload] = ACTIONS(837),
    [anon_sym_sstore] = ACTIONS(837),
    [anon_sym_msize] = ACTIONS(837),
    [anon_sym_gas] = ACTIONS(837),
    [anon_sym_address] = ACTIONS(837),
    [anon_sym_balance] = ACTIONS(837),
    [anon_sym_selfbalance] = ACTIONS(837),
    [anon_sym_caller] = ACTIONS(837),
    [anon_sym_callvalue] = ACTIONS(837),
    [anon_sym_calldataload] = ACTIONS(837),
    [anon_sym_calldatasize] = ACTIONS(837),
    [anon_sym_calldatacopy] = ACTIONS(837),
    [anon_sym_extcodesize] = ACTIONS(837),
    [anon_sym_extcodecopy] = ACTIONS(837),
    [anon_sym_returndatasize] = ACTIONS(837),
    [anon_sym_returndatacopy] = ACTIONS(837),
    [anon_sym_extcodehash] = ACTIONS(837),
    [anon_sym_create] = ACTIONS(837),
    [anon_sym_create2] = ACTIONS(837),
    [anon_sym_call] = ACTIONS(837),
    [anon_sym_callcode] = ACTIONS(837),
    [anon_sym_delegatecall] = ACTIONS(837),
    [anon_sym_staticcall] = ACTIONS(837),
    [anon_sym_return] = ACTIONS(837),
    [anon_sym_revert] = ACTIONS(837),
    [anon_sym_selfdestruct] = ACTIONS(837),
    [anon_sym_invalid] = ACTIONS(837),
    [anon_sym_log0] = ACTIONS(837),
    [anon_sym_log1] = ACTIONS(837),
    [anon_sym_log2] = ACTIONS(837),
    [anon_sym_log3] = ACTIONS(837),
    [anon_sym_log4] = ACTIONS(837),
    [anon_sym_chainid] = ACTIONS(837),
    [anon_sym_origin] = ACTIONS(837),
    [anon_sym_gasprice] = ACTIONS(837),
    [anon_sym_blockhash] = ACTIONS(837),
    [anon_sym_coinbase] = ACTIONS(837),
    [anon_sym_timestamp] = ACTIONS(837),
    [anon_sym_number] = ACTIONS(837),
    [anon_sym_difficulty] = ACTIONS(837),
    [anon_sym_gaslimit] = ACTIONS(837),
    [anon_sym_DQUOTE] = ACTIONS(99),
    [anon_sym_SQUOTE] = ACTIONS(101),
    [sym_comment] = ACTIONS(3),
  },
  [288] = {
    [sym_yul_identifier] = STATE(218),
    [sym__yul_expression] = STATE(559),
    [sym_yul_path] = STATE(559),
    [sym__yul_literal] = STATE(559),
    [sym_yul_string_literal] = STATE(559),
    [sym_yul_boolean] = STATE(559),
    [sym_yul_function_call] = STATE(559),
    [sym_yul_evm_builtin] = STATE(227),
    [sym_string] = STATE(235),
    [sym_identifier] = ACTIONS(1075),
    [sym_yul_decimal_number] = ACTIONS(1201),
    [sym_yul_hex_number] = ACTIONS(1203),
    [anon_sym_true] = ACTIONS(827),
    [anon_sym_false] = ACTIONS(827),
    [anon_sym_stop] = ACTIONS(837),
    [anon_sym_add] = ACTIONS(837),
    [anon_sym_sub] = ACTIONS(837),
    [anon_sym_mul] = ACTIONS(837),
    [anon_sym_div] = ACTIONS(837),
    [anon_sym_sdiv] = ACTIONS(837),
    [anon_sym_mod] = ACTIONS(837),
    [anon_sym_smod] = ACTIONS(837),
    [anon_sym_exp] = ACTIONS(837),
    [anon_sym_not] = ACTIONS(837),
    [anon_sym_lt] = ACTIONS(837),
    [anon_sym_gt] = ACTIONS(837),
    [anon_sym_slt] = ACTIONS(837),
    [anon_sym_sgt] = ACTIONS(837),
    [anon_sym_eq] = ACTIONS(837),
    [anon_sym_iszero] = ACTIONS(837),
    [anon_sym_and] = ACTIONS(837),
    [anon_sym_or] = ACTIONS(837),
    [anon_sym_xor] = ACTIONS(837),
    [anon_sym_byte] = ACTIONS(837),
    [anon_sym_shl] = ACTIONS(837),
    [anon_sym_shr] = ACTIONS(837),
    [anon_sym_sar] = ACTIONS(837),
    [anon_sym_addmod] = ACTIONS(837),
    [anon_sym_mulmod] = ACTIONS(837),
    [anon_sym_signextend] = ACTIONS(837),
    [anon_sym_keccak256] = ACTIONS(837),
    [anon_sym_pop] = ACTIONS(837),
    [anon_sym_mload] = ACTIONS(837),
    [anon_sym_mstore] = ACTIONS(837),
    [anon_sym_mstore8] = ACTIONS(837),
    [anon_sym_sload] = ACTIONS(837),
    [anon_sym_sstore] = ACTIONS(837),
    [anon_sym_msize] = ACTIONS(837),
    [anon_sym_gas] = ACTIONS(837),
    [anon_sym_address] = ACTIONS(837),
    [anon_sym_balance] = ACTIONS(837),
    [anon_sym_selfbalance] = ACTIONS(837),
    [anon_sym_caller] = ACTIONS(837),
    [anon_sym_callvalue] = ACTIONS(837),
    [anon_sym_calldataload] = ACTIONS(837),
    [anon_sym_calldatasize] = ACTIONS(837),
    [anon_sym_calldatacopy] = ACTIONS(837),
    [anon_sym_extcodesize] = ACTIONS(837),
    [anon_sym_extcodecopy] = ACTIONS(837),
    [anon_sym_returndatasize] = ACTIONS(837),
    [anon_sym_returndatacopy] = ACTIONS(837),
    [anon_sym_extcodehash] = ACTIONS(837),
    [anon_sym_create] = ACTIONS(837),
    [anon_sym_create2] = ACTIONS(837),
    [anon_sym_call] = ACTIONS(837),
    [anon_sym_callcode] = ACTIONS(837),
    [anon_sym_delegatecall] = ACTIONS(837),
    [anon_sym_staticcall] = ACTIONS(837),
    [anon_sym_return] = ACTIONS(837),
    [anon_sym_revert] = ACTIONS(837),
    [anon_sym_selfdestruct] = ACTIONS(837),
    [anon_sym_invalid] = ACTIONS(837),
    [anon_sym_log0] = ACTIONS(837),
    [anon_sym_log1] = ACTIONS(837),
    [anon_sym_log2] = ACTIONS(837),
    [anon_sym_log3] = ACTIONS(837),
    [anon_sym_log4] = ACTIONS(837),
    [anon_sym_chainid] = ACTIONS(837),
    [anon_sym_origin] = ACTIONS(837),
    [anon_sym_gasprice] = ACTIONS(837),
    [anon_sym_blockhash] = ACTIONS(837),
    [anon_sym_coinbase] = ACTIONS(837),
    [anon_sym_timestamp] = ACTIONS(837),
    [anon_sym_number] = ACTIONS(837),
    [anon_sym_difficulty] = ACTIONS(837),
    [anon_sym_gaslimit] = ACTIONS(837),
    [anon_sym_DQUOTE] = ACTIONS(99),
    [anon_sym_SQUOTE] = ACTIONS(101),
    [sym_comment] = ACTIONS(3),
  },
  [289] = {
    [sym_identifier] = ACTIONS(1205),
    [sym_yul_decimal_number] = ACTIONS(1205),
    [sym_yul_hex_number] = ACTIONS(1207),
    [anon_sym_true] = ACTIONS(1205),
    [anon_sym_false] = ACTIONS(1205),
    [anon_sym_stop] = ACTIONS(1205),
    [anon_sym_add] = ACTIONS(1205),
    [anon_sym_sub] = ACTIONS(1205),
    [anon_sym_mul] = ACTIONS(1205),
    [anon_sym_div] = ACTIONS(1205),
    [anon_sym_sdiv] = ACTIONS(1205),
    [anon_sym_mod] = ACTIONS(1205),
    [anon_sym_smod] = ACTIONS(1205),
    [anon_sym_exp] = ACTIONS(1205),
    [anon_sym_not] = ACTIONS(1205),
    [anon_sym_lt] = ACTIONS(1205),
    [anon_sym_gt] = ACTIONS(1205),
    [anon_sym_slt] = ACTIONS(1205),
    [anon_sym_sgt] = ACTIONS(1205),
    [anon_sym_eq] = ACTIONS(1205),
    [anon_sym_iszero] = ACTIONS(1205),
    [anon_sym_and] = ACTIONS(1205),
    [anon_sym_or] = ACTIONS(1205),
    [anon_sym_xor] = ACTIONS(1205),
    [anon_sym_byte] = ACTIONS(1205),
    [anon_sym_shl] = ACTIONS(1205),
    [anon_sym_shr] = ACTIONS(1205),
    [anon_sym_sar] = ACTIONS(1205),
    [anon_sym_addmod] = ACTIONS(1205),
    [anon_sym_mulmod] = ACTIONS(1205),
    [anon_sym_signextend] = ACTIONS(1205),
    [anon_sym_keccak256] = ACTIONS(1205),
    [anon_sym_pop] = ACTIONS(1205),
    [anon_sym_mload] = ACTIONS(1205),
    [anon_sym_mstore] = ACTIONS(1205),
    [anon_sym_mstore8] = ACTIONS(1205),
    [anon_sym_sload] = ACTIONS(1205),
    [anon_sym_sstore] = ACTIONS(1205),
    [anon_sym_msize] = ACTIONS(1205),
    [anon_sym_gas] = ACTIONS(1205),
    [anon_sym_address] = ACTIONS(1205),
    [anon_sym_balance] = ACTIONS(1205),
    [anon_sym_selfbalance] = ACTIONS(1205),
    [anon_sym_caller] = ACTIONS(1205),
    [anon_sym_callvalue] = ACTIONS(1205),
    [anon_sym_calldataload] = ACTIONS(1205),
    [anon_sym_calldatasize] = ACTIONS(1205),
    [anon_sym_calldatacopy] = ACTIONS(1205),
    [anon_sym_extcodesize] = ACTIONS(1205),
    [anon_sym_extcodecopy] = ACTIONS(1205),
    [anon_sym_returndatasize] = ACTIONS(1205),
    [anon_sym_returndatacopy] = ACTIONS(1205),
    [anon_sym_extcodehash] = ACTIONS(1205),
    [anon_sym_create] = ACTIONS(1205),
    [anon_sym_create2] = ACTIONS(1205),
    [anon_sym_call] = ACTIONS(1205),
    [anon_sym_callcode] = ACTIONS(1205),
    [anon_sym_delegatecall] = ACTIONS(1205),
    [anon_sym_staticcall] = ACTIONS(1205),
    [anon_sym_return] = ACTIONS(1205),
    [anon_sym_revert] = ACTIONS(1205),
    [anon_sym_selfdestruct] = ACTIONS(1205),
    [anon_sym_invalid] = ACTIONS(1205),
    [anon_sym_log0] = ACTIONS(1205),
    [anon_sym_log1] = ACTIONS(1205),
    [anon_sym_log2] = ACTIONS(1205),
    [anon_sym_log3] = ACTIONS(1205),
    [anon_sym_log4] = ACTIONS(1205),
    [anon_sym_chainid] = ACTIONS(1205),
    [anon_sym_origin] = ACTIONS(1205),
    [anon_sym_gasprice] = ACTIONS(1205),
    [anon_sym_blockhash] = ACTIONS(1205),
    [anon_sym_coinbase] = ACTIONS(1205),
    [anon_sym_timestamp] = ACTIONS(1205),
    [anon_sym_number] = ACTIONS(1205),
    [anon_sym_difficulty] = ACTIONS(1205),
    [anon_sym_gaslimit] = ACTIONS(1205),
    [anon_sym_DQUOTE] = ACTIONS(1207),
    [anon_sym_SQUOTE] = ACTIONS(1207),
    [sym_comment] = ACTIONS(3),
  },
  [290] = {
    [sym_yul_identifier] = STATE(750),
    [sym_yul_function_call] = STATE(263),
    [sym_yul_evm_builtin] = STATE(227),
    [sym_identifier] = ACTIONS(1075),
    [anon_sym_stop] = ACTIONS(837),
    [anon_sym_add] = ACTIONS(837),
    [anon_sym_sub] = ACTIONS(837),
    [anon_sym_mul] = ACTIONS(837),
    [anon_sym_div] = ACTIONS(837),
    [anon_sym_sdiv] = ACTIONS(837),
    [anon_sym_mod] = ACTIONS(837),
    [anon_sym_smod] = ACTIONS(837),
    [anon_sym_exp] = ACTIONS(837),
    [anon_sym_not] = ACTIONS(837),
    [anon_sym_lt] = ACTIONS(837),
    [anon_sym_gt] = ACTIONS(837),
    [anon_sym_slt] = ACTIONS(837),
    [anon_sym_sgt] = ACTIONS(837),
    [anon_sym_eq] = ACTIONS(837),
    [anon_sym_iszero] = ACTIONS(837),
    [anon_sym_and] = ACTIONS(837),
    [anon_sym_or] = ACTIONS(837),
    [anon_sym_xor] = ACTIONS(837),
    [anon_sym_byte] = ACTIONS(837),
    [anon_sym_shl] = ACTIONS(837),
    [anon_sym_shr] = ACTIONS(837),
    [anon_sym_sar] = ACTIONS(837),
    [anon_sym_addmod] = ACTIONS(837),
    [anon_sym_mulmod] = ACTIONS(837),
    [anon_sym_signextend] = ACTIONS(837),
    [anon_sym_keccak256] = ACTIONS(837),
    [anon_sym_pop] = ACTIONS(837),
    [anon_sym_mload] = ACTIONS(837),
    [anon_sym_mstore] = ACTIONS(837),
    [anon_sym_mstore8] = ACTIONS(837),
    [anon_sym_sload] = ACTIONS(837),
    [anon_sym_sstore] = ACTIONS(837),
    [anon_sym_msize] = ACTIONS(837),
    [anon_sym_gas] = ACTIONS(837),
    [anon_sym_address] = ACTIONS(837),
    [anon_sym_balance] = ACTIONS(837),
    [anon_sym_selfbalance] = ACTIONS(837),
    [anon_sym_caller] = ACTIONS(837),
    [anon_sym_callvalue] = ACTIONS(837),
    [anon_sym_calldataload] = ACTIONS(837),
    [anon_sym_calldatasize] = ACTIONS(837),
    [anon_sym_calldatacopy] = ACTIONS(837),
    [anon_sym_extcodesize] = ACTIONS(837),
    [anon_sym_extcodecopy] = ACTIONS(837),
    [anon_sym_returndatasize] = ACTIONS(837),
    [anon_sym_returndatacopy] = ACTIONS(837),
    [anon_sym_extcodehash] = ACTIONS(837),
    [anon_sym_create] = ACTIONS(837),
    [anon_sym_create2] = ACTIONS(837),
    [anon_sym_call] = ACTIONS(837),
    [anon_sym_callcode] = ACTIONS(837),
    [anon_sym_delegatecall] = ACTIONS(837),
    [anon_sym_staticcall] = ACTIONS(837),
    [anon_sym_return] = ACTIONS(837),
    [anon_sym_revert] = ACTIONS(837),
    [anon_sym_selfdestruct] = ACTIONS(837),
    [anon_sym_invalid] = ACTIONS(837),
    [anon_sym_log0] = ACTIONS(837),
    [anon_sym_log1] = ACTIONS(837),
    [anon_sym_log2] = ACTIONS(837),
    [anon_sym_log3] = ACTIONS(837),
    [anon_sym_log4] = ACTIONS(837),
    [anon_sym_chainid] = ACTIONS(837),
    [anon_sym_origin] = ACTIONS(837),
    [anon_sym_gasprice] = ACTIONS(837),
    [anon_sym_blockhash] = ACTIONS(837),
    [anon_sym_coinbase] = ACTIONS(837),
    [anon_sym_timestamp] = ACTIONS(837),
    [anon_sym_number] = ACTIONS(837),
    [anon_sym_difficulty] = ACTIONS(837),
    [anon_sym_gaslimit] = ACTIONS(837),
    [sym_comment] = ACTIONS(3),
  },
  [291] = {
    [sym_yul_identifier] = STATE(750),
    [sym_yul_function_call] = STATE(262),
    [sym_yul_evm_builtin] = STATE(227),
    [sym_identifier] = ACTIONS(1075),
    [anon_sym_stop] = ACTIONS(837),
    [anon_sym_add] = ACTIONS(837),
    [anon_sym_sub] = ACTIONS(837),
    [anon_sym_mul] = ACTIONS(837),
    [anon_sym_div] = ACTIONS(837),
    [anon_sym_sdiv] = ACTIONS(837),
    [anon_sym_mod] = ACTIONS(837),
    [anon_sym_smod] = ACTIONS(837),
    [anon_sym_exp] = ACTIONS(837),
    [anon_sym_not] = ACTIONS(837),
    [anon_sym_lt] = ACTIONS(837),
    [anon_sym_gt] = ACTIONS(837),
    [anon_sym_slt] = ACTIONS(837),
    [anon_sym_sgt] = ACTIONS(837),
    [anon_sym_eq] = ACTIONS(837),
    [anon_sym_iszero] = ACTIONS(837),
    [anon_sym_and] = ACTIONS(837),
    [anon_sym_or] = ACTIONS(837),
    [anon_sym_xor] = ACTIONS(837),
    [anon_sym_byte] = ACTIONS(837),
    [anon_sym_shl] = ACTIONS(837),
    [anon_sym_shr] = ACTIONS(837),
    [anon_sym_sar] = ACTIONS(837),
    [anon_sym_addmod] = ACTIONS(837),
    [anon_sym_mulmod] = ACTIONS(837),
    [anon_sym_signextend] = ACTIONS(837),
    [anon_sym_keccak256] = ACTIONS(837),
    [anon_sym_pop] = ACTIONS(837),
    [anon_sym_mload] = ACTIONS(837),
    [anon_sym_mstore] = ACTIONS(837),
    [anon_sym_mstore8] = ACTIONS(837),
    [anon_sym_sload] = ACTIONS(837),
    [anon_sym_sstore] = ACTIONS(837),
    [anon_sym_msize] = ACTIONS(837),
    [anon_sym_gas] = ACTIONS(837),
    [anon_sym_address] = ACTIONS(837),
    [anon_sym_balance] = ACTIONS(837),
    [anon_sym_selfbalance] = ACTIONS(837),
    [anon_sym_caller] = ACTIONS(837),
    [anon_sym_callvalue] = ACTIONS(837),
    [anon_sym_calldataload] = ACTIONS(837),
    [anon_sym_calldatasize] = ACTIONS(837),
    [anon_sym_calldatacopy] = ACTIONS(837),
    [anon_sym_extcodesize] = ACTIONS(837),
    [anon_sym_extcodecopy] = ACTIONS(837),
    [anon_sym_returndatasize] = ACTIONS(837),
    [anon_sym_returndatacopy] = ACTIONS(837),
    [anon_sym_extcodehash] = ACTIONS(837),
    [anon_sym_create] = ACTIONS(837),
    [anon_sym_create2] = ACTIONS(837),
    [anon_sym_call] = ACTIONS(837),
    [anon_sym_callcode] = ACTIONS(837),
    [anon_sym_delegatecall] = ACTIONS(837),
    [anon_sym_staticcall] = ACTIONS(837),
    [anon_sym_return] = ACTIONS(837),
    [anon_sym_revert] = ACTIONS(837),
    [anon_sym_selfdestruct] = ACTIONS(837),
    [anon_sym_invalid] = ACTIONS(837),
    [anon_sym_log0] = ACTIONS(837),
    [anon_sym_log1] = ACTIONS(837),
    [anon_sym_log2] = ACTIONS(837),
    [anon_sym_log3] = ACTIONS(837),
    [anon_sym_log4] = ACTIONS(837),
    [anon_sym_chainid] = ACTIONS(837),
    [anon_sym_origin] = ACTIONS(837),
    [anon_sym_gasprice] = ACTIONS(837),
    [anon_sym_blockhash] = ACTIONS(837),
    [anon_sym_coinbase] = ACTIONS(837),
    [anon_sym_timestamp] = ACTIONS(837),
    [anon_sym_number] = ACTIONS(837),
    [anon_sym_difficulty] = ACTIONS(837),
    [anon_sym_gaslimit] = ACTIONS(837),
    [sym_comment] = ACTIONS(3),
  },
  [292] = {
    [sym_yul_identifier] = STATE(750),
    [sym_yul_function_call] = STATE(276),
    [sym_yul_evm_builtin] = STATE(227),
    [sym_identifier] = ACTIONS(1075),
    [anon_sym_stop] = ACTIONS(837),
    [anon_sym_add] = ACTIONS(837),
    [anon_sym_sub] = ACTIONS(837),
    [anon_sym_mul] = ACTIONS(837),
    [anon_sym_div] = ACTIONS(837),
    [anon_sym_sdiv] = ACTIONS(837),
    [anon_sym_mod] = ACTIONS(837),
    [anon_sym_smod] = ACTIONS(837),
    [anon_sym_exp] = ACTIONS(837),
    [anon_sym_not] = ACTIONS(837),
    [anon_sym_lt] = ACTIONS(837),
    [anon_sym_gt] = ACTIONS(837),
    [anon_sym_slt] = ACTIONS(837),
    [anon_sym_sgt] = ACTIONS(837),
    [anon_sym_eq] = ACTIONS(837),
    [anon_sym_iszero] = ACTIONS(837),
    [anon_sym_and] = ACTIONS(837),
    [anon_sym_or] = ACTIONS(837),
    [anon_sym_xor] = ACTIONS(837),
    [anon_sym_byte] = ACTIONS(837),
    [anon_sym_shl] = ACTIONS(837),
    [anon_sym_shr] = ACTIONS(837),
    [anon_sym_sar] = ACTIONS(837),
    [anon_sym_addmod] = ACTIONS(837),
    [anon_sym_mulmod] = ACTIONS(837),
    [anon_sym_signextend] = ACTIONS(837),
    [anon_sym_keccak256] = ACTIONS(837),
    [anon_sym_pop] = ACTIONS(837),
    [anon_sym_mload] = ACTIONS(837),
    [anon_sym_mstore] = ACTIONS(837),
    [anon_sym_mstore8] = ACTIONS(837),
    [anon_sym_sload] = ACTIONS(837),
    [anon_sym_sstore] = ACTIONS(837),
    [anon_sym_msize] = ACTIONS(837),
    [anon_sym_gas] = ACTIONS(837),
    [anon_sym_address] = ACTIONS(837),
    [anon_sym_balance] = ACTIONS(837),
    [anon_sym_selfbalance] = ACTIONS(837),
    [anon_sym_caller] = ACTIONS(837),
    [anon_sym_callvalue] = ACTIONS(837),
    [anon_sym_calldataload] = ACTIONS(837),
    [anon_sym_calldatasize] = ACTIONS(837),
    [anon_sym_calldatacopy] = ACTIONS(837),
    [anon_sym_extcodesize] = ACTIONS(837),
    [anon_sym_extcodecopy] = ACTIONS(837),
    [anon_sym_returndatasize] = ACTIONS(837),
    [anon_sym_returndatacopy] = ACTIONS(837),
    [anon_sym_extcodehash] = ACTIONS(837),
    [anon_sym_create] = ACTIONS(837),
    [anon_sym_create2] = ACTIONS(837),
    [anon_sym_call] = ACTIONS(837),
    [anon_sym_callcode] = ACTIONS(837),
    [anon_sym_delegatecall] = ACTIONS(837),
    [anon_sym_staticcall] = ACTIONS(837),
    [anon_sym_return] = ACTIONS(837),
    [anon_sym_revert] = ACTIONS(837),
    [anon_sym_selfdestruct] = ACTIONS(837),
    [anon_sym_invalid] = ACTIONS(837),
    [anon_sym_log0] = ACTIONS(837),
    [anon_sym_log1] = ACTIONS(837),
    [anon_sym_log2] = ACTIONS(837),
    [anon_sym_log3] = ACTIONS(837),
    [anon_sym_log4] = ACTIONS(837),
    [anon_sym_chainid] = ACTIONS(837),
    [anon_sym_origin] = ACTIONS(837),
    [anon_sym_gasprice] = ACTIONS(837),
    [anon_sym_blockhash] = ACTIONS(837),
    [anon_sym_coinbase] = ACTIONS(837),
    [anon_sym_timestamp] = ACTIONS(837),
    [anon_sym_number] = ACTIONS(837),
    [anon_sym_difficulty] = ACTIONS(837),
    [anon_sym_gaslimit] = ACTIONS(837),
    [sym_comment] = ACTIONS(3),
  },
  [293] = {
    [sym_yul_identifier] = STATE(750),
    [sym_yul_function_call] = STATE(278),
    [sym_yul_evm_builtin] = STATE(227),
    [sym_identifier] = ACTIONS(1075),
    [anon_sym_stop] = ACTIONS(837),
    [anon_sym_add] = ACTIONS(837),
    [anon_sym_sub] = ACTIONS(837),
    [anon_sym_mul] = ACTIONS(837),
    [anon_sym_div] = ACTIONS(837),
    [anon_sym_sdiv] = ACTIONS(837),
    [anon_sym_mod] = ACTIONS(837),
    [anon_sym_smod] = ACTIONS(837),
    [anon_sym_exp] = ACTIONS(837),
    [anon_sym_not] = ACTIONS(837),
    [anon_sym_lt] = ACTIONS(837),
    [anon_sym_gt] = ACTIONS(837),
    [anon_sym_slt] = ACTIONS(837),
    [anon_sym_sgt] = ACTIONS(837),
    [anon_sym_eq] = ACTIONS(837),
    [anon_sym_iszero] = ACTIONS(837),
    [anon_sym_and] = ACTIONS(837),
    [anon_sym_or] = ACTIONS(837),
    [anon_sym_xor] = ACTIONS(837),
    [anon_sym_byte] = ACTIONS(837),
    [anon_sym_shl] = ACTIONS(837),
    [anon_sym_shr] = ACTIONS(837),
    [anon_sym_sar] = ACTIONS(837),
    [anon_sym_addmod] = ACTIONS(837),
    [anon_sym_mulmod] = ACTIONS(837),
    [anon_sym_signextend] = ACTIONS(837),
    [anon_sym_keccak256] = ACTIONS(837),
    [anon_sym_pop] = ACTIONS(837),
    [anon_sym_mload] = ACTIONS(837),
    [anon_sym_mstore] = ACTIONS(837),
    [anon_sym_mstore8] = ACTIONS(837),
    [anon_sym_sload] = ACTIONS(837),
    [anon_sym_sstore] = ACTIONS(837),
    [anon_sym_msize] = ACTIONS(837),
    [anon_sym_gas] = ACTIONS(837),
    [anon_sym_address] = ACTIONS(837),
    [anon_sym_balance] = ACTIONS(837),
    [anon_sym_selfbalance] = ACTIONS(837),
    [anon_sym_caller] = ACTIONS(837),
    [anon_sym_callvalue] = ACTIONS(837),
    [anon_sym_calldataload] = ACTIONS(837),
    [anon_sym_calldatasize] = ACTIONS(837),
    [anon_sym_calldatacopy] = ACTIONS(837),
    [anon_sym_extcodesize] = ACTIONS(837),
    [anon_sym_extcodecopy] = ACTIONS(837),
    [anon_sym_returndatasize] = ACTIONS(837),
    [anon_sym_returndatacopy] = ACTIONS(837),
    [anon_sym_extcodehash] = ACTIONS(837),
    [anon_sym_create] = ACTIONS(837),
    [anon_sym_create2] = ACTIONS(837),
    [anon_sym_call] = ACTIONS(837),
    [anon_sym_callcode] = ACTIONS(837),
    [anon_sym_delegatecall] = ACTIONS(837),
    [anon_sym_staticcall] = ACTIONS(837),
    [anon_sym_return] = ACTIONS(837),
    [anon_sym_revert] = ACTIONS(837),
    [anon_sym_selfdestruct] = ACTIONS(837),
    [anon_sym_invalid] = ACTIONS(837),
    [anon_sym_log0] = ACTIONS(837),
    [anon_sym_log1] = ACTIONS(837),
    [anon_sym_log2] = ACTIONS(837),
    [anon_sym_log3] = ACTIONS(837),
    [anon_sym_log4] = ACTIONS(837),
    [anon_sym_chainid] = ACTIONS(837),
    [anon_sym_origin] = ACTIONS(837),
    [anon_sym_gasprice] = ACTIONS(837),
    [anon_sym_blockhash] = ACTIONS(837),
    [anon_sym_coinbase] = ACTIONS(837),
    [anon_sym_timestamp] = ACTIONS(837),
    [anon_sym_number] = ACTIONS(837),
    [anon_sym_difficulty] = ACTIONS(837),
    [anon_sym_gaslimit] = ACTIONS(837),
    [sym_comment] = ACTIONS(3),
  },
  [294] = {
    [sym_yul_identifier] = STATE(750),
    [sym_yul_function_call] = STATE(259),
    [sym_yul_evm_builtin] = STATE(227),
    [sym_identifier] = ACTIONS(1075),
    [anon_sym_stop] = ACTIONS(837),
    [anon_sym_add] = ACTIONS(837),
    [anon_sym_sub] = ACTIONS(837),
    [anon_sym_mul] = ACTIONS(837),
    [anon_sym_div] = ACTIONS(837),
    [anon_sym_sdiv] = ACTIONS(837),
    [anon_sym_mod] = ACTIONS(837),
    [anon_sym_smod] = ACTIONS(837),
    [anon_sym_exp] = ACTIONS(837),
    [anon_sym_not] = ACTIONS(837),
    [anon_sym_lt] = ACTIONS(837),
    [anon_sym_gt] = ACTIONS(837),
    [anon_sym_slt] = ACTIONS(837),
    [anon_sym_sgt] = ACTIONS(837),
    [anon_sym_eq] = ACTIONS(837),
    [anon_sym_iszero] = ACTIONS(837),
    [anon_sym_and] = ACTIONS(837),
    [anon_sym_or] = ACTIONS(837),
    [anon_sym_xor] = ACTIONS(837),
    [anon_sym_byte] = ACTIONS(837),
    [anon_sym_shl] = ACTIONS(837),
    [anon_sym_shr] = ACTIONS(837),
    [anon_sym_sar] = ACTIONS(837),
    [anon_sym_addmod] = ACTIONS(837),
    [anon_sym_mulmod] = ACTIONS(837),
    [anon_sym_signextend] = ACTIONS(837),
    [anon_sym_keccak256] = ACTIONS(837),
    [anon_sym_pop] = ACTIONS(837),
    [anon_sym_mload] = ACTIONS(837),
    [anon_sym_mstore] = ACTIONS(837),
    [anon_sym_mstore8] = ACTIONS(837),
    [anon_sym_sload] = ACTIONS(837),
    [anon_sym_sstore] = ACTIONS(837),
    [anon_sym_msize] = ACTIONS(837),
    [anon_sym_gas] = ACTIONS(837),
    [anon_sym_address] = ACTIONS(837),
    [anon_sym_balance] = ACTIONS(837),
    [anon_sym_selfbalance] = ACTIONS(837),
    [anon_sym_caller] = ACTIONS(837),
    [anon_sym_callvalue] = ACTIONS(837),
    [anon_sym_calldataload] = ACTIONS(837),
    [anon_sym_calldatasize] = ACTIONS(837),
    [anon_sym_calldatacopy] = ACTIONS(837),
    [anon_sym_extcodesize] = ACTIONS(837),
    [anon_sym_extcodecopy] = ACTIONS(837),
    [anon_sym_returndatasize] = ACTIONS(837),
    [anon_sym_returndatacopy] = ACTIONS(837),
    [anon_sym_extcodehash] = ACTIONS(837),
    [anon_sym_create] = ACTIONS(837),
    [anon_sym_create2] = ACTIONS(837),
    [anon_sym_call] = ACTIONS(837),
    [anon_sym_callcode] = ACTIONS(837),
    [anon_sym_delegatecall] = ACTIONS(837),
    [anon_sym_staticcall] = ACTIONS(837),
    [anon_sym_return] = ACTIONS(837),
    [anon_sym_revert] = ACTIONS(837),
    [anon_sym_selfdestruct] = ACTIONS(837),
    [anon_sym_invalid] = ACTIONS(837),
    [anon_sym_log0] = ACTIONS(837),
    [anon_sym_log1] = ACTIONS(837),
    [anon_sym_log2] = ACTIONS(837),
    [anon_sym_log3] = ACTIONS(837),
    [anon_sym_log4] = ACTIONS(837),
    [anon_sym_chainid] = ACTIONS(837),
    [anon_sym_origin] = ACTIONS(837),
    [anon_sym_gasprice] = ACTIONS(837),
    [anon_sym_blockhash] = ACTIONS(837),
    [anon_sym_coinbase] = ACTIONS(837),
    [anon_sym_timestamp] = ACTIONS(837),
    [anon_sym_number] = ACTIONS(837),
    [anon_sym_difficulty] = ACTIONS(837),
    [anon_sym_gaslimit] = ACTIONS(837),
    [sym_comment] = ACTIONS(3),
  },
  [295] = {
    [sym_yul_identifier] = STATE(750),
    [sym_yul_function_call] = STATE(280),
    [sym_yul_evm_builtin] = STATE(227),
    [sym_identifier] = ACTIONS(1075),
    [anon_sym_stop] = ACTIONS(837),
    [anon_sym_add] = ACTIONS(837),
    [anon_sym_sub] = ACTIONS(837),
    [anon_sym_mul] = ACTIONS(837),
    [anon_sym_div] = ACTIONS(837),
    [anon_sym_sdiv] = ACTIONS(837),
    [anon_sym_mod] = ACTIONS(837),
    [anon_sym_smod] = ACTIONS(837),
    [anon_sym_exp] = ACTIONS(837),
    [anon_sym_not] = ACTIONS(837),
    [anon_sym_lt] = ACTIONS(837),
    [anon_sym_gt] = ACTIONS(837),
    [anon_sym_slt] = ACTIONS(837),
    [anon_sym_sgt] = ACTIONS(837),
    [anon_sym_eq] = ACTIONS(837),
    [anon_sym_iszero] = ACTIONS(837),
    [anon_sym_and] = ACTIONS(837),
    [anon_sym_or] = ACTIONS(837),
    [anon_sym_xor] = ACTIONS(837),
    [anon_sym_byte] = ACTIONS(837),
    [anon_sym_shl] = ACTIONS(837),
    [anon_sym_shr] = ACTIONS(837),
    [anon_sym_sar] = ACTIONS(837),
    [anon_sym_addmod] = ACTIONS(837),
    [anon_sym_mulmod] = ACTIONS(837),
    [anon_sym_signextend] = ACTIONS(837),
    [anon_sym_keccak256] = ACTIONS(837),
    [anon_sym_pop] = ACTIONS(837),
    [anon_sym_mload] = ACTIONS(837),
    [anon_sym_mstore] = ACTIONS(837),
    [anon_sym_mstore8] = ACTIONS(837),
    [anon_sym_sload] = ACTIONS(837),
    [anon_sym_sstore] = ACTIONS(837),
    [anon_sym_msize] = ACTIONS(837),
    [anon_sym_gas] = ACTIONS(837),
    [anon_sym_address] = ACTIONS(837),
    [anon_sym_balance] = ACTIONS(837),
    [anon_sym_selfbalance] = ACTIONS(837),
    [anon_sym_caller] = ACTIONS(837),
    [anon_sym_callvalue] = ACTIONS(837),
    [anon_sym_calldataload] = ACTIONS(837),
    [anon_sym_calldatasize] = ACTIONS(837),
    [anon_sym_calldatacopy] = ACTIONS(837),
    [anon_sym_extcodesize] = ACTIONS(837),
    [anon_sym_extcodecopy] = ACTIONS(837),
    [anon_sym_returndatasize] = ACTIONS(837),
    [anon_sym_returndatacopy] = ACTIONS(837),
    [anon_sym_extcodehash] = ACTIONS(837),
    [anon_sym_create] = ACTIONS(837),
    [anon_sym_create2] = ACTIONS(837),
    [anon_sym_call] = ACTIONS(837),
    [anon_sym_callcode] = ACTIONS(837),
    [anon_sym_delegatecall] = ACTIONS(837),
    [anon_sym_staticcall] = ACTIONS(837),
    [anon_sym_return] = ACTIONS(837),
    [anon_sym_revert] = ACTIONS(837),
    [anon_sym_selfdestruct] = ACTIONS(837),
    [anon_sym_invalid] = ACTIONS(837),
    [anon_sym_log0] = ACTIONS(837),
    [anon_sym_log1] = ACTIONS(837),
    [anon_sym_log2] = ACTIONS(837),
    [anon_sym_log3] = ACTIONS(837),
    [anon_sym_log4] = ACTIONS(837),
    [anon_sym_chainid] = ACTIONS(837),
    [anon_sym_origin] = ACTIONS(837),
    [anon_sym_gasprice] = ACTIONS(837),
    [anon_sym_blockhash] = ACTIONS(837),
    [anon_sym_coinbase] = ACTIONS(837),
    [anon_sym_timestamp] = ACTIONS(837),
    [anon_sym_number] = ACTIONS(837),
    [anon_sym_difficulty] = ACTIONS(837),
    [anon_sym_gaslimit] = ACTIONS(837),
    [sym_comment] = ACTIONS(3),
  },
  [296] = {
    [aux_sym__identifier_path_repeat1] = STATE(296),
    [sym_identifier] = ACTIONS(1209),
    [anon_sym_PIPE_PIPE] = ACTIONS(1211),
    [anon_sym_DASH] = ACTIONS(1209),
    [anon_sym_LT_EQ] = ACTIONS(1211),
    [anon_sym_LT] = ACTIONS(1209),
    [anon_sym_CARET] = ACTIONS(1209),
    [anon_sym_GT] = ACTIONS(1209),
    [anon_sym_GT_EQ] = ACTIONS(1211),
    [anon_sym_EQ] = ACTIONS(1209),
    [anon_sym_STAR] = ACTIONS(1209),
    [anon_sym_LBRACE] = ACTIONS(1211),
    [anon_sym_COMMA] = ACTIONS(1211),
    [anon_sym_RBRACE] = ACTIONS(1211),
    [anon_sym_constant] = ACTIONS(1209),
    [anon_sym_LPAREN] = ACTIONS(1211),
    [anon_sym_RPAREN] = ACTIONS(1211),
    [anon_sym_indexed] = ACTIONS(1209),
    [anon_sym_for] = ACTIONS(1209),
    [anon_sym_COLON] = ACTIONS(1211),
    [anon_sym_DOT] = ACTIONS(1213),
    [sym__unchecked] = ACTIONS(1209),
    [anon_sym_memory] = ACTIONS(1209),
    [anon_sym_storage] = ACTIONS(1209),
    [anon_sym_calldata] = ACTIONS(1209),
    [anon_sym_returns] = ACTIONS(1209),
    [anon_sym_public] = ACTIONS(1209),
    [anon_sym_internal] = ACTIONS(1209),
    [anon_sym_private] = ACTIONS(1209),
    [anon_sym_external] = ACTIONS(1209),
    [anon_sym_pure] = ACTIONS(1209),
    [anon_sym_view] = ACTIONS(1209),
    [anon_sym_payable] = ACTIONS(1209),
    [sym_immutable] = ACTIONS(1209),
    [anon_sym_override] = ACTIONS(1209),
    [sym_virtual] = ACTIONS(1209),
    [anon_sym_QMARK] = ACTIONS(1211),
    [anon_sym_LBRACK] = ACTIONS(1211),
    [anon_sym_RBRACK] = ACTIONS(1211),
    [anon_sym_AMP_AMP] = ACTIONS(1211),
    [anon_sym_GT_GT] = ACTIONS(1209),
    [anon_sym_GT_GT_GT] = ACTIONS(1209),
    [anon_sym_LT_LT] = ACTIONS(1209),
    [anon_sym_AMP] = ACTIONS(1209),
    [anon_sym_PIPE] = ACTIONS(1209),
    [anon_sym_PLUS] = ACTIONS(1209),
    [anon_sym_SLASH] = ACTIONS(1209),
    [anon_sym_PERCENT] = ACTIONS(1209),
    [anon_sym_STAR_STAR] = ACTIONS(1211),
    [anon_sym_EQ_EQ] = ACTIONS(1211),
    [anon_sym_BANG_EQ] = ACTIONS(1209),
    [anon_sym_BANG_EQ_EQ] = ACTIONS(1211),
    [anon_sym_PLUS_PLUS] = ACTIONS(1211),
    [anon_sym_DASH_DASH] = ACTIONS(1211),
    [anon_sym_PLUS_EQ] = ACTIONS(1211),
    [anon_sym_DASH_EQ] = ACTIONS(1211),
    [anon_sym_STAR_EQ] = ACTIONS(1211),
    [anon_sym_SLASH_EQ] = ACTIONS(1211),
    [anon_sym_PERCENT_EQ] = ACTIONS(1211),
    [anon_sym_CARET_EQ] = ACTIONS(1211),
    [anon_sym_AMP_EQ] = ACTIONS(1211),
    [anon_sym_PIPE_EQ] = ACTIONS(1211),
    [anon_sym_GT_GT_EQ] = ACTIONS(1211),
    [anon_sym_GT_GT_GT_EQ] = ACTIONS(1211),
    [anon_sym_LT_LT_EQ] = ACTIONS(1211),
    [anon_sym_EQ_GT] = ACTIONS(1211),
    [sym__semicolon] = ACTIONS(1211),
    [sym_comment] = ACTIONS(3),
  },
  [297] = {
    [sym_visibility] = STATE(298),
    [sym_state_mutability] = STATE(298),
    [sym__return_parameters] = STATE(322),
    [aux_sym__function_type_repeat1] = STATE(298),
    [sym_identifier] = ACTIONS(1216),
    [anon_sym_PIPE_PIPE] = ACTIONS(1218),
    [anon_sym_DASH] = ACTIONS(1216),
    [anon_sym_LT_EQ] = ACTIONS(1218),
    [anon_sym_LT] = ACTIONS(1216),
    [anon_sym_CARET] = ACTIONS(1216),
    [anon_sym_GT] = ACTIONS(1216),
    [anon_sym_GT_EQ] = ACTIONS(1218),
    [anon_sym_EQ] = ACTIONS(1216),
    [anon_sym_STAR] = ACTIONS(1216),
    [anon_sym_LBRACE] = ACTIONS(1218),
    [anon_sym_COMMA] = ACTIONS(1218),
    [anon_sym_RBRACE] = ACTIONS(1218),
    [anon_sym_constant] = ACTIONS(1216),
    [anon_sym_LPAREN] = ACTIONS(1218),
    [anon_sym_RPAREN] = ACTIONS(1218),
    [anon_sym_indexed] = ACTIONS(1216),
    [anon_sym_COLON] = ACTIONS(1218),
    [anon_sym_DOT] = ACTIONS(1218),
    [sym__unchecked] = ACTIONS(1216),
    [anon_sym_memory] = ACTIONS(1216),
    [anon_sym_storage] = ACTIONS(1216),
    [anon_sym_calldata] = ACTIONS(1216),
    [anon_sym_returns] = ACTIONS(1220),
    [anon_sym_public] = ACTIONS(1222),
    [anon_sym_internal] = ACTIONS(1222),
    [anon_sym_private] = ACTIONS(1222),
    [anon_sym_external] = ACTIONS(1222),
    [anon_sym_pure] = ACTIONS(1224),
    [anon_sym_view] = ACTIONS(1224),
    [anon_sym_payable] = ACTIONS(1224),
    [sym_immutable] = ACTIONS(1216),
    [anon_sym_override] = ACTIONS(1216),
    [anon_sym_QMARK] = ACTIONS(1218),
    [anon_sym_LBRACK] = ACTIONS(1218),
    [anon_sym_RBRACK] = ACTIONS(1218),
    [anon_sym_AMP_AMP] = ACTIONS(1218),
    [anon_sym_GT_GT] = ACTIONS(1216),
    [anon_sym_GT_GT_GT] = ACTIONS(1216),
    [anon_sym_LT_LT] = ACTIONS(1216),
    [anon_sym_AMP] = ACTIONS(1216),
    [anon_sym_PIPE] = ACTIONS(1216),
    [anon_sym_PLUS] = ACTIONS(1216),
    [anon_sym_SLASH] = ACTIONS(1216),
    [anon_sym_PERCENT] = ACTIONS(1216),
    [anon_sym_STAR_STAR] = ACTIONS(1218),
    [anon_sym_EQ_EQ] = ACTIONS(1218),
    [anon_sym_BANG_EQ] = ACTIONS(1216),
    [anon_sym_BANG_EQ_EQ] = ACTIONS(1218),
    [anon_sym_PLUS_PLUS] = ACTIONS(1218),
    [anon_sym_DASH_DASH] = ACTIONS(1218),
    [anon_sym_PLUS_EQ] = ACTIONS(1218),
    [anon_sym_DASH_EQ] = ACTIONS(1218),
    [anon_sym_STAR_EQ] = ACTIONS(1218),
    [anon_sym_SLASH_EQ] = ACTIONS(1218),
    [anon_sym_PERCENT_EQ] = ACTIONS(1218),
    [anon_sym_CARET_EQ] = ACTIONS(1218),
    [anon_sym_AMP_EQ] = ACTIONS(1218),
    [anon_sym_PIPE_EQ] = ACTIONS(1218),
    [anon_sym_GT_GT_EQ] = ACTIONS(1218),
    [anon_sym_GT_GT_GT_EQ] = ACTIONS(1218),
    [anon_sym_LT_LT_EQ] = ACTIONS(1218),
    [sym__semicolon] = ACTIONS(1218),
    [sym_comment] = ACTIONS(3),
  },
  [298] = {
    [sym_visibility] = STATE(298),
    [sym_state_mutability] = STATE(298),
    [aux_sym__function_type_repeat1] = STATE(298),
    [sym_identifier] = ACTIONS(1226),
    [anon_sym_PIPE_PIPE] = ACTIONS(1228),
    [anon_sym_DASH] = ACTIONS(1226),
    [anon_sym_LT_EQ] = ACTIONS(1228),
    [anon_sym_LT] = ACTIONS(1226),
    [anon_sym_CARET] = ACTIONS(1226),
    [anon_sym_GT] = ACTIONS(1226),
    [anon_sym_GT_EQ] = ACTIONS(1228),
    [anon_sym_EQ] = ACTIONS(1226),
    [anon_sym_STAR] = ACTIONS(1226),
    [anon_sym_LBRACE] = ACTIONS(1228),
    [anon_sym_COMMA] = ACTIONS(1228),
    [anon_sym_RBRACE] = ACTIONS(1228),
    [anon_sym_constant] = ACTIONS(1226),
    [anon_sym_LPAREN] = ACTIONS(1228),
    [anon_sym_RPAREN] = ACTIONS(1228),
    [anon_sym_indexed] = ACTIONS(1226),
    [anon_sym_COLON] = ACTIONS(1228),
    [anon_sym_DOT] = ACTIONS(1228),
    [sym__unchecked] = ACTIONS(1226),
    [anon_sym_memory] = ACTIONS(1226),
    [anon_sym_storage] = ACTIONS(1226),
    [anon_sym_calldata] = ACTIONS(1226),
    [anon_sym_returns] = ACTIONS(1226),
    [anon_sym_public] = ACTIONS(1230),
    [anon_sym_internal] = ACTIONS(1230),
    [anon_sym_private] = ACTIONS(1230),
    [anon_sym_external] = ACTIONS(1230),
    [anon_sym_pure] = ACTIONS(1233),
    [anon_sym_view] = ACTIONS(1233),
    [anon_sym_payable] = ACTIONS(1233),
    [sym_immutable] = ACTIONS(1226),
    [anon_sym_override] = ACTIONS(1226),
    [anon_sym_QMARK] = ACTIONS(1228),
    [anon_sym_LBRACK] = ACTIONS(1228),
    [anon_sym_RBRACK] = ACTIONS(1228),
    [anon_sym_AMP_AMP] = ACTIONS(1228),
    [anon_sym_GT_GT] = ACTIONS(1226),
    [anon_sym_GT_GT_GT] = ACTIONS(1226),
    [anon_sym_LT_LT] = ACTIONS(1226),
    [anon_sym_AMP] = ACTIONS(1226),
    [anon_sym_PIPE] = ACTIONS(1226),
    [anon_sym_PLUS] = ACTIONS(1226),
    [anon_sym_SLASH] = ACTIONS(1226),
    [anon_sym_PERCENT] = ACTIONS(1226),
    [anon_sym_STAR_STAR] = ACTIONS(1228),
    [anon_sym_EQ_EQ] = ACTIONS(1228),
    [anon_sym_BANG_EQ] = ACTIONS(1226),
    [anon_sym_BANG_EQ_EQ] = ACTIONS(1228),
    [anon_sym_PLUS_PLUS] = ACTIONS(1228),
    [anon_sym_DASH_DASH] = ACTIONS(1228),
    [anon_sym_PLUS_EQ] = ACTIONS(1228),
    [anon_sym_DASH_EQ] = ACTIONS(1228),
    [anon_sym_STAR_EQ] = ACTIONS(1228),
    [anon_sym_SLASH_EQ] = ACTIONS(1228),
    [anon_sym_PERCENT_EQ] = ACTIONS(1228),
    [anon_sym_CARET_EQ] = ACTIONS(1228),
    [anon_sym_AMP_EQ] = ACTIONS(1228),
    [anon_sym_PIPE_EQ] = ACTIONS(1228),
    [anon_sym_GT_GT_EQ] = ACTIONS(1228),
    [anon_sym_GT_GT_GT_EQ] = ACTIONS(1228),
    [anon_sym_LT_LT_EQ] = ACTIONS(1228),
    [sym__semicolon] = ACTIONS(1228),
    [sym_comment] = ACTIONS(3),
  },
  [299] = {
    [sym_identifier] = ACTIONS(1209),
    [anon_sym_PIPE_PIPE] = ACTIONS(1211),
    [anon_sym_DASH] = ACTIONS(1209),
    [anon_sym_LT_EQ] = ACTIONS(1211),
    [anon_sym_LT] = ACTIONS(1209),
    [anon_sym_CARET] = ACTIONS(1209),
    [anon_sym_GT] = ACTIONS(1209),
    [anon_sym_GT_EQ] = ACTIONS(1211),
    [anon_sym_EQ] = ACTIONS(1209),
    [anon_sym_STAR] = ACTIONS(1209),
    [anon_sym_LBRACE] = ACTIONS(1211),
    [anon_sym_COMMA] = ACTIONS(1211),
    [anon_sym_RBRACE] = ACTIONS(1211),
    [anon_sym_constant] = ACTIONS(1209),
    [anon_sym_LPAREN] = ACTIONS(1211),
    [anon_sym_RPAREN] = ACTIONS(1211),
    [anon_sym_indexed] = ACTIONS(1209),
    [anon_sym_for] = ACTIONS(1209),
    [anon_sym_COLON] = ACTIONS(1211),
    [anon_sym_DOT] = ACTIONS(1211),
    [sym__unchecked] = ACTIONS(1209),
    [anon_sym_memory] = ACTIONS(1209),
    [anon_sym_storage] = ACTIONS(1209),
    [anon_sym_calldata] = ACTIONS(1209),
    [anon_sym_returns] = ACTIONS(1209),
    [anon_sym_public] = ACTIONS(1209),
    [anon_sym_internal] = ACTIONS(1209),
    [anon_sym_private] = ACTIONS(1209),
    [anon_sym_external] = ACTIONS(1209),
    [anon_sym_pure] = ACTIONS(1209),
    [anon_sym_view] = ACTIONS(1209),
    [anon_sym_payable] = ACTIONS(1209),
    [sym_immutable] = ACTIONS(1209),
    [anon_sym_override] = ACTIONS(1209),
    [sym_virtual] = ACTIONS(1209),
    [anon_sym_QMARK] = ACTIONS(1211),
    [anon_sym_LBRACK] = ACTIONS(1211),
    [anon_sym_RBRACK] = ACTIONS(1211),
    [anon_sym_AMP_AMP] = ACTIONS(1211),
    [anon_sym_GT_GT] = ACTIONS(1209),
    [anon_sym_GT_GT_GT] = ACTIONS(1209),
    [anon_sym_LT_LT] = ACTIONS(1209),
    [anon_sym_AMP] = ACTIONS(1209),
    [anon_sym_PIPE] = ACTIONS(1209),
    [anon_sym_PLUS] = ACTIONS(1209),
    [anon_sym_SLASH] = ACTIONS(1209),
    [anon_sym_PERCENT] = ACTIONS(1209),
    [anon_sym_STAR_STAR] = ACTIONS(1211),
    [anon_sym_EQ_EQ] = ACTIONS(1211),
    [anon_sym_BANG_EQ] = ACTIONS(1209),
    [anon_sym_BANG_EQ_EQ] = ACTIONS(1211),
    [anon_sym_PLUS_PLUS] = ACTIONS(1211),
    [anon_sym_DASH_DASH] = ACTIONS(1211),
    [anon_sym_PLUS_EQ] = ACTIONS(1211),
    [anon_sym_DASH_EQ] = ACTIONS(1211),
    [anon_sym_STAR_EQ] = ACTIONS(1211),
    [anon_sym_SLASH_EQ] = ACTIONS(1211),
    [anon_sym_PERCENT_EQ] = ACTIONS(1211),
    [anon_sym_CARET_EQ] = ACTIONS(1211),
    [anon_sym_AMP_EQ] = ACTIONS(1211),
    [anon_sym_PIPE_EQ] = ACTIONS(1211),
    [anon_sym_GT_GT_EQ] = ACTIONS(1211),
    [anon_sym_GT_GT_GT_EQ] = ACTIONS(1211),
    [anon_sym_LT_LT_EQ] = ACTIONS(1211),
    [anon_sym_EQ_GT] = ACTIONS(1211),
    [sym__semicolon] = ACTIONS(1211),
    [sym_comment] = ACTIONS(3),
  },
  [300] = {
    [sym_visibility] = STATE(297),
    [sym_state_mutability] = STATE(297),
    [sym__return_parameters] = STATE(320),
    [aux_sym__function_type_repeat1] = STATE(297),
    [sym_identifier] = ACTIONS(1236),
    [anon_sym_PIPE_PIPE] = ACTIONS(1238),
    [anon_sym_DASH] = ACTIONS(1236),
    [anon_sym_LT_EQ] = ACTIONS(1238),
    [anon_sym_LT] = ACTIONS(1236),
    [anon_sym_CARET] = ACTIONS(1236),
    [anon_sym_GT] = ACTIONS(1236),
    [anon_sym_GT_EQ] = ACTIONS(1238),
    [anon_sym_EQ] = ACTIONS(1236),
    [anon_sym_STAR] = ACTIONS(1236),
    [anon_sym_LBRACE] = ACTIONS(1238),
    [anon_sym_COMMA] = ACTIONS(1238),
    [anon_sym_RBRACE] = ACTIONS(1238),
    [anon_sym_constant] = ACTIONS(1236),
    [anon_sym_LPAREN] = ACTIONS(1238),
    [anon_sym_RPAREN] = ACTIONS(1238),
    [anon_sym_indexed] = ACTIONS(1236),
    [anon_sym_COLON] = ACTIONS(1238),
    [anon_sym_DOT] = ACTIONS(1238),
    [sym__unchecked] = ACTIONS(1236),
    [anon_sym_memory] = ACTIONS(1236),
    [anon_sym_storage] = ACTIONS(1236),
    [anon_sym_calldata] = ACTIONS(1236),
    [anon_sym_returns] = ACTIONS(1220),
    [anon_sym_public] = ACTIONS(1222),
    [anon_sym_internal] = ACTIONS(1222),
    [anon_sym_private] = ACTIONS(1222),
    [anon_sym_external] = ACTIONS(1222),
    [anon_sym_pure] = ACTIONS(1224),
    [anon_sym_view] = ACTIONS(1224),
    [anon_sym_payable] = ACTIONS(1224),
    [anon_sym_QMARK] = ACTIONS(1238),
    [anon_sym_LBRACK] = ACTIONS(1238),
    [anon_sym_RBRACK] = ACTIONS(1238),
    [anon_sym_AMP_AMP] = ACTIONS(1238),
    [anon_sym_GT_GT] = ACTIONS(1236),
    [anon_sym_GT_GT_GT] = ACTIONS(1236),
    [anon_sym_LT_LT] = ACTIONS(1236),
    [anon_sym_AMP] = ACTIONS(1236),
    [anon_sym_PIPE] = ACTIONS(1236),
    [anon_sym_PLUS] = ACTIONS(1236),
    [anon_sym_SLASH] = ACTIONS(1236),
    [anon_sym_PERCENT] = ACTIONS(1236),
    [anon_sym_STAR_STAR] = ACTIONS(1238),
    [anon_sym_EQ_EQ] = ACTIONS(1238),
    [anon_sym_BANG_EQ] = ACTIONS(1236),
    [anon_sym_BANG_EQ_EQ] = ACTIONS(1238),
    [anon_sym_PLUS_PLUS] = ACTIONS(1238),
    [anon_sym_DASH_DASH] = ACTIONS(1238),
    [anon_sym_PLUS_EQ] = ACTIONS(1238),
    [anon_sym_DASH_EQ] = ACTIONS(1238),
    [anon_sym_STAR_EQ] = ACTIONS(1238),
    [anon_sym_SLASH_EQ] = ACTIONS(1238),
    [anon_sym_PERCENT_EQ] = ACTIONS(1238),
    [anon_sym_CARET_EQ] = ACTIONS(1238),
    [anon_sym_AMP_EQ] = ACTIONS(1238),
    [anon_sym_PIPE_EQ] = ACTIONS(1238),
    [anon_sym_GT_GT_EQ] = ACTIONS(1238),
    [anon_sym_GT_GT_GT_EQ] = ACTIONS(1238),
    [anon_sym_LT_LT_EQ] = ACTIONS(1238),
    [sym__semicolon] = ACTIONS(1238),
    [sym_comment] = ACTIONS(3),
  },
  [301] = {
    [sym_identifier] = ACTIONS(1240),
    [anon_sym_PIPE_PIPE] = ACTIONS(1242),
    [anon_sym_DASH] = ACTIONS(1240),
    [anon_sym_LT_EQ] = ACTIONS(1242),
    [anon_sym_LT] = ACTIONS(1240),
    [anon_sym_CARET] = ACTIONS(1240),
    [anon_sym_GT] = ACTIONS(1240),
    [anon_sym_GT_EQ] = ACTIONS(1242),
    [anon_sym_EQ] = ACTIONS(1240),
    [anon_sym_STAR] = ACTIONS(1240),
    [anon_sym_LBRACE] = ACTIONS(1242),
    [anon_sym_COMMA] = ACTIONS(1242),
    [anon_sym_RBRACE] = ACTIONS(1242),
    [anon_sym_constant] = ACTIONS(1240),
    [anon_sym_LPAREN] = ACTIONS(1242),
    [anon_sym_RPAREN] = ACTIONS(1242),
    [anon_sym_indexed] = ACTIONS(1240),
    [anon_sym_COLON] = ACTIONS(1242),
    [anon_sym_DOT] = ACTIONS(1242),
    [sym__unchecked] = ACTIONS(1240),
    [anon_sym_memory] = ACTIONS(1240),
    [anon_sym_storage] = ACTIONS(1240),
    [anon_sym_calldata] = ACTIONS(1240),
    [anon_sym_returns] = ACTIONS(1240),
    [anon_sym_public] = ACTIONS(1240),
    [anon_sym_internal] = ACTIONS(1240),
    [anon_sym_private] = ACTIONS(1240),
    [anon_sym_external] = ACTIONS(1240),
    [anon_sym_pure] = ACTIONS(1240),
    [anon_sym_view] = ACTIONS(1240),
    [anon_sym_payable] = ACTIONS(1240),
    [sym_immutable] = ACTIONS(1240),
    [anon_sym_override] = ACTIONS(1240),
    [sym_virtual] = ACTIONS(1240),
    [anon_sym_QMARK] = ACTIONS(1242),
    [anon_sym_LBRACK] = ACTIONS(1242),
    [anon_sym_RBRACK] = ACTIONS(1242),
    [anon_sym_AMP_AMP] = ACTIONS(1242),
    [anon_sym_GT_GT] = ACTIONS(1240),
    [anon_sym_GT_GT_GT] = ACTIONS(1240),
    [anon_sym_LT_LT] = ACTIONS(1240),
    [anon_sym_AMP] = ACTIONS(1240),
    [anon_sym_PIPE] = ACTIONS(1240),
    [anon_sym_PLUS] = ACTIONS(1240),
    [anon_sym_SLASH] = ACTIONS(1240),
    [anon_sym_PERCENT] = ACTIONS(1240),
    [anon_sym_STAR_STAR] = ACTIONS(1242),
    [anon_sym_EQ_EQ] = ACTIONS(1242),
    [anon_sym_BANG_EQ] = ACTIONS(1240),
    [anon_sym_BANG_EQ_EQ] = ACTIONS(1242),
    [anon_sym_PLUS_PLUS] = ACTIONS(1242),
    [anon_sym_DASH_DASH] = ACTIONS(1242),
    [anon_sym_PLUS_EQ] = ACTIONS(1242),
    [anon_sym_DASH_EQ] = ACTIONS(1242),
    [anon_sym_STAR_EQ] = ACTIONS(1242),
    [anon_sym_SLASH_EQ] = ACTIONS(1242),
    [anon_sym_PERCENT_EQ] = ACTIONS(1242),
    [anon_sym_CARET_EQ] = ACTIONS(1242),
    [anon_sym_AMP_EQ] = ACTIONS(1242),
    [anon_sym_PIPE_EQ] = ACTIONS(1242),
    [anon_sym_GT_GT_EQ] = ACTIONS(1242),
    [anon_sym_GT_GT_GT_EQ] = ACTIONS(1242),
    [anon_sym_LT_LT_EQ] = ACTIONS(1242),
    [sym__semicolon] = ACTIONS(1242),
    [sym_comment] = ACTIONS(3),
  },
  [302] = {
    [sym_identifier] = ACTIONS(1244),
    [anon_sym_PIPE_PIPE] = ACTIONS(1246),
    [anon_sym_DASH] = ACTIONS(1244),
    [anon_sym_LT_EQ] = ACTIONS(1246),
    [anon_sym_LT] = ACTIONS(1244),
    [anon_sym_CARET] = ACTIONS(1244),
    [anon_sym_GT] = ACTIONS(1244),
    [anon_sym_GT_EQ] = ACTIONS(1246),
    [anon_sym_EQ] = ACTIONS(1244),
    [anon_sym_STAR] = ACTIONS(1244),
    [anon_sym_LBRACE] = ACTIONS(1246),
    [anon_sym_COMMA] = ACTIONS(1246),
    [anon_sym_RBRACE] = ACTIONS(1246),
    [anon_sym_constant] = ACTIONS(1244),
    [anon_sym_LPAREN] = ACTIONS(1246),
    [anon_sym_RPAREN] = ACTIONS(1246),
    [anon_sym_indexed] = ACTIONS(1244),
    [anon_sym_COLON] = ACTIONS(1246),
    [anon_sym_DOT] = ACTIONS(1246),
    [sym__unchecked] = ACTIONS(1244),
    [anon_sym_memory] = ACTIONS(1244),
    [anon_sym_storage] = ACTIONS(1244),
    [anon_sym_calldata] = ACTIONS(1244),
    [anon_sym_returns] = ACTIONS(1244),
    [anon_sym_public] = ACTIONS(1244),
    [anon_sym_internal] = ACTIONS(1244),
    [anon_sym_private] = ACTIONS(1244),
    [anon_sym_external] = ACTIONS(1244),
    [anon_sym_pure] = ACTIONS(1244),
    [anon_sym_view] = ACTIONS(1244),
    [anon_sym_payable] = ACTIONS(1244),
    [sym_immutable] = ACTIONS(1244),
    [anon_sym_override] = ACTIONS(1244),
    [sym_virtual] = ACTIONS(1244),
    [anon_sym_QMARK] = ACTIONS(1246),
    [anon_sym_LBRACK] = ACTIONS(1246),
    [anon_sym_RBRACK] = ACTIONS(1246),
    [anon_sym_AMP_AMP] = ACTIONS(1246),
    [anon_sym_GT_GT] = ACTIONS(1244),
    [anon_sym_GT_GT_GT] = ACTIONS(1244),
    [anon_sym_LT_LT] = ACTIONS(1244),
    [anon_sym_AMP] = ACTIONS(1244),
    [anon_sym_PIPE] = ACTIONS(1244),
    [anon_sym_PLUS] = ACTIONS(1244),
    [anon_sym_SLASH] = ACTIONS(1244),
    [anon_sym_PERCENT] = ACTIONS(1244),
    [anon_sym_STAR_STAR] = ACTIONS(1246),
    [anon_sym_EQ_EQ] = ACTIONS(1246),
    [anon_sym_BANG_EQ] = ACTIONS(1244),
    [anon_sym_BANG_EQ_EQ] = ACTIONS(1246),
    [anon_sym_PLUS_PLUS] = ACTIONS(1246),
    [anon_sym_DASH_DASH] = ACTIONS(1246),
    [anon_sym_PLUS_EQ] = ACTIONS(1246),
    [anon_sym_DASH_EQ] = ACTIONS(1246),
    [anon_sym_STAR_EQ] = ACTIONS(1246),
    [anon_sym_SLASH_EQ] = ACTIONS(1246),
    [anon_sym_PERCENT_EQ] = ACTIONS(1246),
    [anon_sym_CARET_EQ] = ACTIONS(1246),
    [anon_sym_AMP_EQ] = ACTIONS(1246),
    [anon_sym_PIPE_EQ] = ACTIONS(1246),
    [anon_sym_GT_GT_EQ] = ACTIONS(1246),
    [anon_sym_GT_GT_GT_EQ] = ACTIONS(1246),
    [anon_sym_LT_LT_EQ] = ACTIONS(1246),
    [sym__semicolon] = ACTIONS(1246),
    [sym_comment] = ACTIONS(3),
  },
  [303] = {
    [sym_identifier] = ACTIONS(1248),
    [anon_sym_PIPE_PIPE] = ACTIONS(1250),
    [anon_sym_DASH] = ACTIONS(1248),
    [anon_sym_LT_EQ] = ACTIONS(1250),
    [anon_sym_LT] = ACTIONS(1248),
    [anon_sym_CARET] = ACTIONS(1248),
    [anon_sym_GT] = ACTIONS(1248),
    [anon_sym_GT_EQ] = ACTIONS(1250),
    [anon_sym_EQ] = ACTIONS(1248),
    [anon_sym_STAR] = ACTIONS(1248),
    [anon_sym_LBRACE] = ACTIONS(1250),
    [anon_sym_COMMA] = ACTIONS(1250),
    [anon_sym_RBRACE] = ACTIONS(1250),
    [anon_sym_constant] = ACTIONS(1248),
    [anon_sym_LPAREN] = ACTIONS(1250),
    [anon_sym_RPAREN] = ACTIONS(1250),
    [anon_sym_indexed] = ACTIONS(1248),
    [anon_sym_COLON] = ACTIONS(1250),
    [anon_sym_DOT] = ACTIONS(1250),
    [sym__unchecked] = ACTIONS(1248),
    [anon_sym_memory] = ACTIONS(1248),
    [anon_sym_storage] = ACTIONS(1248),
    [anon_sym_calldata] = ACTIONS(1248),
    [anon_sym_returns] = ACTIONS(1248),
    [anon_sym_public] = ACTIONS(1248),
    [anon_sym_internal] = ACTIONS(1248),
    [anon_sym_private] = ACTIONS(1248),
    [anon_sym_external] = ACTIONS(1248),
    [anon_sym_pure] = ACTIONS(1248),
    [anon_sym_view] = ACTIONS(1248),
    [anon_sym_payable] = ACTIONS(1248),
    [sym_immutable] = ACTIONS(1248),
    [anon_sym_override] = ACTIONS(1248),
    [sym_virtual] = ACTIONS(1248),
    [anon_sym_QMARK] = ACTIONS(1250),
    [anon_sym_LBRACK] = ACTIONS(1250),
    [anon_sym_RBRACK] = ACTIONS(1250),
    [anon_sym_AMP_AMP] = ACTIONS(1250),
    [anon_sym_GT_GT] = ACTIONS(1248),
    [anon_sym_GT_GT_GT] = ACTIONS(1248),
    [anon_sym_LT_LT] = ACTIONS(1248),
    [anon_sym_AMP] = ACTIONS(1248),
    [anon_sym_PIPE] = ACTIONS(1248),
    [anon_sym_PLUS] = ACTIONS(1248),
    [anon_sym_SLASH] = ACTIONS(1248),
    [anon_sym_PERCENT] = ACTIONS(1248),
    [anon_sym_STAR_STAR] = ACTIONS(1250),
    [anon_sym_EQ_EQ] = ACTIONS(1250),
    [anon_sym_BANG_EQ] = ACTIONS(1248),
    [anon_sym_BANG_EQ_EQ] = ACTIONS(1250),
    [anon_sym_PLUS_PLUS] = ACTIONS(1250),
    [anon_sym_DASH_DASH] = ACTIONS(1250),
    [anon_sym_PLUS_EQ] = ACTIONS(1250),
    [anon_sym_DASH_EQ] = ACTIONS(1250),
    [anon_sym_STAR_EQ] = ACTIONS(1250),
    [anon_sym_SLASH_EQ] = ACTIONS(1250),
    [anon_sym_PERCENT_EQ] = ACTIONS(1250),
    [anon_sym_CARET_EQ] = ACTIONS(1250),
    [anon_sym_AMP_EQ] = ACTIONS(1250),
    [anon_sym_PIPE_EQ] = ACTIONS(1250),
    [anon_sym_GT_GT_EQ] = ACTIONS(1250),
    [anon_sym_GT_GT_GT_EQ] = ACTIONS(1250),
    [anon_sym_LT_LT_EQ] = ACTIONS(1250),
    [sym__semicolon] = ACTIONS(1250),
    [sym_comment] = ACTIONS(3),
  },
  [304] = {
    [sym_identifier] = ACTIONS(1252),
    [anon_sym_PIPE_PIPE] = ACTIONS(1254),
    [anon_sym_DASH] = ACTIONS(1252),
    [anon_sym_LT_EQ] = ACTIONS(1254),
    [anon_sym_LT] = ACTIONS(1252),
    [anon_sym_CARET] = ACTIONS(1252),
    [anon_sym_GT] = ACTIONS(1252),
    [anon_sym_GT_EQ] = ACTIONS(1254),
    [anon_sym_EQ] = ACTIONS(1252),
    [anon_sym_STAR] = ACTIONS(1252),
    [anon_sym_LBRACE] = ACTIONS(1254),
    [anon_sym_COMMA] = ACTIONS(1254),
    [anon_sym_RBRACE] = ACTIONS(1254),
    [anon_sym_constant] = ACTIONS(1252),
    [anon_sym_LPAREN] = ACTIONS(1254),
    [anon_sym_RPAREN] = ACTIONS(1254),
    [anon_sym_indexed] = ACTIONS(1252),
    [anon_sym_COLON] = ACTIONS(1254),
    [anon_sym_DOT] = ACTIONS(1254),
    [sym__unchecked] = ACTIONS(1252),
    [anon_sym_memory] = ACTIONS(1252),
    [anon_sym_storage] = ACTIONS(1252),
    [anon_sym_calldata] = ACTIONS(1252),
    [anon_sym_returns] = ACTIONS(1252),
    [anon_sym_public] = ACTIONS(1252),
    [anon_sym_internal] = ACTIONS(1252),
    [anon_sym_private] = ACTIONS(1252),
    [anon_sym_external] = ACTIONS(1252),
    [anon_sym_pure] = ACTIONS(1252),
    [anon_sym_view] = ACTIONS(1252),
    [anon_sym_payable] = ACTIONS(1252),
    [sym_immutable] = ACTIONS(1252),
    [anon_sym_override] = ACTIONS(1252),
    [sym_virtual] = ACTIONS(1252),
    [anon_sym_QMARK] = ACTIONS(1254),
    [anon_sym_LBRACK] = ACTIONS(1254),
    [anon_sym_RBRACK] = ACTIONS(1254),
    [anon_sym_AMP_AMP] = ACTIONS(1254),
    [anon_sym_GT_GT] = ACTIONS(1252),
    [anon_sym_GT_GT_GT] = ACTIONS(1252),
    [anon_sym_LT_LT] = ACTIONS(1252),
    [anon_sym_AMP] = ACTIONS(1252),
    [anon_sym_PIPE] = ACTIONS(1252),
    [anon_sym_PLUS] = ACTIONS(1252),
    [anon_sym_SLASH] = ACTIONS(1252),
    [anon_sym_PERCENT] = ACTIONS(1252),
    [anon_sym_STAR_STAR] = ACTIONS(1254),
    [anon_sym_EQ_EQ] = ACTIONS(1254),
    [anon_sym_BANG_EQ] = ACTIONS(1252),
    [anon_sym_BANG_EQ_EQ] = ACTIONS(1254),
    [anon_sym_PLUS_PLUS] = ACTIONS(1254),
    [anon_sym_DASH_DASH] = ACTIONS(1254),
    [anon_sym_PLUS_EQ] = ACTIONS(1254),
    [anon_sym_DASH_EQ] = ACTIONS(1254),
    [anon_sym_STAR_EQ] = ACTIONS(1254),
    [anon_sym_SLASH_EQ] = ACTIONS(1254),
    [anon_sym_PERCENT_EQ] = ACTIONS(1254),
    [anon_sym_CARET_EQ] = ACTIONS(1254),
    [anon_sym_AMP_EQ] = ACTIONS(1254),
    [anon_sym_PIPE_EQ] = ACTIONS(1254),
    [anon_sym_GT_GT_EQ] = ACTIONS(1254),
    [anon_sym_GT_GT_GT_EQ] = ACTIONS(1254),
    [anon_sym_LT_LT_EQ] = ACTIONS(1254),
    [sym__semicolon] = ACTIONS(1254),
    [sym_comment] = ACTIONS(3),
  },
  [305] = {
    [sym_identifier] = ACTIONS(1256),
    [anon_sym_PIPE_PIPE] = ACTIONS(1258),
    [anon_sym_DASH] = ACTIONS(1256),
    [anon_sym_LT_EQ] = ACTIONS(1258),
    [anon_sym_LT] = ACTIONS(1256),
    [anon_sym_CARET] = ACTIONS(1256),
    [anon_sym_GT] = ACTIONS(1256),
    [anon_sym_GT_EQ] = ACTIONS(1258),
    [anon_sym_EQ] = ACTIONS(1256),
    [anon_sym_STAR] = ACTIONS(1256),
    [anon_sym_LBRACE] = ACTIONS(1258),
    [anon_sym_COMMA] = ACTIONS(1258),
    [anon_sym_RBRACE] = ACTIONS(1258),
    [anon_sym_constant] = ACTIONS(1256),
    [anon_sym_LPAREN] = ACTIONS(1258),
    [anon_sym_RPAREN] = ACTIONS(1258),
    [anon_sym_indexed] = ACTIONS(1256),
    [anon_sym_COLON] = ACTIONS(1258),
    [anon_sym_DOT] = ACTIONS(1258),
    [sym__unchecked] = ACTIONS(1256),
    [anon_sym_memory] = ACTIONS(1256),
    [anon_sym_storage] = ACTIONS(1256),
    [anon_sym_calldata] = ACTIONS(1256),
    [anon_sym_returns] = ACTIONS(1256),
    [anon_sym_public] = ACTIONS(1256),
    [anon_sym_internal] = ACTIONS(1256),
    [anon_sym_private] = ACTIONS(1256),
    [anon_sym_external] = ACTIONS(1256),
    [anon_sym_pure] = ACTIONS(1256),
    [anon_sym_view] = ACTIONS(1256),
    [anon_sym_payable] = ACTIONS(1256),
    [sym_immutable] = ACTIONS(1256),
    [anon_sym_override] = ACTIONS(1256),
    [sym_virtual] = ACTIONS(1256),
    [anon_sym_QMARK] = ACTIONS(1258),
    [anon_sym_LBRACK] = ACTIONS(1258),
    [anon_sym_RBRACK] = ACTIONS(1258),
    [anon_sym_AMP_AMP] = ACTIONS(1258),
    [anon_sym_GT_GT] = ACTIONS(1256),
    [anon_sym_GT_GT_GT] = ACTIONS(1256),
    [anon_sym_LT_LT] = ACTIONS(1256),
    [anon_sym_AMP] = ACTIONS(1256),
    [anon_sym_PIPE] = ACTIONS(1256),
    [anon_sym_PLUS] = ACTIONS(1256),
    [anon_sym_SLASH] = ACTIONS(1256),
    [anon_sym_PERCENT] = ACTIONS(1256),
    [anon_sym_STAR_STAR] = ACTIONS(1258),
    [anon_sym_EQ_EQ] = ACTIONS(1258),
    [anon_sym_BANG_EQ] = ACTIONS(1256),
    [anon_sym_BANG_EQ_EQ] = ACTIONS(1258),
    [anon_sym_PLUS_PLUS] = ACTIONS(1258),
    [anon_sym_DASH_DASH] = ACTIONS(1258),
    [anon_sym_PLUS_EQ] = ACTIONS(1258),
    [anon_sym_DASH_EQ] = ACTIONS(1258),
    [anon_sym_STAR_EQ] = ACTIONS(1258),
    [anon_sym_SLASH_EQ] = ACTIONS(1258),
    [anon_sym_PERCENT_EQ] = ACTIONS(1258),
    [anon_sym_CARET_EQ] = ACTIONS(1258),
    [anon_sym_AMP_EQ] = ACTIONS(1258),
    [anon_sym_PIPE_EQ] = ACTIONS(1258),
    [anon_sym_GT_GT_EQ] = ACTIONS(1258),
    [anon_sym_GT_GT_GT_EQ] = ACTIONS(1258),
    [anon_sym_LT_LT_EQ] = ACTIONS(1258),
    [sym__semicolon] = ACTIONS(1258),
    [sym_comment] = ACTIONS(3),
  },
  [306] = {
    [sym_identifier] = ACTIONS(1260),
    [anon_sym_PIPE_PIPE] = ACTIONS(1262),
    [anon_sym_DASH] = ACTIONS(1260),
    [anon_sym_LT_EQ] = ACTIONS(1262),
    [anon_sym_LT] = ACTIONS(1260),
    [anon_sym_CARET] = ACTIONS(1260),
    [anon_sym_GT] = ACTIONS(1260),
    [anon_sym_GT_EQ] = ACTIONS(1262),
    [anon_sym_EQ] = ACTIONS(1260),
    [anon_sym_STAR] = ACTIONS(1260),
    [anon_sym_LBRACE] = ACTIONS(1262),
    [anon_sym_COMMA] = ACTIONS(1262),
    [anon_sym_RBRACE] = ACTIONS(1262),
    [anon_sym_constant] = ACTIONS(1260),
    [anon_sym_LPAREN] = ACTIONS(1262),
    [anon_sym_RPAREN] = ACTIONS(1262),
    [anon_sym_indexed] = ACTIONS(1260),
    [anon_sym_COLON] = ACTIONS(1262),
    [anon_sym_DOT] = ACTIONS(1262),
    [sym__unchecked] = ACTIONS(1260),
    [anon_sym_memory] = ACTIONS(1260),
    [anon_sym_storage] = ACTIONS(1260),
    [anon_sym_calldata] = ACTIONS(1260),
    [anon_sym_returns] = ACTIONS(1260),
    [anon_sym_public] = ACTIONS(1260),
    [anon_sym_internal] = ACTIONS(1260),
    [anon_sym_private] = ACTIONS(1260),
    [anon_sym_external] = ACTIONS(1260),
    [anon_sym_pure] = ACTIONS(1260),
    [anon_sym_view] = ACTIONS(1260),
    [anon_sym_payable] = ACTIONS(1260),
    [sym_immutable] = ACTIONS(1260),
    [anon_sym_override] = ACTIONS(1260),
    [sym_virtual] = ACTIONS(1260),
    [anon_sym_QMARK] = ACTIONS(1262),
    [anon_sym_LBRACK] = ACTIONS(1262),
    [anon_sym_RBRACK] = ACTIONS(1262),
    [anon_sym_AMP_AMP] = ACTIONS(1262),
    [anon_sym_GT_GT] = ACTIONS(1260),
    [anon_sym_GT_GT_GT] = ACTIONS(1260),
    [anon_sym_LT_LT] = ACTIONS(1260),
    [anon_sym_AMP] = ACTIONS(1260),
    [anon_sym_PIPE] = ACTIONS(1260),
    [anon_sym_PLUS] = ACTIONS(1260),
    [anon_sym_SLASH] = ACTIONS(1260),
    [anon_sym_PERCENT] = ACTIONS(1260),
    [anon_sym_STAR_STAR] = ACTIONS(1262),
    [anon_sym_EQ_EQ] = ACTIONS(1262),
    [anon_sym_BANG_EQ] = ACTIONS(1260),
    [anon_sym_BANG_EQ_EQ] = ACTIONS(1262),
    [anon_sym_PLUS_PLUS] = ACTIONS(1262),
    [anon_sym_DASH_DASH] = ACTIONS(1262),
    [anon_sym_PLUS_EQ] = ACTIONS(1262),
    [anon_sym_DASH_EQ] = ACTIONS(1262),
    [anon_sym_STAR_EQ] = ACTIONS(1262),
    [anon_sym_SLASH_EQ] = ACTIONS(1262),
    [anon_sym_PERCENT_EQ] = ACTIONS(1262),
    [anon_sym_CARET_EQ] = ACTIONS(1262),
    [anon_sym_AMP_EQ] = ACTIONS(1262),
    [anon_sym_PIPE_EQ] = ACTIONS(1262),
    [anon_sym_GT_GT_EQ] = ACTIONS(1262),
    [anon_sym_GT_GT_GT_EQ] = ACTIONS(1262),
    [anon_sym_LT_LT_EQ] = ACTIONS(1262),
    [sym__semicolon] = ACTIONS(1262),
    [sym_comment] = ACTIONS(3),
  },
};

static const uint16_t ts_small_parse_table[] = {
  [0] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1268), 1,
      anon_sym_payable,
    ACTIONS(1264), 29,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_constant,
      anon_sym_indexed,
      sym__unchecked,
      anon_sym_memory,
      anon_sym_storage,
      anon_sym_calldata,
      anon_sym_returns,
      anon_sym_public,
      anon_sym_internal,
      anon_sym_private,
      anon_sym_external,
      sym_immutable,
      anon_sym_override,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
      sym_identifier,
    ACTIONS(1266), 32,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      anon_sym_EQ_GT,
      sym__semicolon,
  [72] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1270), 30,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_constant,
      anon_sym_indexed,
      anon_sym_for,
      sym__unchecked,
      anon_sym_memory,
      anon_sym_storage,
      anon_sym_calldata,
      anon_sym_returns,
      anon_sym_public,
      anon_sym_internal,
      anon_sym_private,
      anon_sym_external,
      sym_immutable,
      anon_sym_override,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
      sym_identifier,
    ACTIONS(1272), 32,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      anon_sym_EQ_GT,
      sym__semicolon,
  [142] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1264), 29,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_constant,
      anon_sym_indexed,
      sym__unchecked,
      anon_sym_memory,
      anon_sym_storage,
      anon_sym_calldata,
      anon_sym_returns,
      anon_sym_public,
      anon_sym_internal,
      anon_sym_private,
      anon_sym_external,
      sym_immutable,
      anon_sym_override,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
      sym_identifier,
    ACTIONS(1266), 32,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      anon_sym_EQ_GT,
      sym__semicolon,
  [211] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1274), 29,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_constant,
      anon_sym_indexed,
      sym__unchecked,
      anon_sym_memory,
      anon_sym_storage,
      anon_sym_calldata,
      anon_sym_returns,
      anon_sym_public,
      anon_sym_internal,
      anon_sym_private,
      anon_sym_external,
      sym_immutable,
      anon_sym_override,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
      sym_identifier,
    ACTIONS(1276), 32,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      anon_sym_EQ_GT,
      sym__semicolon,
  [280] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1278), 29,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_constant,
      anon_sym_indexed,
      sym__unchecked,
      anon_sym_memory,
      anon_sym_storage,
      anon_sym_calldata,
      anon_sym_returns,
      anon_sym_public,
      anon_sym_internal,
      anon_sym_private,
      anon_sym_external,
      sym_immutable,
      anon_sym_override,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
      sym_identifier,
    ACTIONS(1280), 31,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [348] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1282), 29,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_constant,
      anon_sym_indexed,
      sym__unchecked,
      anon_sym_memory,
      anon_sym_storage,
      anon_sym_calldata,
      anon_sym_returns,
      anon_sym_public,
      anon_sym_internal,
      anon_sym_private,
      anon_sym_external,
      sym_immutable,
      anon_sym_override,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
      sym_identifier,
    ACTIONS(1284), 31,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [416] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1286), 29,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_constant,
      anon_sym_indexed,
      sym__unchecked,
      anon_sym_memory,
      anon_sym_storage,
      anon_sym_calldata,
      anon_sym_returns,
      anon_sym_public,
      anon_sym_internal,
      anon_sym_private,
      anon_sym_external,
      sym_immutable,
      anon_sym_override,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
      sym_identifier,
    ACTIONS(1288), 31,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [484] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1290), 29,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_constant,
      anon_sym_indexed,
      sym__unchecked,
      anon_sym_memory,
      anon_sym_storage,
      anon_sym_calldata,
      anon_sym_returns,
      anon_sym_public,
      anon_sym_internal,
      anon_sym_private,
      anon_sym_external,
      sym_immutable,
      anon_sym_override,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
      sym_identifier,
    ACTIONS(1292), 31,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [552] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1294), 29,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_constant,
      anon_sym_indexed,
      sym__unchecked,
      anon_sym_memory,
      anon_sym_storage,
      anon_sym_calldata,
      anon_sym_returns,
      anon_sym_public,
      anon_sym_internal,
      anon_sym_private,
      anon_sym_external,
      sym_immutable,
      anon_sym_override,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
      sym_identifier,
    ACTIONS(1296), 31,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [620] = 5,
    ACTIONS(3), 1,
      sym_comment,
    STATE(388), 1,
      sym_number_unit,
    ACTIONS(1302), 11,
      anon_sym_wei,
      anon_sym_szabo,
      anon_sym_finney,
      anon_sym_gwei,
      anon_sym_ether,
      anon_sym_seconds,
      anon_sym_minutes,
      anon_sym_hours,
      anon_sym_days,
      anon_sym_weeks,
      anon_sym_years,
    ACTIONS(1300), 15,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
    ACTIONS(1298), 33,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      sym__unchecked,
      anon_sym_returns,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [692] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1304), 29,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_constant,
      anon_sym_indexed,
      sym__unchecked,
      anon_sym_memory,
      anon_sym_storage,
      anon_sym_calldata,
      anon_sym_returns,
      anon_sym_public,
      anon_sym_internal,
      anon_sym_private,
      anon_sym_external,
      sym_immutable,
      anon_sym_override,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
      sym_identifier,
    ACTIONS(1306), 31,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [760] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1308), 29,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_constant,
      anon_sym_indexed,
      sym__unchecked,
      anon_sym_memory,
      anon_sym_storage,
      anon_sym_calldata,
      anon_sym_returns,
      anon_sym_public,
      anon_sym_internal,
      anon_sym_private,
      anon_sym_external,
      sym_immutable,
      anon_sym_override,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
      sym_identifier,
    ACTIONS(1310), 31,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [828] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1290), 29,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_constant,
      anon_sym_indexed,
      sym__unchecked,
      anon_sym_memory,
      anon_sym_storage,
      anon_sym_calldata,
      anon_sym_returns,
      anon_sym_public,
      anon_sym_internal,
      anon_sym_private,
      anon_sym_external,
      sym_immutable,
      anon_sym_override,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
      sym_identifier,
    ACTIONS(1292), 31,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [896] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1216), 29,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_constant,
      anon_sym_indexed,
      sym__unchecked,
      anon_sym_memory,
      anon_sym_storage,
      anon_sym_calldata,
      anon_sym_returns,
      anon_sym_public,
      anon_sym_internal,
      anon_sym_private,
      anon_sym_external,
      sym_immutable,
      anon_sym_override,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
      sym_identifier,
    ACTIONS(1218), 31,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [964] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1312), 29,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_constant,
      anon_sym_indexed,
      sym__unchecked,
      anon_sym_memory,
      anon_sym_storage,
      anon_sym_calldata,
      anon_sym_returns,
      anon_sym_public,
      anon_sym_internal,
      anon_sym_private,
      anon_sym_external,
      sym_immutable,
      anon_sym_override,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
      sym_identifier,
    ACTIONS(1314), 31,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [1032] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1316), 29,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_constant,
      anon_sym_indexed,
      sym__unchecked,
      anon_sym_memory,
      anon_sym_storage,
      anon_sym_calldata,
      anon_sym_returns,
      anon_sym_public,
      anon_sym_internal,
      anon_sym_private,
      anon_sym_external,
      sym_immutable,
      anon_sym_override,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
      sym_identifier,
    ACTIONS(1318), 31,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [1100] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1320), 29,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_constant,
      anon_sym_indexed,
      sym__unchecked,
      anon_sym_memory,
      anon_sym_storage,
      anon_sym_calldata,
      anon_sym_returns,
      anon_sym_public,
      anon_sym_internal,
      anon_sym_private,
      anon_sym_external,
      sym_immutable,
      anon_sym_override,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
      sym_identifier,
    ACTIONS(1322), 31,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [1168] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1324), 27,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      sym__unchecked,
      anon_sym_returns,
      anon_sym_public,
      anon_sym_internal,
      anon_sym_private,
      anon_sym_external,
      anon_sym_pure,
      anon_sym_view,
      anon_sym_payable,
      anon_sym_override,
      sym_virtual,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
      sym_identifier,
    ACTIONS(1326), 31,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [1234] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1328), 27,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      sym__unchecked,
      anon_sym_returns,
      anon_sym_public,
      anon_sym_internal,
      anon_sym_private,
      anon_sym_external,
      anon_sym_pure,
      anon_sym_view,
      anon_sym_payable,
      anon_sym_override,
      sym_virtual,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
      sym_identifier,
    ACTIONS(1330), 31,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [1300] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1332), 27,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      sym__unchecked,
      anon_sym_returns,
      anon_sym_public,
      anon_sym_internal,
      anon_sym_private,
      anon_sym_external,
      anon_sym_pure,
      anon_sym_view,
      anon_sym_payable,
      anon_sym_override,
      sym_virtual,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
      sym_identifier,
    ACTIONS(1334), 31,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [1366] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1336), 27,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      sym__unchecked,
      anon_sym_returns,
      anon_sym_public,
      anon_sym_internal,
      anon_sym_private,
      anon_sym_external,
      anon_sym_pure,
      anon_sym_view,
      anon_sym_payable,
      anon_sym_override,
      sym_virtual,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
      sym_identifier,
    ACTIONS(1338), 31,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [1432] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1137), 15,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
    ACTIONS(1139), 38,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_as,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      anon_sym_default,
      anon_sym_case,
      sym__unchecked,
      anon_sym_returns,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
      anon_sym_DQUOTE,
      anon_sym_SQUOTE,
  [1493] = 4,
    ACTIONS(3), 1,
      sym_comment,
    STATE(296), 1,
      aux_sym__identifier_path_repeat1,
    ACTIONS(1340), 21,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      sym__unchecked,
      anon_sym_memory,
      anon_sym_storage,
      anon_sym_calldata,
      anon_sym_returns,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
      sym_identifier,
    ACTIONS(1342), 31,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [1556] = 6,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1352), 1,
      anon_sym_DOT,
    STATE(329), 1,
      aux_sym__identifier_path_repeat1,
    ACTIONS(1344), 4,
      anon_sym_memory,
      anon_sym_storage,
      anon_sym_calldata,
      sym_identifier,
    ACTIONS(1349), 17,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      sym__unchecked,
      anon_sym_returns,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
    ACTIONS(1346), 30,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [1623] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1129), 15,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
    ACTIONS(1131), 38,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_as,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      anon_sym_default,
      anon_sym_case,
      sym__unchecked,
      anon_sym_returns,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
      anon_sym_DQUOTE,
      anon_sym_SQUOTE,
  [1684] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1209), 4,
      anon_sym_memory,
      anon_sym_storage,
      anon_sym_calldata,
      sym_identifier,
    ACTIONS(1359), 17,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      sym__unchecked,
      anon_sym_returns,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
    ACTIONS(1356), 31,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [1746] = 6,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(99), 1,
      anon_sym_DQUOTE,
    ACTIONS(101), 1,
      anon_sym_SQUOTE,
    STATE(334), 2,
      sym_string,
      aux_sym_string_literal_repeat1,
    ACTIONS(1364), 15,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
    ACTIONS(1362), 33,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      sym__unchecked,
      anon_sym_returns,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [1812] = 6,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1370), 1,
      anon_sym_DQUOTE,
    ACTIONS(1373), 1,
      anon_sym_SQUOTE,
    STATE(334), 2,
      sym_string,
      aux_sym_string_literal_repeat1,
    ACTIONS(1368), 15,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
    ACTIONS(1366), 33,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      sym__unchecked,
      anon_sym_returns,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [1878] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1380), 1,
      anon_sym_unicode,
    STATE(337), 1,
      aux_sym_unicode_string_literal_repeat3,
    ACTIONS(1378), 15,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
    ACTIONS(1376), 33,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      sym__unchecked,
      anon_sym_returns,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [1940] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1386), 1,
      anon_sym_hex,
    STATE(338), 1,
      aux_sym_hex_string_literal_repeat2,
    ACTIONS(1384), 15,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
    ACTIONS(1382), 33,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      sym__unchecked,
      anon_sym_returns,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [2002] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1392), 1,
      anon_sym_unicode,
    STATE(337), 1,
      aux_sym_unicode_string_literal_repeat3,
    ACTIONS(1390), 15,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
    ACTIONS(1388), 33,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      sym__unchecked,
      anon_sym_returns,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [2064] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1399), 1,
      anon_sym_hex,
    STATE(338), 1,
      aux_sym_hex_string_literal_repeat2,
    ACTIONS(1397), 15,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
    ACTIONS(1395), 33,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      sym__unchecked,
      anon_sym_returns,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [2126] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1404), 15,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
    ACTIONS(1402), 34,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      sym__unchecked,
      anon_sym_returns,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
      anon_sym_hex,
  [2183] = 5,
    ACTIONS(3), 1,
      sym_comment,
    STATE(383), 1,
      sym__call_arguments,
    ACTIONS(1410), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1408), 15,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
    ACTIONS(1406), 31,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      sym__unchecked,
      anon_sym_returns,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [2244] = 12,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1424), 1,
      anon_sym_AMP_AMP,
    ACTIONS(1426), 1,
      anon_sym_AMP,
    ACTIONS(1428), 1,
      anon_sym_STAR_STAR,
    STATE(383), 1,
      sym__call_arguments,
    ACTIONS(1410), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1414), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1418), 3,
      anon_sym_LT,
      anon_sym_GT,
      anon_sym_BANG_EQ,
    ACTIONS(1420), 3,
      anon_sym_CARET,
      anon_sym_EQ,
      anon_sym_PIPE,
    ACTIONS(1416), 4,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
    ACTIONS(1422), 6,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1412), 25,
      anon_sym_PIPE_PIPE,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      sym__unchecked,
      anon_sym_returns,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [2319] = 7,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1428), 1,
      anon_sym_STAR_STAR,
    STATE(383), 1,
      sym__call_arguments,
    ACTIONS(1410), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1422), 6,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1420), 9,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_BANG_EQ,
    ACTIONS(1412), 30,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      sym__unchecked,
      anon_sym_returns,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [2384] = 8,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1428), 1,
      anon_sym_STAR_STAR,
    STATE(383), 1,
      sym__call_arguments,
    ACTIONS(1410), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1414), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1422), 6,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1420), 7,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_BANG_EQ,
    ACTIONS(1412), 30,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      sym__unchecked,
      anon_sym_returns,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [2451] = 20,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1424), 1,
      anon_sym_AMP_AMP,
    ACTIONS(1426), 1,
      anon_sym_AMP,
    ACTIONS(1428), 1,
      anon_sym_STAR_STAR,
    ACTIONS(1430), 1,
      anon_sym_PIPE_PIPE,
    ACTIONS(1434), 1,
      anon_sym_EQ,
    ACTIONS(1436), 1,
      anon_sym_LBRACE,
    ACTIONS(1440), 1,
      anon_sym_LPAREN,
    ACTIONS(1442), 1,
      anon_sym_DOT,
    ACTIONS(1444), 1,
      anon_sym_QMARK,
    ACTIONS(1446), 1,
      anon_sym_LBRACK,
    STATE(383), 1,
      sym__call_arguments,
    ACTIONS(1410), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1414), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1432), 2,
      anon_sym_CARET,
      anon_sym_PIPE,
    ACTIONS(1418), 3,
      anon_sym_LT,
      anon_sym_GT,
      anon_sym_BANG_EQ,
    ACTIONS(1416), 4,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
    ACTIONS(1422), 6,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1438), 8,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_RPAREN,
      anon_sym_COLON,
      sym__unchecked,
      anon_sym_returns,
      anon_sym_RBRACK,
      sym__semicolon,
    ACTIONS(1448), 11,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
  [2542] = 6,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1428), 1,
      anon_sym_STAR_STAR,
    STATE(383), 1,
      sym__call_arguments,
    ACTIONS(1410), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1420), 15,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
    ACTIONS(1412), 30,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      sym__unchecked,
      anon_sym_returns,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [2605] = 4,
    ACTIONS(3), 1,
      sym_comment,
    STATE(383), 1,
      sym__call_arguments,
    ACTIONS(1452), 15,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
    ACTIONS(1450), 33,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      sym__unchecked,
      anon_sym_returns,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [2664] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1456), 15,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
    ACTIONS(1454), 34,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      sym__unchecked,
      anon_sym_returns,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
      anon_sym_hex,
  [2721] = 5,
    ACTIONS(3), 1,
      sym_comment,
    STATE(383), 1,
      sym__call_arguments,
    ACTIONS(1410), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1408), 15,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
    ACTIONS(1406), 31,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      sym__unchecked,
      anon_sym_returns,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [2782] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1460), 15,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
    ACTIONS(1458), 34,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      sym__unchecked,
      anon_sym_returns,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
      anon_sym_unicode,
  [2839] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1464), 15,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
    ACTIONS(1462), 34,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      sym__unchecked,
      anon_sym_returns,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
      anon_sym_unicode,
  [2896] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1468), 15,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
    ACTIONS(1466), 34,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      sym__unchecked,
      anon_sym_returns,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
      anon_sym_hex,
  [2953] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1474), 1,
      anon_sym_LBRACK,
    STATE(381), 1,
      sym__call_arguments,
    ACTIONS(1472), 15,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
    ACTIONS(1470), 32,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      sym__unchecked,
      anon_sym_returns,
      anon_sym_QMARK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [3014] = 10,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1428), 1,
      anon_sym_STAR_STAR,
    STATE(383), 1,
      sym__call_arguments,
    ACTIONS(1410), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1414), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1418), 3,
      anon_sym_LT,
      anon_sym_GT,
      anon_sym_BANG_EQ,
    ACTIONS(1416), 4,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
    ACTIONS(1420), 4,
      anon_sym_CARET,
      anon_sym_EQ,
      anon_sym_AMP,
      anon_sym_PIPE,
    ACTIONS(1422), 6,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1412), 26,
      anon_sym_PIPE_PIPE,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      sym__unchecked,
      anon_sym_returns,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [3085] = 5,
    ACTIONS(3), 1,
      sym_comment,
    STATE(383), 1,
      sym__call_arguments,
    ACTIONS(1410), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1420), 15,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
    ACTIONS(1412), 31,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      sym__unchecked,
      anon_sym_returns,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [3146] = 20,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1424), 1,
      anon_sym_AMP_AMP,
    ACTIONS(1426), 1,
      anon_sym_AMP,
    ACTIONS(1428), 1,
      anon_sym_STAR_STAR,
    ACTIONS(1430), 1,
      anon_sym_PIPE_PIPE,
    ACTIONS(1434), 1,
      anon_sym_EQ,
    ACTIONS(1436), 1,
      anon_sym_LBRACE,
    ACTIONS(1440), 1,
      anon_sym_LPAREN,
    ACTIONS(1442), 1,
      anon_sym_DOT,
    ACTIONS(1444), 1,
      anon_sym_QMARK,
    ACTIONS(1446), 1,
      anon_sym_LBRACK,
    STATE(383), 1,
      sym__call_arguments,
    ACTIONS(1410), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1414), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1432), 2,
      anon_sym_CARET,
      anon_sym_PIPE,
    ACTIONS(1418), 3,
      anon_sym_LT,
      anon_sym_GT,
      anon_sym_BANG_EQ,
    ACTIONS(1416), 4,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
    ACTIONS(1422), 6,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1476), 8,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_RPAREN,
      anon_sym_COLON,
      sym__unchecked,
      anon_sym_returns,
      anon_sym_RBRACK,
      sym__semicolon,
    ACTIONS(1448), 11,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
  [3237] = 5,
    ACTIONS(3), 1,
      sym_comment,
    STATE(383), 1,
      sym__call_arguments,
    ACTIONS(1410), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1408), 15,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
    ACTIONS(1406), 31,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      sym__unchecked,
      anon_sym_returns,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [3298] = 14,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1424), 1,
      anon_sym_AMP_AMP,
    ACTIONS(1426), 1,
      anon_sym_AMP,
    ACTIONS(1428), 1,
      anon_sym_STAR_STAR,
    ACTIONS(1430), 1,
      anon_sym_PIPE_PIPE,
    ACTIONS(1478), 1,
      anon_sym_EQ,
    STATE(383), 1,
      sym__call_arguments,
    ACTIONS(1410), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1414), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1432), 2,
      anon_sym_CARET,
      anon_sym_PIPE,
    ACTIONS(1418), 3,
      anon_sym_LT,
      anon_sym_GT,
      anon_sym_BANG_EQ,
    ACTIONS(1416), 4,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
    ACTIONS(1422), 6,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1480), 24,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      sym__unchecked,
      anon_sym_returns,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [3377] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1484), 15,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
    ACTIONS(1482), 33,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      sym__unchecked,
      anon_sym_returns,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [3433] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1488), 15,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
    ACTIONS(1486), 33,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      sym__unchecked,
      anon_sym_returns,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [3489] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1492), 15,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
    ACTIONS(1490), 33,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      sym__unchecked,
      anon_sym_returns,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [3545] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1496), 15,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
    ACTIONS(1494), 33,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      sym__unchecked,
      anon_sym_returns,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [3601] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1500), 15,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
    ACTIONS(1498), 33,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      sym__unchecked,
      anon_sym_returns,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [3657] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1504), 15,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
    ACTIONS(1502), 33,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      sym__unchecked,
      anon_sym_returns,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [3713] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1508), 15,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
    ACTIONS(1506), 33,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      sym__unchecked,
      anon_sym_returns,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [3769] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1512), 15,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
    ACTIONS(1510), 33,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      sym__unchecked,
      anon_sym_returns,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [3825] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1516), 15,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
    ACTIONS(1514), 33,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      sym__unchecked,
      anon_sym_returns,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [3881] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1520), 15,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
    ACTIONS(1518), 33,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      sym__unchecked,
      anon_sym_returns,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [3937] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1524), 15,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
    ACTIONS(1522), 33,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      sym__unchecked,
      anon_sym_returns,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [3993] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1528), 15,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
    ACTIONS(1526), 33,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      sym__unchecked,
      anon_sym_returns,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [4049] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1532), 15,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
    ACTIONS(1530), 33,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      sym__unchecked,
      anon_sym_returns,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [4105] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1536), 15,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
    ACTIONS(1534), 33,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      sym__unchecked,
      anon_sym_returns,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [4161] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1540), 15,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
    ACTIONS(1538), 33,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      sym__unchecked,
      anon_sym_returns,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [4217] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1544), 15,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
    ACTIONS(1542), 33,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      sym__unchecked,
      anon_sym_returns,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [4273] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1548), 15,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
    ACTIONS(1546), 33,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      sym__unchecked,
      anon_sym_returns,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [4329] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1552), 15,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
    ACTIONS(1550), 33,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      sym__unchecked,
      anon_sym_returns,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [4385] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1556), 15,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
    ACTIONS(1554), 33,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      sym__unchecked,
      anon_sym_returns,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [4441] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1560), 15,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
    ACTIONS(1558), 33,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      sym__unchecked,
      anon_sym_returns,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [4497] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1564), 15,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
    ACTIONS(1562), 33,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      sym__unchecked,
      anon_sym_returns,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [4553] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1568), 15,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
    ACTIONS(1566), 33,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      sym__unchecked,
      anon_sym_returns,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [4609] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1574), 1,
      anon_sym_LPAREN,
    ACTIONS(1572), 15,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
    ACTIONS(1570), 32,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      sym__unchecked,
      anon_sym_returns,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [4667] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1579), 15,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
    ACTIONS(1577), 33,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      sym__unchecked,
      anon_sym_returns,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [4723] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1583), 15,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
    ACTIONS(1581), 33,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      sym__unchecked,
      anon_sym_returns,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [4779] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1587), 15,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
    ACTIONS(1585), 33,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      sym__unchecked,
      anon_sym_returns,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [4835] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1591), 15,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
    ACTIONS(1589), 33,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      sym__unchecked,
      anon_sym_returns,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [4891] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1595), 15,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
    ACTIONS(1593), 33,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      sym__unchecked,
      anon_sym_returns,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [4947] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1599), 15,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
    ACTIONS(1597), 33,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      sym__unchecked,
      anon_sym_returns,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [5003] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1603), 15,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
    ACTIONS(1601), 33,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      sym__unchecked,
      anon_sym_returns,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [5059] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1607), 15,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
    ACTIONS(1605), 33,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      sym__unchecked,
      anon_sym_returns,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [5115] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1611), 15,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
    ACTIONS(1609), 33,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_COLON,
      anon_sym_DOT,
      sym__unchecked,
      anon_sym_returns,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [5171] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1613), 1,
      anon_sym_LBRACK,
    ACTIONS(1312), 4,
      anon_sym_memory,
      anon_sym_storage,
      anon_sym_calldata,
      sym_identifier,
    ACTIONS(1572), 15,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
    ACTIONS(1570), 27,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_DOT,
      anon_sym_QMARK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [5230] = 6,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1574), 1,
      anon_sym_LPAREN,
    ACTIONS(1613), 1,
      anon_sym_LBRACK,
    ACTIONS(1312), 4,
      anon_sym_memory,
      anon_sym_storage,
      anon_sym_calldata,
      sym_identifier,
    ACTIONS(1572), 15,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
    ACTIONS(1570), 26,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RPAREN,
      anon_sym_DOT,
      anon_sym_QMARK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [5291] = 7,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1352), 1,
      anon_sym_DOT,
    ACTIONS(1616), 1,
      anon_sym_COLON,
    STATE(329), 1,
      aux_sym__identifier_path_repeat1,
    ACTIONS(1344), 4,
      anon_sym_memory,
      anon_sym_storage,
      anon_sym_calldata,
      sym_identifier,
    ACTIONS(1349), 15,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
    ACTIONS(1346), 25,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_LPAREN,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [5354] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1618), 1,
      anon_sym_LPAREN,
    ACTIONS(1264), 19,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_memory,
      anon_sym_storage,
      anon_sym_calldata,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
      sym_identifier,
    ACTIONS(1266), 25,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_DOT,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [5409] = 22,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1424), 1,
      anon_sym_AMP_AMP,
    ACTIONS(1426), 1,
      anon_sym_AMP,
    ACTIONS(1428), 1,
      anon_sym_STAR_STAR,
    ACTIONS(1430), 1,
      anon_sym_PIPE_PIPE,
    ACTIONS(1434), 1,
      anon_sym_EQ,
    ACTIONS(1440), 1,
      anon_sym_LPAREN,
    ACTIONS(1442), 1,
      anon_sym_DOT,
    ACTIONS(1444), 1,
      anon_sym_QMARK,
    ACTIONS(1446), 1,
      anon_sym_LBRACK,
    ACTIONS(1620), 1,
      anon_sym_LBRACE,
    ACTIONS(1622), 1,
      sym__unchecked,
    ACTIONS(1624), 1,
      anon_sym_returns,
    STATE(383), 1,
      sym__call_arguments,
    STATE(543), 1,
      sym_block_statement,
    ACTIONS(1410), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1414), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1432), 2,
      anon_sym_CARET,
      anon_sym_PIPE,
    ACTIONS(1418), 3,
      anon_sym_LT,
      anon_sym_GT,
      anon_sym_BANG_EQ,
    ACTIONS(1416), 4,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
    ACTIONS(1422), 6,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1448), 11,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
  [5499] = 22,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1424), 1,
      anon_sym_AMP_AMP,
    ACTIONS(1426), 1,
      anon_sym_AMP,
    ACTIONS(1428), 1,
      anon_sym_STAR_STAR,
    ACTIONS(1430), 1,
      anon_sym_PIPE_PIPE,
    ACTIONS(1434), 1,
      anon_sym_EQ,
    ACTIONS(1436), 1,
      anon_sym_LBRACE,
    ACTIONS(1440), 1,
      anon_sym_LPAREN,
    ACTIONS(1442), 1,
      anon_sym_DOT,
    ACTIONS(1444), 1,
      anon_sym_QMARK,
    ACTIONS(1446), 1,
      anon_sym_LBRACK,
    ACTIONS(1626), 1,
      anon_sym_COMMA,
    ACTIONS(1628), 1,
      anon_sym_RPAREN,
    STATE(383), 1,
      sym__call_arguments,
    STATE(540), 1,
      aux_sym_tuple_expression_repeat1,
    ACTIONS(1410), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1414), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1432), 2,
      anon_sym_CARET,
      anon_sym_PIPE,
    ACTIONS(1418), 3,
      anon_sym_LT,
      anon_sym_GT,
      anon_sym_BANG_EQ,
    ACTIONS(1416), 4,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
    ACTIONS(1422), 6,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1448), 11,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
  [5589] = 22,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1424), 1,
      anon_sym_AMP_AMP,
    ACTIONS(1426), 1,
      anon_sym_AMP,
    ACTIONS(1428), 1,
      anon_sym_STAR_STAR,
    ACTIONS(1430), 1,
      anon_sym_PIPE_PIPE,
    ACTIONS(1434), 1,
      anon_sym_EQ,
    ACTIONS(1436), 1,
      anon_sym_LBRACE,
    ACTIONS(1440), 1,
      anon_sym_LPAREN,
    ACTIONS(1442), 1,
      anon_sym_DOT,
    ACTIONS(1444), 1,
      anon_sym_QMARK,
    ACTIONS(1446), 1,
      anon_sym_LBRACK,
    ACTIONS(1626), 1,
      anon_sym_COMMA,
    ACTIONS(1628), 1,
      anon_sym_RPAREN,
    STATE(383), 1,
      sym__call_arguments,
    STATE(540), 1,
      aux_sym_tuple_expression_repeat1,
    ACTIONS(1410), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1414), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1432), 2,
      anon_sym_CARET,
      anon_sym_PIPE,
    ACTIONS(1418), 3,
      anon_sym_LT,
      anon_sym_GT,
      anon_sym_BANG_EQ,
    ACTIONS(1416), 4,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
    ACTIONS(1422), 6,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1448), 11,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
  [5679] = 22,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1424), 1,
      anon_sym_AMP_AMP,
    ACTIONS(1426), 1,
      anon_sym_AMP,
    ACTIONS(1428), 1,
      anon_sym_STAR_STAR,
    ACTIONS(1430), 1,
      anon_sym_PIPE_PIPE,
    ACTIONS(1434), 1,
      anon_sym_EQ,
    ACTIONS(1436), 1,
      anon_sym_LBRACE,
    ACTIONS(1440), 1,
      anon_sym_LPAREN,
    ACTIONS(1442), 1,
      anon_sym_DOT,
    ACTIONS(1444), 1,
      anon_sym_QMARK,
    ACTIONS(1446), 1,
      anon_sym_LBRACK,
    ACTIONS(1630), 1,
      anon_sym_COMMA,
    ACTIONS(1632), 1,
      anon_sym_RBRACK,
    STATE(383), 1,
      sym__call_arguments,
    STATE(552), 1,
      aux_sym_inline_array_expression_repeat1,
    ACTIONS(1410), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1414), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1432), 2,
      anon_sym_CARET,
      anon_sym_PIPE,
    ACTIONS(1418), 3,
      anon_sym_LT,
      anon_sym_GT,
      anon_sym_BANG_EQ,
    ACTIONS(1416), 4,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
    ACTIONS(1422), 6,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1448), 11,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
  [5769] = 20,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1424), 1,
      anon_sym_AMP_AMP,
    ACTIONS(1426), 1,
      anon_sym_AMP,
    ACTIONS(1428), 1,
      anon_sym_STAR_STAR,
    ACTIONS(1430), 1,
      anon_sym_PIPE_PIPE,
    ACTIONS(1434), 1,
      anon_sym_EQ,
    ACTIONS(1436), 1,
      anon_sym_LBRACE,
    ACTIONS(1440), 1,
      anon_sym_LPAREN,
    ACTIONS(1442), 1,
      anon_sym_DOT,
    ACTIONS(1444), 1,
      anon_sym_QMARK,
    ACTIONS(1446), 1,
      anon_sym_LBRACK,
    STATE(383), 1,
      sym__call_arguments,
    ACTIONS(1410), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1414), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1432), 2,
      anon_sym_CARET,
      anon_sym_PIPE,
    ACTIONS(1634), 2,
      anon_sym_COMMA,
      anon_sym_RPAREN,
    ACTIONS(1418), 3,
      anon_sym_LT,
      anon_sym_GT,
      anon_sym_BANG_EQ,
    ACTIONS(1416), 4,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
    ACTIONS(1422), 6,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1448), 11,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
  [5854] = 20,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1424), 1,
      anon_sym_AMP_AMP,
    ACTIONS(1426), 1,
      anon_sym_AMP,
    ACTIONS(1428), 1,
      anon_sym_STAR_STAR,
    ACTIONS(1430), 1,
      anon_sym_PIPE_PIPE,
    ACTIONS(1434), 1,
      anon_sym_EQ,
    ACTIONS(1436), 1,
      anon_sym_LBRACE,
    ACTIONS(1440), 1,
      anon_sym_LPAREN,
    ACTIONS(1442), 1,
      anon_sym_DOT,
    ACTIONS(1444), 1,
      anon_sym_QMARK,
    ACTIONS(1446), 1,
      anon_sym_LBRACK,
    STATE(383), 1,
      sym__call_arguments,
    ACTIONS(1410), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1414), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1432), 2,
      anon_sym_CARET,
      anon_sym_PIPE,
    ACTIONS(1636), 2,
      anon_sym_COMMA,
      anon_sym_RBRACK,
    ACTIONS(1418), 3,
      anon_sym_LT,
      anon_sym_GT,
      anon_sym_BANG_EQ,
    ACTIONS(1416), 4,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
    ACTIONS(1422), 6,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1448), 11,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
  [5939] = 20,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1424), 1,
      anon_sym_AMP_AMP,
    ACTIONS(1426), 1,
      anon_sym_AMP,
    ACTIONS(1428), 1,
      anon_sym_STAR_STAR,
    ACTIONS(1430), 1,
      anon_sym_PIPE_PIPE,
    ACTIONS(1434), 1,
      anon_sym_EQ,
    ACTIONS(1436), 1,
      anon_sym_LBRACE,
    ACTIONS(1440), 1,
      anon_sym_LPAREN,
    ACTIONS(1442), 1,
      anon_sym_DOT,
    ACTIONS(1444), 1,
      anon_sym_QMARK,
    ACTIONS(1446), 1,
      anon_sym_LBRACK,
    STATE(383), 1,
      sym__call_arguments,
    ACTIONS(1410), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1414), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1432), 2,
      anon_sym_CARET,
      anon_sym_PIPE,
    ACTIONS(1638), 2,
      anon_sym_COMMA,
      anon_sym_RPAREN,
    ACTIONS(1418), 3,
      anon_sym_LT,
      anon_sym_GT,
      anon_sym_BANG_EQ,
    ACTIONS(1416), 4,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
    ACTIONS(1422), 6,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1448), 11,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
  [6024] = 20,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1424), 1,
      anon_sym_AMP_AMP,
    ACTIONS(1426), 1,
      anon_sym_AMP,
    ACTIONS(1428), 1,
      anon_sym_STAR_STAR,
    ACTIONS(1430), 1,
      anon_sym_PIPE_PIPE,
    ACTIONS(1434), 1,
      anon_sym_EQ,
    ACTIONS(1436), 1,
      anon_sym_LBRACE,
    ACTIONS(1440), 1,
      anon_sym_LPAREN,
    ACTIONS(1442), 1,
      anon_sym_DOT,
    ACTIONS(1444), 1,
      anon_sym_QMARK,
    ACTIONS(1446), 1,
      anon_sym_LBRACK,
    STATE(383), 1,
      sym__call_arguments,
    ACTIONS(1410), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1414), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1432), 2,
      anon_sym_CARET,
      anon_sym_PIPE,
    ACTIONS(1640), 2,
      anon_sym_COMMA,
      anon_sym_RBRACE,
    ACTIONS(1418), 3,
      anon_sym_LT,
      anon_sym_GT,
      anon_sym_BANG_EQ,
    ACTIONS(1416), 4,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
    ACTIONS(1422), 6,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1448), 11,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
  [6109] = 20,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1424), 1,
      anon_sym_AMP_AMP,
    ACTIONS(1426), 1,
      anon_sym_AMP,
    ACTIONS(1428), 1,
      anon_sym_STAR_STAR,
    ACTIONS(1430), 1,
      anon_sym_PIPE_PIPE,
    ACTIONS(1434), 1,
      anon_sym_EQ,
    ACTIONS(1436), 1,
      anon_sym_LBRACE,
    ACTIONS(1440), 1,
      anon_sym_LPAREN,
    ACTIONS(1442), 1,
      anon_sym_DOT,
    ACTIONS(1444), 1,
      anon_sym_QMARK,
    ACTIONS(1446), 1,
      anon_sym_LBRACK,
    STATE(383), 1,
      sym__call_arguments,
    ACTIONS(1410), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1414), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1432), 2,
      anon_sym_CARET,
      anon_sym_PIPE,
    ACTIONS(1642), 2,
      anon_sym_COMMA,
      anon_sym_RBRACE,
    ACTIONS(1418), 3,
      anon_sym_LT,
      anon_sym_GT,
      anon_sym_BANG_EQ,
    ACTIONS(1416), 4,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
    ACTIONS(1422), 6,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1448), 11,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
  [6194] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(372), 1,
      anon_sym_catch,
    ACTIONS(1484), 15,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
    ACTIONS(1482), 27,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_LPAREN,
      anon_sym_DOT,
      sym__unchecked,
      anon_sym_returns,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
  [6247] = 21,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1424), 1,
      anon_sym_AMP_AMP,
    ACTIONS(1426), 1,
      anon_sym_AMP,
    ACTIONS(1428), 1,
      anon_sym_STAR_STAR,
    ACTIONS(1430), 1,
      anon_sym_PIPE_PIPE,
    ACTIONS(1434), 1,
      anon_sym_EQ,
    ACTIONS(1436), 1,
      anon_sym_LBRACE,
    ACTIONS(1440), 1,
      anon_sym_LPAREN,
    ACTIONS(1442), 1,
      anon_sym_DOT,
    ACTIONS(1444), 1,
      anon_sym_QMARK,
    ACTIONS(1446), 1,
      anon_sym_LBRACK,
    ACTIONS(1644), 1,
      anon_sym_COLON,
    ACTIONS(1646), 1,
      anon_sym_RBRACK,
    STATE(383), 1,
      sym__call_arguments,
    ACTIONS(1410), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1414), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1432), 2,
      anon_sym_CARET,
      anon_sym_PIPE,
    ACTIONS(1418), 3,
      anon_sym_LT,
      anon_sym_GT,
      anon_sym_BANG_EQ,
    ACTIONS(1416), 4,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
    ACTIONS(1422), 6,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1448), 11,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
  [6334] = 20,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1424), 1,
      anon_sym_AMP_AMP,
    ACTIONS(1426), 1,
      anon_sym_AMP,
    ACTIONS(1428), 1,
      anon_sym_STAR_STAR,
    ACTIONS(1430), 1,
      anon_sym_PIPE_PIPE,
    ACTIONS(1434), 1,
      anon_sym_EQ,
    ACTIONS(1436), 1,
      anon_sym_LBRACE,
    ACTIONS(1440), 1,
      anon_sym_LPAREN,
    ACTIONS(1442), 1,
      anon_sym_DOT,
    ACTIONS(1444), 1,
      anon_sym_QMARK,
    ACTIONS(1446), 1,
      anon_sym_LBRACK,
    ACTIONS(1648), 1,
      sym__semicolon,
    STATE(426), 1,
      sym__call_arguments,
    ACTIONS(1410), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1414), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1432), 2,
      anon_sym_CARET,
      anon_sym_PIPE,
    ACTIONS(1418), 3,
      anon_sym_LT,
      anon_sym_GT,
      anon_sym_BANG_EQ,
    ACTIONS(1416), 4,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
    ACTIONS(1422), 6,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1448), 11,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
  [6418] = 20,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1424), 1,
      anon_sym_AMP_AMP,
    ACTIONS(1426), 1,
      anon_sym_AMP,
    ACTIONS(1428), 1,
      anon_sym_STAR_STAR,
    ACTIONS(1430), 1,
      anon_sym_PIPE_PIPE,
    ACTIONS(1434), 1,
      anon_sym_EQ,
    ACTIONS(1436), 1,
      anon_sym_LBRACE,
    ACTIONS(1440), 1,
      anon_sym_LPAREN,
    ACTIONS(1442), 1,
      anon_sym_DOT,
    ACTIONS(1444), 1,
      anon_sym_QMARK,
    ACTIONS(1446), 1,
      anon_sym_LBRACK,
    ACTIONS(1650), 1,
      anon_sym_RPAREN,
    STATE(383), 1,
      sym__call_arguments,
    ACTIONS(1410), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1414), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1432), 2,
      anon_sym_CARET,
      anon_sym_PIPE,
    ACTIONS(1418), 3,
      anon_sym_LT,
      anon_sym_GT,
      anon_sym_BANG_EQ,
    ACTIONS(1416), 4,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
    ACTIONS(1422), 6,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1448), 11,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
  [6502] = 20,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1424), 1,
      anon_sym_AMP_AMP,
    ACTIONS(1426), 1,
      anon_sym_AMP,
    ACTIONS(1428), 1,
      anon_sym_STAR_STAR,
    ACTIONS(1430), 1,
      anon_sym_PIPE_PIPE,
    ACTIONS(1434), 1,
      anon_sym_EQ,
    ACTIONS(1436), 1,
      anon_sym_LBRACE,
    ACTIONS(1440), 1,
      anon_sym_LPAREN,
    ACTIONS(1442), 1,
      anon_sym_DOT,
    ACTIONS(1444), 1,
      anon_sym_QMARK,
    ACTIONS(1446), 1,
      anon_sym_LBRACK,
    ACTIONS(1652), 1,
      sym__semicolon,
    STATE(383), 1,
      sym__call_arguments,
    ACTIONS(1410), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1414), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1432), 2,
      anon_sym_CARET,
      anon_sym_PIPE,
    ACTIONS(1418), 3,
      anon_sym_LT,
      anon_sym_GT,
      anon_sym_BANG_EQ,
    ACTIONS(1416), 4,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
    ACTIONS(1422), 6,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1448), 11,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
  [6586] = 20,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1424), 1,
      anon_sym_AMP_AMP,
    ACTIONS(1426), 1,
      anon_sym_AMP,
    ACTIONS(1428), 1,
      anon_sym_STAR_STAR,
    ACTIONS(1430), 1,
      anon_sym_PIPE_PIPE,
    ACTIONS(1434), 1,
      anon_sym_EQ,
    ACTIONS(1436), 1,
      anon_sym_LBRACE,
    ACTIONS(1440), 1,
      anon_sym_LPAREN,
    ACTIONS(1442), 1,
      anon_sym_DOT,
    ACTIONS(1444), 1,
      anon_sym_QMARK,
    ACTIONS(1446), 1,
      anon_sym_LBRACK,
    ACTIONS(1654), 1,
      anon_sym_RPAREN,
    STATE(383), 1,
      sym__call_arguments,
    ACTIONS(1410), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1414), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1432), 2,
      anon_sym_CARET,
      anon_sym_PIPE,
    ACTIONS(1418), 3,
      anon_sym_LT,
      anon_sym_GT,
      anon_sym_BANG_EQ,
    ACTIONS(1416), 4,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
    ACTIONS(1422), 6,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1448), 11,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
  [6670] = 20,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1424), 1,
      anon_sym_AMP_AMP,
    ACTIONS(1426), 1,
      anon_sym_AMP,
    ACTIONS(1428), 1,
      anon_sym_STAR_STAR,
    ACTIONS(1430), 1,
      anon_sym_PIPE_PIPE,
    ACTIONS(1434), 1,
      anon_sym_EQ,
    ACTIONS(1436), 1,
      anon_sym_LBRACE,
    ACTIONS(1440), 1,
      anon_sym_LPAREN,
    ACTIONS(1442), 1,
      anon_sym_DOT,
    ACTIONS(1444), 1,
      anon_sym_QMARK,
    ACTIONS(1446), 1,
      anon_sym_LBRACK,
    ACTIONS(1656), 1,
      anon_sym_RPAREN,
    STATE(383), 1,
      sym__call_arguments,
    ACTIONS(1410), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1414), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1432), 2,
      anon_sym_CARET,
      anon_sym_PIPE,
    ACTIONS(1418), 3,
      anon_sym_LT,
      anon_sym_GT,
      anon_sym_BANG_EQ,
    ACTIONS(1416), 4,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
    ACTIONS(1422), 6,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1448), 11,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
  [6754] = 20,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1424), 1,
      anon_sym_AMP_AMP,
    ACTIONS(1426), 1,
      anon_sym_AMP,
    ACTIONS(1428), 1,
      anon_sym_STAR_STAR,
    ACTIONS(1430), 1,
      anon_sym_PIPE_PIPE,
    ACTIONS(1434), 1,
      anon_sym_EQ,
    ACTIONS(1436), 1,
      anon_sym_LBRACE,
    ACTIONS(1440), 1,
      anon_sym_LPAREN,
    ACTIONS(1442), 1,
      anon_sym_DOT,
    ACTIONS(1444), 1,
      anon_sym_QMARK,
    ACTIONS(1446), 1,
      anon_sym_LBRACK,
    ACTIONS(1658), 1,
      sym__semicolon,
    STATE(383), 1,
      sym__call_arguments,
    ACTIONS(1410), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1414), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1432), 2,
      anon_sym_CARET,
      anon_sym_PIPE,
    ACTIONS(1418), 3,
      anon_sym_LT,
      anon_sym_GT,
      anon_sym_BANG_EQ,
    ACTIONS(1416), 4,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
    ACTIONS(1422), 6,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1448), 11,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
  [6838] = 20,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1424), 1,
      anon_sym_AMP_AMP,
    ACTIONS(1426), 1,
      anon_sym_AMP,
    ACTIONS(1428), 1,
      anon_sym_STAR_STAR,
    ACTIONS(1430), 1,
      anon_sym_PIPE_PIPE,
    ACTIONS(1434), 1,
      anon_sym_EQ,
    ACTIONS(1436), 1,
      anon_sym_LBRACE,
    ACTIONS(1440), 1,
      anon_sym_LPAREN,
    ACTIONS(1442), 1,
      anon_sym_DOT,
    ACTIONS(1444), 1,
      anon_sym_QMARK,
    ACTIONS(1446), 1,
      anon_sym_LBRACK,
    ACTIONS(1660), 1,
      anon_sym_RBRACK,
    STATE(383), 1,
      sym__call_arguments,
    ACTIONS(1410), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1414), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1432), 2,
      anon_sym_CARET,
      anon_sym_PIPE,
    ACTIONS(1418), 3,
      anon_sym_LT,
      anon_sym_GT,
      anon_sym_BANG_EQ,
    ACTIONS(1416), 4,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
    ACTIONS(1422), 6,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1448), 11,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
  [6922] = 20,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1424), 1,
      anon_sym_AMP_AMP,
    ACTIONS(1426), 1,
      anon_sym_AMP,
    ACTIONS(1428), 1,
      anon_sym_STAR_STAR,
    ACTIONS(1430), 1,
      anon_sym_PIPE_PIPE,
    ACTIONS(1434), 1,
      anon_sym_EQ,
    ACTIONS(1436), 1,
      anon_sym_LBRACE,
    ACTIONS(1440), 1,
      anon_sym_LPAREN,
    ACTIONS(1442), 1,
      anon_sym_DOT,
    ACTIONS(1444), 1,
      anon_sym_QMARK,
    ACTIONS(1446), 1,
      anon_sym_LBRACK,
    ACTIONS(1662), 1,
      anon_sym_RPAREN,
    STATE(383), 1,
      sym__call_arguments,
    ACTIONS(1410), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1414), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1432), 2,
      anon_sym_CARET,
      anon_sym_PIPE,
    ACTIONS(1418), 3,
      anon_sym_LT,
      anon_sym_GT,
      anon_sym_BANG_EQ,
    ACTIONS(1416), 4,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
    ACTIONS(1422), 6,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1448), 11,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
  [7006] = 20,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1424), 1,
      anon_sym_AMP_AMP,
    ACTIONS(1426), 1,
      anon_sym_AMP,
    ACTIONS(1428), 1,
      anon_sym_STAR_STAR,
    ACTIONS(1430), 1,
      anon_sym_PIPE_PIPE,
    ACTIONS(1434), 1,
      anon_sym_EQ,
    ACTIONS(1436), 1,
      anon_sym_LBRACE,
    ACTIONS(1440), 1,
      anon_sym_LPAREN,
    ACTIONS(1442), 1,
      anon_sym_DOT,
    ACTIONS(1444), 1,
      anon_sym_QMARK,
    ACTIONS(1446), 1,
      anon_sym_LBRACK,
    ACTIONS(1664), 1,
      sym__semicolon,
    STATE(383), 1,
      sym__call_arguments,
    ACTIONS(1410), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1414), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1432), 2,
      anon_sym_CARET,
      anon_sym_PIPE,
    ACTIONS(1418), 3,
      anon_sym_LT,
      anon_sym_GT,
      anon_sym_BANG_EQ,
    ACTIONS(1416), 4,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
    ACTIONS(1422), 6,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1448), 11,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
  [7090] = 20,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1424), 1,
      anon_sym_AMP_AMP,
    ACTIONS(1426), 1,
      anon_sym_AMP,
    ACTIONS(1428), 1,
      anon_sym_STAR_STAR,
    ACTIONS(1430), 1,
      anon_sym_PIPE_PIPE,
    ACTIONS(1434), 1,
      anon_sym_EQ,
    ACTIONS(1436), 1,
      anon_sym_LBRACE,
    ACTIONS(1440), 1,
      anon_sym_LPAREN,
    ACTIONS(1442), 1,
      anon_sym_DOT,
    ACTIONS(1444), 1,
      anon_sym_QMARK,
    ACTIONS(1446), 1,
      anon_sym_LBRACK,
    ACTIONS(1666), 1,
      sym__semicolon,
    STATE(383), 1,
      sym__call_arguments,
    ACTIONS(1410), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1414), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1432), 2,
      anon_sym_CARET,
      anon_sym_PIPE,
    ACTIONS(1418), 3,
      anon_sym_LT,
      anon_sym_GT,
      anon_sym_BANG_EQ,
    ACTIONS(1416), 4,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
    ACTIONS(1422), 6,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1448), 11,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
  [7174] = 20,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1424), 1,
      anon_sym_AMP_AMP,
    ACTIONS(1426), 1,
      anon_sym_AMP,
    ACTIONS(1428), 1,
      anon_sym_STAR_STAR,
    ACTIONS(1430), 1,
      anon_sym_PIPE_PIPE,
    ACTIONS(1434), 1,
      anon_sym_EQ,
    ACTIONS(1436), 1,
      anon_sym_LBRACE,
    ACTIONS(1440), 1,
      anon_sym_LPAREN,
    ACTIONS(1442), 1,
      anon_sym_DOT,
    ACTIONS(1444), 1,
      anon_sym_QMARK,
    ACTIONS(1446), 1,
      anon_sym_LBRACK,
    ACTIONS(1668), 1,
      sym__semicolon,
    STATE(383), 1,
      sym__call_arguments,
    ACTIONS(1410), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1414), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1432), 2,
      anon_sym_CARET,
      anon_sym_PIPE,
    ACTIONS(1418), 3,
      anon_sym_LT,
      anon_sym_GT,
      anon_sym_BANG_EQ,
    ACTIONS(1416), 4,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
    ACTIONS(1422), 6,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1448), 11,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
  [7258] = 20,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1424), 1,
      anon_sym_AMP_AMP,
    ACTIONS(1426), 1,
      anon_sym_AMP,
    ACTIONS(1428), 1,
      anon_sym_STAR_STAR,
    ACTIONS(1430), 1,
      anon_sym_PIPE_PIPE,
    ACTIONS(1434), 1,
      anon_sym_EQ,
    ACTIONS(1436), 1,
      anon_sym_LBRACE,
    ACTIONS(1440), 1,
      anon_sym_LPAREN,
    ACTIONS(1442), 1,
      anon_sym_DOT,
    ACTIONS(1444), 1,
      anon_sym_QMARK,
    ACTIONS(1446), 1,
      anon_sym_LBRACK,
    ACTIONS(1670), 1,
      anon_sym_RBRACK,
    STATE(383), 1,
      sym__call_arguments,
    ACTIONS(1410), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1414), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1432), 2,
      anon_sym_CARET,
      anon_sym_PIPE,
    ACTIONS(1418), 3,
      anon_sym_LT,
      anon_sym_GT,
      anon_sym_BANG_EQ,
    ACTIONS(1416), 4,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
    ACTIONS(1422), 6,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1448), 11,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
  [7342] = 20,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1424), 1,
      anon_sym_AMP_AMP,
    ACTIONS(1426), 1,
      anon_sym_AMP,
    ACTIONS(1428), 1,
      anon_sym_STAR_STAR,
    ACTIONS(1430), 1,
      anon_sym_PIPE_PIPE,
    ACTIONS(1434), 1,
      anon_sym_EQ,
    ACTIONS(1436), 1,
      anon_sym_LBRACE,
    ACTIONS(1440), 1,
      anon_sym_LPAREN,
    ACTIONS(1442), 1,
      anon_sym_DOT,
    ACTIONS(1444), 1,
      anon_sym_QMARK,
    ACTIONS(1446), 1,
      anon_sym_LBRACK,
    ACTIONS(1672), 1,
      anon_sym_COLON,
    STATE(383), 1,
      sym__call_arguments,
    ACTIONS(1410), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1414), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1432), 2,
      anon_sym_CARET,
      anon_sym_PIPE,
    ACTIONS(1418), 3,
      anon_sym_LT,
      anon_sym_GT,
      anon_sym_BANG_EQ,
    ACTIONS(1416), 4,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
    ACTIONS(1422), 6,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1448), 11,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
  [7426] = 20,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1424), 1,
      anon_sym_AMP_AMP,
    ACTIONS(1426), 1,
      anon_sym_AMP,
    ACTIONS(1428), 1,
      anon_sym_STAR_STAR,
    ACTIONS(1430), 1,
      anon_sym_PIPE_PIPE,
    ACTIONS(1434), 1,
      anon_sym_EQ,
    ACTIONS(1436), 1,
      anon_sym_LBRACE,
    ACTIONS(1440), 1,
      anon_sym_LPAREN,
    ACTIONS(1442), 1,
      anon_sym_DOT,
    ACTIONS(1444), 1,
      anon_sym_QMARK,
    ACTIONS(1446), 1,
      anon_sym_LBRACK,
    ACTIONS(1674), 1,
      anon_sym_RBRACK,
    STATE(383), 1,
      sym__call_arguments,
    ACTIONS(1410), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1414), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1432), 2,
      anon_sym_CARET,
      anon_sym_PIPE,
    ACTIONS(1418), 3,
      anon_sym_LT,
      anon_sym_GT,
      anon_sym_BANG_EQ,
    ACTIONS(1416), 4,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
    ACTIONS(1422), 6,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1448), 11,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
  [7510] = 20,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1424), 1,
      anon_sym_AMP_AMP,
    ACTIONS(1426), 1,
      anon_sym_AMP,
    ACTIONS(1428), 1,
      anon_sym_STAR_STAR,
    ACTIONS(1430), 1,
      anon_sym_PIPE_PIPE,
    ACTIONS(1434), 1,
      anon_sym_EQ,
    ACTIONS(1436), 1,
      anon_sym_LBRACE,
    ACTIONS(1440), 1,
      anon_sym_LPAREN,
    ACTIONS(1442), 1,
      anon_sym_DOT,
    ACTIONS(1444), 1,
      anon_sym_QMARK,
    ACTIONS(1446), 1,
      anon_sym_LBRACK,
    ACTIONS(1676), 1,
      sym__semicolon,
    STATE(383), 1,
      sym__call_arguments,
    ACTIONS(1410), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1414), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1432), 2,
      anon_sym_CARET,
      anon_sym_PIPE,
    ACTIONS(1418), 3,
      anon_sym_LT,
      anon_sym_GT,
      anon_sym_BANG_EQ,
    ACTIONS(1416), 4,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
    ACTIONS(1422), 6,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1448), 11,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
  [7594] = 20,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1424), 1,
      anon_sym_AMP_AMP,
    ACTIONS(1426), 1,
      anon_sym_AMP,
    ACTIONS(1428), 1,
      anon_sym_STAR_STAR,
    ACTIONS(1430), 1,
      anon_sym_PIPE_PIPE,
    ACTIONS(1434), 1,
      anon_sym_EQ,
    ACTIONS(1436), 1,
      anon_sym_LBRACE,
    ACTIONS(1440), 1,
      anon_sym_LPAREN,
    ACTIONS(1442), 1,
      anon_sym_DOT,
    ACTIONS(1444), 1,
      anon_sym_QMARK,
    ACTIONS(1446), 1,
      anon_sym_LBRACK,
    ACTIONS(1678), 1,
      anon_sym_RPAREN,
    STATE(383), 1,
      sym__call_arguments,
    ACTIONS(1410), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1414), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1432), 2,
      anon_sym_CARET,
      anon_sym_PIPE,
    ACTIONS(1418), 3,
      anon_sym_LT,
      anon_sym_GT,
      anon_sym_BANG_EQ,
    ACTIONS(1416), 4,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
    ACTIONS(1422), 6,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1448), 11,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
  [7678] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1680), 1,
      sym__semicolon,
    ACTIONS(1587), 15,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
    ACTIONS(1585), 25,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_LPAREN,
      anon_sym_DOT,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
  [7729] = 19,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1424), 1,
      anon_sym_AMP_AMP,
    ACTIONS(1426), 1,
      anon_sym_AMP,
    ACTIONS(1428), 1,
      anon_sym_STAR_STAR,
    ACTIONS(1430), 1,
      anon_sym_PIPE_PIPE,
    ACTIONS(1434), 1,
      anon_sym_EQ,
    ACTIONS(1436), 1,
      anon_sym_LBRACE,
    ACTIONS(1440), 1,
      anon_sym_LPAREN,
    ACTIONS(1442), 1,
      anon_sym_DOT,
    ACTIONS(1444), 1,
      anon_sym_QMARK,
    ACTIONS(1446), 1,
      anon_sym_LBRACK,
    STATE(421), 1,
      sym__call_arguments,
    ACTIONS(1410), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1414), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1432), 2,
      anon_sym_CARET,
      anon_sym_PIPE,
    ACTIONS(1418), 3,
      anon_sym_LT,
      anon_sym_GT,
      anon_sym_BANG_EQ,
    ACTIONS(1416), 4,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
    ACTIONS(1422), 6,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1448), 11,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
  [7810] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1338), 1,
      sym__semicolon,
    ACTIONS(1552), 15,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
    ACTIONS(1550), 25,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_LPAREN,
      anon_sym_DOT,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
  [7861] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1682), 1,
      anon_sym_EQ,
    ACTIONS(1591), 14,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
    ACTIONS(1589), 26,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_LPAREN,
      anon_sym_DOT,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [7912] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1684), 1,
      anon_sym_EQ,
    ACTIONS(1552), 14,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
    ACTIONS(1550), 26,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_LPAREN,
      anon_sym_DOT,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
      sym__semicolon,
  [7963] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1686), 1,
      sym__semicolon,
    ACTIONS(1587), 15,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_GT_GT,
      anon_sym_GT_GT_GT,
      anon_sym_LT_LT,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_BANG_EQ,
    ACTIONS(1585), 25,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_LPAREN,
      anon_sym_DOT,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ_EQ,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
      anon_sym_PLUS_EQ,
      anon_sym_DASH_EQ,
      anon_sym_STAR_EQ,
      anon_sym_SLASH_EQ,
      anon_sym_PERCENT_EQ,
      anon_sym_CARET_EQ,
      anon_sym_AMP_EQ,
      anon_sym_PIPE_EQ,
      anon_sym_GT_GT_EQ,
      anon_sym_GT_GT_GT_EQ,
      anon_sym_LT_LT_EQ,
  [8014] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1688), 1,
      anon_sym_DOT,
    STATE(296), 1,
      aux_sym__identifier_path_repeat1,
    ACTIONS(1342), 7,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_LBRACK,
      anon_sym_EQ_GT,
      sym__semicolon,
    ACTIONS(1340), 18,
      anon_sym_constant,
      anon_sym_indexed,
      anon_sym_for,
      anon_sym_memory,
      anon_sym_storage,
      anon_sym_calldata,
      anon_sym_returns,
      anon_sym_public,
      anon_sym_internal,
      anon_sym_private,
      anon_sym_external,
      anon_sym_pure,
      anon_sym_view,
      anon_sym_payable,
      sym_immutable,
      anon_sym_override,
      sym_virtual,
      sym_identifier,
  [8053] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1688), 1,
      anon_sym_DOT,
    STATE(427), 1,
      aux_sym__identifier_path_repeat1,
    ACTIONS(1690), 7,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_LBRACK,
      anon_sym_EQ_GT,
      sym__semicolon,
    ACTIONS(1344), 18,
      anon_sym_constant,
      anon_sym_indexed,
      anon_sym_for,
      anon_sym_memory,
      anon_sym_storage,
      anon_sym_calldata,
      anon_sym_returns,
      anon_sym_public,
      anon_sym_internal,
      anon_sym_private,
      anon_sym_external,
      anon_sym_pure,
      anon_sym_view,
      anon_sym_payable,
      sym_immutable,
      anon_sym_override,
      sym_virtual,
      sym_identifier,
  [8092] = 17,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(7), 1,
      sym_identifier,
    ACTIONS(1220), 1,
      anon_sym_returns,
    ACTIONS(1238), 1,
      anon_sym_LBRACK,
    ACTIONS(1692), 1,
      anon_sym_LBRACE,
    ACTIONS(1694), 1,
      anon_sym_override,
    ACTIONS(1696), 1,
      sym_virtual,
    ACTIONS(1698), 1,
      sym__semicolon,
    STATE(148), 1,
      sym_function_body,
    STATE(297), 1,
      aux_sym__function_type_repeat1,
    STATE(320), 1,
      sym__return_parameters,
    STATE(443), 1,
      sym__identifier_path,
    ACTIONS(1236), 2,
      anon_sym_constant,
      sym_immutable,
    STATE(439), 2,
      sym_visibility,
      sym_state_mutability,
    ACTIONS(1224), 3,
      anon_sym_pure,
      anon_sym_view,
      anon_sym_payable,
    STATE(436), 3,
      sym_override_specifier,
      sym_modifier_invocation,
      aux_sym_fallback_receive_definition_repeat1,
    ACTIONS(1222), 4,
      anon_sym_public,
      anon_sym_internal,
      anon_sym_private,
      anon_sym_external,
  [8153] = 13,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(7), 1,
      sym_identifier,
    ACTIONS(1694), 1,
      anon_sym_override,
    ACTIONS(1700), 1,
      anon_sym_LBRACE,
    ACTIONS(1702), 1,
      anon_sym_returns,
    ACTIONS(1704), 1,
      sym_virtual,
    ACTIONS(1706), 1,
      sym__semicolon,
    STATE(170), 1,
      sym_function_body,
    STATE(443), 1,
      sym__identifier_path,
    STATE(561), 1,
      sym_return_type_definition,
    ACTIONS(1224), 3,
      anon_sym_pure,
      anon_sym_view,
      anon_sym_payable,
    ACTIONS(1222), 4,
      anon_sym_public,
      anon_sym_internal,
      anon_sym_private,
      anon_sym_external,
    STATE(432), 5,
      sym_visibility,
      sym_state_mutability,
      sym_override_specifier,
      sym_modifier_invocation,
      aux_sym_function_definition_repeat1,
  [8202] = 13,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(7), 1,
      sym_identifier,
    ACTIONS(1692), 1,
      anon_sym_LBRACE,
    ACTIONS(1694), 1,
      anon_sym_override,
    ACTIONS(1702), 1,
      anon_sym_returns,
    ACTIONS(1708), 1,
      sym_virtual,
    ACTIONS(1710), 1,
      sym__semicolon,
    STATE(177), 1,
      sym_function_body,
    STATE(443), 1,
      sym__identifier_path,
    STATE(530), 1,
      sym_return_type_definition,
    ACTIONS(1224), 3,
      anon_sym_pure,
      anon_sym_view,
      anon_sym_payable,
    ACTIONS(1222), 4,
      anon_sym_public,
      anon_sym_internal,
      anon_sym_private,
      anon_sym_external,
    STATE(434), 5,
      sym_visibility,
      sym_state_mutability,
      sym_override_specifier,
      sym_modifier_invocation,
      aux_sym_function_definition_repeat1,
  [8251] = 13,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(7), 1,
      sym_identifier,
    ACTIONS(1694), 1,
      anon_sym_override,
    ACTIONS(1700), 1,
      anon_sym_LBRACE,
    ACTIONS(1702), 1,
      anon_sym_returns,
    ACTIONS(1708), 1,
      sym_virtual,
    ACTIONS(1712), 1,
      sym__semicolon,
    STATE(167), 1,
      sym_function_body,
    STATE(443), 1,
      sym__identifier_path,
    STATE(524), 1,
      sym_return_type_definition,
    ACTIONS(1224), 3,
      anon_sym_pure,
      anon_sym_view,
      anon_sym_payable,
    ACTIONS(1222), 4,
      anon_sym_public,
      anon_sym_internal,
      anon_sym_private,
      anon_sym_external,
    STATE(434), 5,
      sym_visibility,
      sym_state_mutability,
      sym_override_specifier,
      sym_modifier_invocation,
      aux_sym_function_definition_repeat1,
  [8300] = 13,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(7), 1,
      sym_identifier,
    ACTIONS(1692), 1,
      anon_sym_LBRACE,
    ACTIONS(1694), 1,
      anon_sym_override,
    ACTIONS(1702), 1,
      anon_sym_returns,
    ACTIONS(1714), 1,
      sym_virtual,
    ACTIONS(1716), 1,
      sym__semicolon,
    STATE(184), 1,
      sym_function_body,
    STATE(443), 1,
      sym__identifier_path,
    STATE(536), 1,
      sym_return_type_definition,
    ACTIONS(1224), 3,
      anon_sym_pure,
      anon_sym_view,
      anon_sym_payable,
    ACTIONS(1222), 4,
      anon_sym_public,
      anon_sym_internal,
      anon_sym_private,
      anon_sym_external,
    STATE(431), 5,
      sym_visibility,
      sym_state_mutability,
      sym_override_specifier,
      sym_modifier_invocation,
      aux_sym_function_definition_repeat1,
  [8349] = 10,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1718), 1,
      sym_identifier,
    ACTIONS(1723), 1,
      anon_sym_returns,
    ACTIONS(1731), 1,
      anon_sym_override,
    ACTIONS(1734), 1,
      sym_virtual,
    STATE(443), 1,
      sym__identifier_path,
    ACTIONS(1721), 2,
      anon_sym_LBRACE,
      sym__semicolon,
    ACTIONS(1728), 3,
      anon_sym_pure,
      anon_sym_view,
      anon_sym_payable,
    ACTIONS(1725), 4,
      anon_sym_public,
      anon_sym_internal,
      anon_sym_private,
      anon_sym_external,
    STATE(434), 5,
      sym_visibility,
      sym_state_mutability,
      sym_override_specifier,
      sym_modifier_invocation,
      aux_sym_function_definition_repeat1,
  [8390] = 11,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(7), 1,
      sym_identifier,
    ACTIONS(1692), 1,
      anon_sym_LBRACE,
    ACTIONS(1694), 1,
      anon_sym_override,
    ACTIONS(1696), 1,
      sym_virtual,
    ACTIONS(1698), 1,
      sym__semicolon,
    STATE(148), 1,
      sym_function_body,
    STATE(443), 1,
      sym__identifier_path,
    ACTIONS(1224), 3,
      anon_sym_pure,
      anon_sym_view,
      anon_sym_payable,
    ACTIONS(1222), 4,
      anon_sym_public,
      anon_sym_internal,
      anon_sym_private,
      anon_sym_external,
    STATE(436), 5,
      sym_visibility,
      sym_state_mutability,
      sym_override_specifier,
      sym_modifier_invocation,
      aux_sym_fallback_receive_definition_repeat1,
  [8433] = 11,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(7), 1,
      sym_identifier,
    ACTIONS(1692), 1,
      anon_sym_LBRACE,
    ACTIONS(1694), 1,
      anon_sym_override,
    ACTIONS(1737), 1,
      sym_virtual,
    ACTIONS(1739), 1,
      sym__semicolon,
    STATE(204), 1,
      sym_function_body,
    STATE(443), 1,
      sym__identifier_path,
    ACTIONS(1224), 3,
      anon_sym_pure,
      anon_sym_view,
      anon_sym_payable,
    ACTIONS(1222), 4,
      anon_sym_public,
      anon_sym_internal,
      anon_sym_private,
      anon_sym_external,
    STATE(437), 5,
      sym_visibility,
      sym_state_mutability,
      sym_override_specifier,
      sym_modifier_invocation,
      aux_sym_fallback_receive_definition_repeat1,
  [8476] = 9,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1741), 1,
      sym_identifier,
    ACTIONS(1752), 1,
      anon_sym_override,
    ACTIONS(1755), 1,
      sym_virtual,
    STATE(443), 1,
      sym__identifier_path,
    ACTIONS(1744), 2,
      anon_sym_LBRACE,
      sym__semicolon,
    ACTIONS(1749), 3,
      anon_sym_pure,
      anon_sym_view,
      anon_sym_payable,
    ACTIONS(1746), 4,
      anon_sym_public,
      anon_sym_internal,
      anon_sym_private,
      anon_sym_external,
    STATE(437), 5,
      sym_visibility,
      sym_state_mutability,
      sym_override_specifier,
      sym_modifier_invocation,
      aux_sym_fallback_receive_definition_repeat1,
  [8514] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1762), 1,
      anon_sym_LPAREN,
    ACTIONS(1760), 2,
      anon_sym_LBRACE,
      sym__semicolon,
    ACTIONS(1758), 13,
      anon_sym_constant,
      anon_sym_returns,
      anon_sym_public,
      anon_sym_internal,
      anon_sym_private,
      anon_sym_external,
      anon_sym_pure,
      anon_sym_view,
      anon_sym_payable,
      sym_immutable,
      anon_sym_override,
      sym_virtual,
      sym_identifier,
  [8540] = 6,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1771), 1,
      sym_virtual,
    ACTIONS(1773), 1,
      anon_sym_LBRACK,
    ACTIONS(1767), 2,
      anon_sym_LBRACE,
      sym__semicolon,
    ACTIONS(1769), 3,
      anon_sym_constant,
      anon_sym_returns,
      sym_immutable,
    ACTIONS(1764), 9,
      anon_sym_public,
      anon_sym_internal,
      anon_sym_private,
      anon_sym_external,
      anon_sym_pure,
      anon_sym_view,
      anon_sym_payable,
      anon_sym_override,
      sym_identifier,
  [8570] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1777), 2,
      anon_sym_LBRACE,
      sym__semicolon,
    ACTIONS(1775), 13,
      anon_sym_constant,
      anon_sym_returns,
      anon_sym_public,
      anon_sym_internal,
      anon_sym_private,
      anon_sym_external,
      anon_sym_pure,
      anon_sym_view,
      anon_sym_payable,
      sym_immutable,
      anon_sym_override,
      sym_virtual,
      sym_identifier,
  [8593] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1781), 2,
      anon_sym_LBRACE,
      sym__semicolon,
    ACTIONS(1779), 13,
      anon_sym_constant,
      anon_sym_returns,
      anon_sym_public,
      anon_sym_internal,
      anon_sym_private,
      anon_sym_external,
      anon_sym_pure,
      anon_sym_view,
      anon_sym_payable,
      sym_immutable,
      anon_sym_override,
      sym_virtual,
      sym_identifier,
  [8616] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1785), 2,
      anon_sym_LBRACE,
      sym__semicolon,
    ACTIONS(1783), 13,
      anon_sym_constant,
      anon_sym_returns,
      anon_sym_public,
      anon_sym_internal,
      anon_sym_private,
      anon_sym_external,
      anon_sym_pure,
      anon_sym_view,
      anon_sym_payable,
      sym_immutable,
      anon_sym_override,
      sym_virtual,
      sym_identifier,
  [8639] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1440), 1,
      anon_sym_LPAREN,
    STATE(444), 1,
      sym__call_arguments,
    ACTIONS(1789), 2,
      anon_sym_LBRACE,
      sym__semicolon,
    ACTIONS(1787), 11,
      anon_sym_returns,
      anon_sym_public,
      anon_sym_internal,
      anon_sym_private,
      anon_sym_external,
      anon_sym_pure,
      anon_sym_view,
      anon_sym_payable,
      anon_sym_override,
      sym_virtual,
      sym_identifier,
  [8666] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1793), 2,
      anon_sym_LBRACE,
      sym__semicolon,
    ACTIONS(1791), 11,
      anon_sym_returns,
      anon_sym_public,
      anon_sym_internal,
      anon_sym_private,
      anon_sym_external,
      anon_sym_pure,
      anon_sym_view,
      anon_sym_payable,
      anon_sym_override,
      sym_virtual,
      sym_identifier,
  [8687] = 8,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1795), 1,
      sym_solidity_version,
    ACTIONS(1804), 1,
      sym__semicolon,
    STATE(445), 1,
      aux_sym_solidity_pragma_token_repeat1,
    STATE(452), 1,
      sym__pragma_version_constraint,
    STATE(724), 1,
      sym_solidity_version_comparison_operator,
    ACTIONS(1801), 2,
      anon_sym_LT,
      anon_sym_GT,
    ACTIONS(1798), 5,
      anon_sym_LT_EQ,
      anon_sym_CARET,
      anon_sym_GT_EQ,
      anon_sym_TILDE,
      anon_sym_EQ,
  [8717] = 8,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1806), 1,
      sym_solidity_version,
    ACTIONS(1812), 1,
      sym__semicolon,
    STATE(447), 1,
      aux_sym_solidity_pragma_token_repeat1,
    STATE(452), 1,
      sym__pragma_version_constraint,
    STATE(724), 1,
      sym_solidity_version_comparison_operator,
    ACTIONS(1810), 2,
      anon_sym_LT,
      anon_sym_GT,
    ACTIONS(1808), 5,
      anon_sym_LT_EQ,
      anon_sym_CARET,
      anon_sym_GT_EQ,
      anon_sym_TILDE,
      anon_sym_EQ,
  [8747] = 8,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1806), 1,
      sym_solidity_version,
    ACTIONS(1814), 1,
      sym__semicolon,
    STATE(445), 1,
      aux_sym_solidity_pragma_token_repeat1,
    STATE(452), 1,
      sym__pragma_version_constraint,
    STATE(724), 1,
      sym_solidity_version_comparison_operator,
    ACTIONS(1810), 2,
      anon_sym_LT,
      anon_sym_GT,
    ACTIONS(1808), 5,
      anon_sym_LT_EQ,
      anon_sym_CARET,
      anon_sym_GT_EQ,
      anon_sym_TILDE,
      anon_sym_EQ,
  [8777] = 8,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1474), 1,
      anon_sym_LBRACK,
    ACTIONS(1694), 1,
      anon_sym_override,
    ACTIONS(1816), 1,
      sym_identifier,
    STATE(459), 1,
      sym_visibility,
    ACTIONS(1818), 2,
      anon_sym_constant,
      sym_immutable,
    STATE(451), 2,
      sym_override_specifier,
      aux_sym_state_variable_declaration_repeat1,
    ACTIONS(1222), 4,
      anon_sym_public,
      anon_sym_internal,
      anon_sym_private,
      anon_sym_external,
  [8807] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1822), 2,
      anon_sym_LT,
      anon_sym_GT,
    ACTIONS(1820), 9,
      anon_sym_PIPE_PIPE,
      anon_sym_DASH,
      sym_solidity_version,
      anon_sym_LT_EQ,
      anon_sym_CARET,
      anon_sym_GT_EQ,
      anon_sym_TILDE,
      anon_sym_EQ,
      sym__semicolon,
  [8826] = 7,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1824), 1,
      sym_identifier,
    ACTIONS(1832), 1,
      anon_sym_override,
    STATE(459), 1,
      sym_visibility,
    ACTIONS(1826), 2,
      anon_sym_constant,
      sym_immutable,
    STATE(450), 2,
      sym_override_specifier,
      aux_sym_state_variable_declaration_repeat1,
    ACTIONS(1829), 4,
      anon_sym_public,
      anon_sym_internal,
      anon_sym_private,
      anon_sym_external,
  [8853] = 7,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1694), 1,
      anon_sym_override,
    ACTIONS(1835), 1,
      sym_identifier,
    STATE(459), 1,
      sym_visibility,
    ACTIONS(1837), 2,
      anon_sym_constant,
      sym_immutable,
    STATE(450), 2,
      sym_override_specifier,
      aux_sym_state_variable_declaration_repeat1,
    ACTIONS(1222), 4,
      anon_sym_public,
      anon_sym_internal,
      anon_sym_private,
      anon_sym_external,
  [8880] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1839), 2,
      anon_sym_PIPE_PIPE,
      anon_sym_DASH,
    ACTIONS(1843), 2,
      anon_sym_LT,
      anon_sym_GT,
    ACTIONS(1841), 7,
      sym_solidity_version,
      anon_sym_LT_EQ,
      anon_sym_CARET,
      anon_sym_GT_EQ,
      anon_sym_TILDE,
      anon_sym_EQ,
      sym__semicolon,
  [8901] = 8,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(99), 1,
      anon_sym_DQUOTE,
    ACTIONS(101), 1,
      anon_sym_SQUOTE,
    ACTIONS(1845), 1,
      sym_yul_decimal_number,
    ACTIONS(1847), 1,
      sym_yul_hex_number,
    STATE(235), 1,
      sym_string,
    ACTIONS(1849), 2,
      anon_sym_true,
      anon_sym_false,
    STATE(666), 3,
      sym__yul_literal,
      sym_yul_string_literal,
      sym_yul_boolean,
  [8929] = 11,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(99), 1,
      anon_sym_DQUOTE,
    ACTIONS(101), 1,
      anon_sym_SQUOTE,
    ACTIONS(1851), 1,
      sym_identifier,
    ACTIONS(1853), 1,
      anon_sym_STAR,
    ACTIONS(1855), 1,
      anon_sym_LBRACE,
    STATE(558), 1,
      sym_string,
    STATE(683), 1,
      sym__import_clause,
    STATE(742), 1,
      sym__multiple_import,
    STATE(743), 1,
      sym__single_import,
    STATE(745), 1,
      sym__source_import,
  [8963] = 7,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(7), 1,
      sym_identifier,
    ACTIONS(1692), 1,
      anon_sym_LBRACE,
    STATE(144), 1,
      sym_function_body,
    STATE(443), 1,
      sym__identifier_path,
    STATE(456), 2,
      sym_modifier_invocation,
      aux_sym_constructor_definition_repeat1,
    ACTIONS(1857), 3,
      anon_sym_public,
      anon_sym_internal,
      anon_sym_payable,
  [8988] = 7,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(7), 1,
      sym_identifier,
    ACTIONS(1692), 1,
      anon_sym_LBRACE,
    STATE(178), 1,
      sym_function_body,
    STATE(443), 1,
      sym__identifier_path,
    STATE(461), 2,
      sym_modifier_invocation,
      aux_sym_constructor_definition_repeat1,
    ACTIONS(1859), 3,
      anon_sym_public,
      anon_sym_internal,
      anon_sym_payable,
  [9013] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1863), 2,
      anon_sym_LT,
      anon_sym_GT,
    ACTIONS(1861), 7,
      sym_solidity_version,
      anon_sym_LT_EQ,
      anon_sym_CARET,
      anon_sym_GT_EQ,
      anon_sym_TILDE,
      anon_sym_EQ,
      sym__semicolon,
  [9030] = 9,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1692), 1,
      anon_sym_LBRACE,
    ACTIONS(1865), 1,
      anon_sym_LPAREN,
    ACTIONS(1867), 1,
      anon_sym_override,
    ACTIONS(1869), 1,
      sym_virtual,
    ACTIONS(1871), 1,
      sym__semicolon,
    STATE(175), 1,
      sym_function_body,
    STATE(462), 1,
      sym__parameter_list,
    STATE(465), 2,
      sym_override_specifier,
      aux_sym_modifier_definition_repeat1,
  [9059] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1873), 8,
      anon_sym_constant,
      anon_sym_public,
      anon_sym_internal,
      anon_sym_private,
      anon_sym_external,
      sym_immutable,
      anon_sym_override,
      sym_identifier,
  [9073] = 6,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1474), 1,
      anon_sym_LBRACK,
    ACTIONS(1875), 1,
      sym_identifier,
    STATE(567), 1,
      sym__storage_location,
    ACTIONS(1877), 2,
      anon_sym_COMMA,
      anon_sym_RPAREN,
    ACTIONS(1879), 3,
      anon_sym_memory,
      anon_sym_storage,
      anon_sym_calldata,
  [9095] = 6,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1881), 1,
      sym_identifier,
    ACTIONS(1884), 1,
      anon_sym_LBRACE,
    STATE(443), 1,
      sym__identifier_path,
    STATE(461), 2,
      sym_modifier_invocation,
      aux_sym_constructor_definition_repeat1,
    ACTIONS(1886), 3,
      anon_sym_public,
      anon_sym_internal,
      anon_sym_payable,
  [9117] = 7,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1692), 1,
      anon_sym_LBRACE,
    ACTIONS(1867), 1,
      anon_sym_override,
    ACTIONS(1889), 1,
      sym_virtual,
    ACTIONS(1891), 1,
      sym__semicolon,
    STATE(180), 1,
      sym_function_body,
    STATE(463), 2,
      sym_override_specifier,
      aux_sym_modifier_definition_repeat1,
  [9140] = 7,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1692), 1,
      anon_sym_LBRACE,
    ACTIONS(1867), 1,
      anon_sym_override,
    ACTIONS(1893), 1,
      sym_virtual,
    ACTIONS(1895), 1,
      sym__semicolon,
    STATE(186), 1,
      sym_function_body,
    STATE(466), 2,
      sym_override_specifier,
      aux_sym_modifier_definition_repeat1,
  [9163] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1474), 1,
      anon_sym_LBRACK,
    STATE(694), 1,
      sym__storage_location,
    ACTIONS(1897), 2,
      anon_sym_COMMA,
      anon_sym_RPAREN,
    ACTIONS(1899), 3,
      anon_sym_memory,
      anon_sym_storage,
      anon_sym_calldata,
  [9182] = 7,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1692), 1,
      anon_sym_LBRACE,
    ACTIONS(1867), 1,
      anon_sym_override,
    ACTIONS(1891), 1,
      sym__semicolon,
    ACTIONS(1893), 1,
      sym_virtual,
    STATE(180), 1,
      sym_function_body,
    STATE(466), 2,
      sym_override_specifier,
      aux_sym_modifier_definition_repeat1,
  [9205] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1903), 1,
      anon_sym_override,
    ACTIONS(1906), 1,
      sym_virtual,
    ACTIONS(1901), 2,
      anon_sym_LBRACE,
      sym__semicolon,
    STATE(466), 2,
      sym_override_specifier,
      aux_sym_modifier_definition_repeat1,
  [9223] = 7,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(43), 1,
      anon_sym_LBRACE,
    ACTIONS(71), 1,
      sym__unchecked,
    ACTIONS(1865), 1,
      anon_sym_LPAREN,
    ACTIONS(1909), 1,
      sym_identifier,
    STATE(79), 1,
      sym_block_statement,
    STATE(620), 1,
      sym__parameter_list,
  [9245] = 5,
    ACTIONS(1911), 1,
      anon_sym_DQUOTE,
    ACTIONS(1913), 1,
      sym__escape_sequence,
    ACTIONS(1915), 1,
      aux_sym__double_quoted_unicode_char_token1,
    ACTIONS(1917), 1,
      sym_comment,
    STATE(475), 2,
      sym__string_immediate_elt_inside_double_quote,
      aux_sym_string_repeat1,
  [9262] = 5,
    ACTIONS(1911), 1,
      anon_sym_SQUOTE,
    ACTIONS(1917), 1,
      sym_comment,
    ACTIONS(1919), 1,
      sym__escape_sequence,
    ACTIONS(1921), 1,
      aux_sym__single_quoted_unicode_char_token1,
    STATE(478), 2,
      sym__string_immediate_elt_inside_quote,
      aux_sym_string_repeat2,
  [9279] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1474), 1,
      anon_sym_LBRACK,
    ACTIONS(1923), 1,
      sym_identifier,
    ACTIONS(1925), 3,
      anon_sym_memory,
      anon_sym_storage,
      anon_sym_calldata,
  [9294] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1927), 1,
      sym__hex_digit,
    ACTIONS(1932), 1,
      anon_sym__,
    STATE(471), 1,
      aux_sym_hex_string_literal_repeat1,
    ACTIONS(1930), 2,
      anon_sym_DQUOTE,
      anon_sym_SQUOTE,
  [9311] = 5,
    ACTIONS(1917), 1,
      sym_comment,
    ACTIONS(1935), 1,
      anon_sym_DQUOTE,
    ACTIONS(1937), 1,
      sym__escape_sequence,
    ACTIONS(1939), 1,
      aux_sym__double_quoted_unicode_char_token1,
    STATE(482), 2,
      sym__string_immediate_elt_inside_double_quote,
      aux_sym_string_repeat1,
  [9328] = 5,
    ACTIONS(1917), 1,
      sym_comment,
    ACTIONS(1935), 1,
      anon_sym_SQUOTE,
    ACTIONS(1941), 1,
      sym__escape_sequence,
    ACTIONS(1943), 1,
      aux_sym__single_quoted_unicode_char_token1,
    STATE(481), 2,
      sym__string_immediate_elt_inside_quote,
      aux_sym_string_repeat2,
  [9345] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1474), 1,
      anon_sym_LBRACK,
    ACTIONS(1945), 1,
      sym_identifier,
    ACTIONS(1949), 1,
      anon_sym_indexed,
    ACTIONS(1947), 2,
      anon_sym_COMMA,
      anon_sym_RPAREN,
  [9362] = 5,
    ACTIONS(1917), 1,
      sym_comment,
    ACTIONS(1951), 1,
      anon_sym_DQUOTE,
    ACTIONS(1953), 1,
      sym__escape_sequence,
    ACTIONS(1955), 1,
      aux_sym__double_quoted_unicode_char_token1,
    STATE(479), 2,
      sym__string_immediate_elt_inside_double_quote,
      aux_sym_string_repeat1,
  [9379] = 5,
    ACTIONS(1917), 1,
      sym_comment,
    ACTIONS(1957), 1,
      anon_sym_SQUOTE,
    ACTIONS(1959), 1,
      sym__escape_sequence,
    ACTIONS(1962), 1,
      aux_sym__single_quoted_unicode_char_token1,
    STATE(476), 2,
      sym__string_immediate_elt_inside_quote,
      aux_sym_string_repeat2,
  [9396] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1965), 1,
      sym_identifier,
    ACTIONS(1967), 1,
      anon_sym_solidity,
    STATE(446), 1,
      sym__solidity,
    STATE(752), 2,
      sym_solidity_pragma_token,
      sym_any_pragma_token,
  [9413] = 5,
    ACTIONS(1917), 1,
      sym_comment,
    ACTIONS(1951), 1,
      anon_sym_SQUOTE,
    ACTIONS(1969), 1,
      sym__escape_sequence,
    ACTIONS(1971), 1,
      aux_sym__single_quoted_unicode_char_token1,
    STATE(476), 2,
      sym__string_immediate_elt_inside_quote,
      aux_sym_string_repeat2,
  [9430] = 5,
    ACTIONS(1917), 1,
      sym_comment,
    ACTIONS(1973), 1,
      anon_sym_DQUOTE,
    ACTIONS(1975), 1,
      sym__escape_sequence,
    ACTIONS(1978), 1,
      aux_sym__double_quoted_unicode_char_token1,
    STATE(479), 2,
      sym__string_immediate_elt_inside_double_quote,
      aux_sym_string_repeat1,
  [9447] = 6,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1981), 1,
      sym_identifier,
    ACTIONS(1983), 1,
      anon_sym_LBRACE,
    STATE(308), 1,
      sym__identifier_path,
    STATE(511), 1,
      sym_user_defined_type,
    STATE(686), 1,
      sym_inheritance_specifier,
  [9466] = 5,
    ACTIONS(1917), 1,
      sym_comment,
    ACTIONS(1969), 1,
      sym__escape_sequence,
    ACTIONS(1971), 1,
      aux_sym__single_quoted_unicode_char_token1,
    ACTIONS(1985), 1,
      anon_sym_SQUOTE,
    STATE(476), 2,
      sym__string_immediate_elt_inside_quote,
      aux_sym_string_repeat2,
  [9483] = 5,
    ACTIONS(1917), 1,
      sym_comment,
    ACTIONS(1953), 1,
      sym__escape_sequence,
    ACTIONS(1955), 1,
      aux_sym__double_quoted_unicode_char_token1,
    ACTIONS(1985), 1,
      anon_sym_DQUOTE,
    STATE(479), 2,
      sym__string_immediate_elt_inside_double_quote,
      aux_sym_string_repeat1,
  [9500] = 6,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1981), 1,
      sym_identifier,
    ACTIONS(1987), 1,
      anon_sym_LBRACE,
    STATE(308), 1,
      sym__identifier_path,
    STATE(511), 1,
      sym_user_defined_type,
    STATE(686), 1,
      sym_inheritance_specifier,
  [9519] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1989), 1,
      sym_identifier,
    ACTIONS(1991), 1,
      anon_sym_COMMA,
    ACTIONS(1993), 1,
      anon_sym_RPAREN,
    STATE(547), 1,
      aux_sym_variable_declaration_tuple_repeat2,
  [9535] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1995), 1,
      anon_sym_LBRACE,
    ACTIONS(1997), 1,
      anon_sym_is,
    STATE(142), 1,
      sym_contract_body,
    STATE(656), 1,
      sym__class_heritage,
  [9551] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1999), 4,
      anon_sym_EQ,
      anon_sym_COMMA,
      anon_sym_RPAREN,
      sym__semicolon,
  [9561] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(813), 1,
      anon_sym_LBRACE,
    ACTIONS(2001), 1,
      anon_sym_COMMA,
    STATE(261), 1,
      sym_yul_block,
    STATE(489), 1,
      aux_sym_yul_variable_declaration_repeat1,
  [9577] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(813), 1,
      anon_sym_LBRACE,
    ACTIONS(2003), 1,
      sym_identifier,
    STATE(243), 1,
      sym_yul_identifier,
    STATE(264), 1,
      sym_yul_block,
  [9593] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(813), 1,
      anon_sym_LBRACE,
    ACTIONS(2005), 1,
      anon_sym_COMMA,
    STATE(238), 1,
      aux_sym_yul_variable_declaration_repeat1,
    STATE(264), 1,
      sym_yul_block,
  [9609] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(813), 1,
      anon_sym_LBRACE,
    ACTIONS(2005), 1,
      anon_sym_COMMA,
    STATE(264), 1,
      sym_yul_block,
    STATE(494), 1,
      aux_sym_yul_variable_declaration_repeat1,
  [9625] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1995), 1,
      anon_sym_LBRACE,
    ACTIONS(1997), 1,
      anon_sym_is,
    STATE(199), 1,
      sym_contract_body,
    STATE(675), 1,
      sym__class_heritage,
  [9641] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(813), 1,
      anon_sym_LBRACE,
    ACTIONS(2003), 1,
      sym_identifier,
    STATE(243), 1,
      sym_yul_identifier,
    STATE(265), 1,
      sym_yul_block,
  [9657] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(813), 1,
      anon_sym_LBRACE,
    ACTIONS(2007), 1,
      anon_sym_COMMA,
    STATE(265), 1,
      sym_yul_block,
    STATE(496), 1,
      aux_sym_yul_variable_declaration_repeat1,
  [9673] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(813), 1,
      anon_sym_LBRACE,
    ACTIONS(2007), 1,
      anon_sym_COMMA,
    STATE(238), 1,
      aux_sym_yul_variable_declaration_repeat1,
    STATE(265), 1,
      sym_yul_block,
  [9689] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(813), 1,
      anon_sym_LBRACE,
    ACTIONS(2003), 1,
      sym_identifier,
    STATE(243), 1,
      sym_yul_identifier,
    STATE(253), 1,
      sym_yul_block,
  [9705] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(813), 1,
      anon_sym_LBRACE,
    ACTIONS(2009), 1,
      anon_sym_COMMA,
    STATE(238), 1,
      aux_sym_yul_variable_declaration_repeat1,
    STATE(253), 1,
      sym_yul_block,
  [9721] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(813), 1,
      anon_sym_LBRACE,
    ACTIONS(2009), 1,
      anon_sym_COMMA,
    STATE(253), 1,
      sym_yul_block,
    STATE(501), 1,
      aux_sym_yul_variable_declaration_repeat1,
  [9737] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1995), 1,
      anon_sym_LBRACE,
    ACTIONS(1997), 1,
      anon_sym_is,
    STATE(201), 1,
      sym_contract_body,
    STATE(676), 1,
      sym__class_heritage,
  [9753] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(813), 1,
      anon_sym_LBRACE,
    ACTIONS(2003), 1,
      sym_identifier,
    STATE(243), 1,
      sym_yul_identifier,
    STATE(267), 1,
      sym_yul_block,
  [9769] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2011), 1,
      sym__hex_digit,
    ACTIONS(2013), 1,
      anon_sym__,
    ACTIONS(2015), 1,
      anon_sym_SQUOTE,
    STATE(471), 1,
      aux_sym_hex_string_literal_repeat1,
  [9785] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(813), 1,
      anon_sym_LBRACE,
    ACTIONS(2017), 1,
      anon_sym_COMMA,
    STATE(238), 1,
      aux_sym_yul_variable_declaration_repeat1,
    STATE(267), 1,
      sym_yul_block,
  [9801] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(813), 1,
      anon_sym_LBRACE,
    ACTIONS(2003), 1,
      sym_identifier,
    STATE(243), 1,
      sym_yul_identifier,
    STATE(268), 1,
      sym_yul_block,
  [9817] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2021), 1,
      anon_sym_as,
    STATE(635), 1,
      sym__import_alias,
    ACTIONS(2019), 2,
      anon_sym_COMMA,
      anon_sym_RBRACE,
  [9831] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2023), 4,
      anon_sym_EQ,
      anon_sym_COMMA,
      anon_sym_RPAREN,
      sym__semicolon,
  [9841] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1981), 1,
      sym_identifier,
    ACTIONS(2025), 1,
      anon_sym_RPAREN,
    STATE(308), 1,
      sym__identifier_path,
    STATE(692), 1,
      sym_user_defined_type,
  [9857] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1981), 1,
      sym_identifier,
    STATE(308), 1,
      sym__identifier_path,
    STATE(511), 1,
      sym_user_defined_type,
    STATE(579), 1,
      sym_inheritance_specifier,
  [9873] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2027), 4,
      anon_sym_from,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      sym__semicolon,
  [9883] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1474), 1,
      anon_sym_LBRACK,
    ACTIONS(2029), 1,
      sym_identifier,
    ACTIONS(2031), 2,
      anon_sym_COMMA,
      anon_sym_RPAREN,
  [9897] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1930), 4,
      sym__hex_digit,
      anon_sym_DQUOTE,
      anon_sym__,
      anon_sym_SQUOTE,
  [9907] = 4,
    ACTIONS(1917), 1,
      sym_comment,
    ACTIONS(2033), 1,
      anon_sym_SQUOTE,
    ACTIONS(2035), 1,
      aux_sym__single_quoted_unicode_char_token1,
    STATE(512), 2,
      sym__single_quoted_unicode_char,
      aux_sym_unicode_string_literal_repeat2,
  [9921] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1440), 1,
      anon_sym_LPAREN,
    STATE(627), 1,
      sym__call_arguments,
    ACTIONS(2037), 2,
      anon_sym_LBRACE,
      anon_sym_COMMA,
  [9935] = 4,
    ACTIONS(1917), 1,
      sym_comment,
    ACTIONS(2039), 1,
      anon_sym_SQUOTE,
    ACTIONS(2041), 1,
      aux_sym__single_quoted_unicode_char_token1,
    STATE(518), 2,
      sym__single_quoted_unicode_char,
      aux_sym_unicode_string_literal_repeat2,
  [9949] = 4,
    ACTIONS(1917), 1,
      sym_comment,
    ACTIONS(2039), 1,
      anon_sym_DQUOTE,
    ACTIONS(2043), 1,
      aux_sym__double_quoted_unicode_char_token1,
    STATE(519), 2,
      sym__double_quoted_unicode_char,
      aux_sym_unicode_string_literal_repeat1,
  [9963] = 4,
    ACTIONS(1917), 1,
      sym_comment,
    ACTIONS(2033), 1,
      anon_sym_DQUOTE,
    ACTIONS(2045), 1,
      aux_sym__double_quoted_unicode_char_token1,
    STATE(513), 2,
      sym__double_quoted_unicode_char,
      aux_sym_unicode_string_literal_repeat1,
  [9977] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1981), 1,
      sym_identifier,
    STATE(308), 1,
      sym__identifier_path,
    STATE(511), 1,
      sym_user_defined_type,
    STATE(686), 1,
      sym_inheritance_specifier,
  [9993] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2013), 1,
      anon_sym__,
    ACTIONS(2047), 1,
      sym__hex_digit,
    ACTIONS(2049), 1,
      anon_sym_SQUOTE,
    STATE(500), 1,
      aux_sym_hex_string_literal_repeat1,
  [10009] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2013), 1,
      anon_sym__,
    ACTIONS(2049), 1,
      anon_sym_DQUOTE,
    ACTIONS(2051), 1,
      sym__hex_digit,
    STATE(521), 1,
      aux_sym_hex_string_literal_repeat1,
  [10025] = 4,
    ACTIONS(1917), 1,
      sym_comment,
    ACTIONS(2053), 1,
      anon_sym_SQUOTE,
    ACTIONS(2055), 1,
      aux_sym__single_quoted_unicode_char_token1,
    STATE(518), 2,
      sym__single_quoted_unicode_char,
      aux_sym_unicode_string_literal_repeat2,
  [10039] = 4,
    ACTIONS(1917), 1,
      sym_comment,
    ACTIONS(2058), 1,
      anon_sym_DQUOTE,
    ACTIONS(2060), 1,
      aux_sym__double_quoted_unicode_char_token1,
    STATE(519), 2,
      sym__double_quoted_unicode_char,
      aux_sym_unicode_string_literal_repeat1,
  [10053] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1981), 1,
      sym_identifier,
    ACTIONS(2063), 1,
      anon_sym_RPAREN,
    STATE(308), 1,
      sym__identifier_path,
    STATE(692), 1,
      sym_user_defined_type,
  [10069] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2011), 1,
      sym__hex_digit,
    ACTIONS(2013), 1,
      anon_sym__,
    ACTIONS(2015), 1,
      anon_sym_DQUOTE,
    STATE(471), 1,
      aux_sym_hex_string_literal_repeat1,
  [10085] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2065), 1,
      anon_sym_COMMA,
    ACTIONS(2067), 1,
      anon_sym_RPAREN,
    STATE(538), 1,
      aux_sym__event_parameter_list_repeat1,
  [10098] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2069), 1,
      sym_identifier,
    ACTIONS(2071), 1,
      anon_sym_RBRACE,
    STATE(670), 1,
      sym__import_declaration,
  [10111] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1700), 1,
      anon_sym_LBRACE,
    ACTIONS(2073), 1,
      sym__semicolon,
    STATE(194), 1,
      sym_function_body,
  [10124] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2075), 1,
      anon_sym_COMMA,
    ACTIONS(2078), 1,
      anon_sym_RPAREN,
    STATE(525), 1,
      aux_sym__return_parameters_repeat1,
  [10137] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2080), 1,
      sym_identifier,
    ACTIONS(2082), 1,
      anon_sym_RBRACE,
    STATE(677), 1,
      sym_call_struct_argument,
  [10150] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(589), 1,
      anon_sym_RPAREN,
    ACTIONS(2084), 1,
      anon_sym_COMMA,
    STATE(562), 1,
      aux_sym_error_declaration_repeat1,
  [10163] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2082), 1,
      anon_sym_RBRACE,
    ACTIONS(2086), 1,
      anon_sym_COMMA,
    STATE(598), 1,
      aux_sym_call_argument_repeat1,
  [10176] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2088), 1,
      anon_sym_COMMA,
    ACTIONS(2090), 1,
      anon_sym_RPAREN,
    STATE(527), 1,
      aux_sym_error_declaration_repeat1,
  [10189] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1692), 1,
      anon_sym_LBRACE,
    ACTIONS(2092), 1,
      sym__semicolon,
    STATE(146), 1,
      sym_function_body,
  [10202] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2094), 1,
      anon_sym_COMMA,
    ACTIONS(2097), 1,
      anon_sym_RPAREN,
    STATE(531), 1,
      aux_sym__call_arguments_repeat1,
  [10215] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2099), 1,
      anon_sym_COMMA,
    ACTIONS(2101), 1,
      anon_sym_RBRACE,
    STATE(564), 1,
      aux_sym_enum_declaration_repeat1,
  [10228] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2103), 1,
      anon_sym_COMMA,
    ACTIONS(2105), 1,
      anon_sym_RPAREN,
    STATE(590), 1,
      aux_sym__return_parameters_repeat1,
  [10241] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2107), 1,
      sym_identifier,
    ACTIONS(2109), 1,
      anon_sym_RBRACE,
    STATE(638), 1,
      sym_struct_field_assignment,
  [10254] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2111), 1,
      anon_sym_COMMA,
    ACTIONS(2114), 1,
      anon_sym_RBRACE,
    STATE(535), 1,
      aux_sym_struct_expression_repeat1,
  [10267] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1692), 1,
      anon_sym_LBRACE,
    ACTIONS(2116), 1,
      sym__semicolon,
    STATE(162), 1,
      sym_function_body,
  [10280] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2118), 1,
      anon_sym_COMMA,
    ACTIONS(2120), 1,
      anon_sym_RBRACE,
    STATE(532), 1,
      aux_sym_enum_declaration_repeat1,
  [10293] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(579), 1,
      anon_sym_RPAREN,
    ACTIONS(2122), 1,
      anon_sym_COMMA,
    STATE(607), 1,
      aux_sym__event_parameter_list_repeat1,
  [10306] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2124), 1,
      sym_identifier,
    ACTIONS(2126), 2,
      anon_sym_COMMA,
      anon_sym_RPAREN,
  [10317] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(268), 1,
      anon_sym_RPAREN,
    ACTIONS(2128), 1,
      anon_sym_COMMA,
    STATE(542), 1,
      aux_sym_tuple_expression_repeat1,
  [10330] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2130), 1,
      anon_sym_COMMA,
    ACTIONS(2132), 1,
      anon_sym_RBRACE,
    STATE(571), 1,
      aux_sym__multiple_import_repeat1,
  [10343] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1634), 1,
      anon_sym_RPAREN,
    ACTIONS(2134), 1,
      anon_sym_COMMA,
    STATE(542), 1,
      aux_sym_tuple_expression_repeat1,
  [10356] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2137), 1,
      anon_sym_catch,
    STATE(71), 2,
      sym_catch_clause,
      aux_sym_try_statement_repeat1,
  [10367] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2080), 1,
      sym_identifier,
    ACTIONS(2139), 1,
      anon_sym_RBRACE,
    STATE(604), 1,
      sym_call_struct_argument,
  [10380] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2107), 1,
      sym_identifier,
    ACTIONS(2141), 1,
      anon_sym_RBRACE,
    STATE(553), 1,
      sym_struct_field_assignment,
  [10393] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1865), 1,
      anon_sym_LPAREN,
    ACTIONS(2143), 1,
      sym_identifier,
    STATE(300), 1,
      sym__parameter_list,
  [10406] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(540), 1,
      anon_sym_RPAREN,
    ACTIONS(2145), 1,
      anon_sym_COMMA,
    STATE(578), 1,
      aux_sym_variable_declaration_tuple_repeat2,
  [10419] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2147), 1,
      anon_sym_COMMA,
    ACTIONS(2149), 1,
      anon_sym_RPAREN,
    STATE(606), 1,
      aux_sym__call_arguments_repeat1,
  [10432] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(260), 1,
      anon_sym_RPAREN,
    ACTIONS(1626), 1,
      anon_sym_COMMA,
    STATE(542), 1,
      aux_sym_tuple_expression_repeat1,
  [10445] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(540), 1,
      anon_sym_RPAREN,
    ACTIONS(2145), 1,
      anon_sym_COMMA,
    STATE(577), 1,
      aux_sym_variable_declaration_tuple_repeat2,
  [10458] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(540), 1,
      anon_sym_RPAREN,
    ACTIONS(2151), 1,
      sym_identifier,
    ACTIONS(2153), 1,
      anon_sym_COMMA,
  [10471] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(276), 1,
      anon_sym_RBRACK,
    ACTIONS(2155), 1,
      anon_sym_COMMA,
    STATE(609), 1,
      aux_sym_inline_array_expression_repeat1,
  [10484] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2157), 1,
      anon_sym_COMMA,
    ACTIONS(2159), 1,
      anon_sym_RBRACE,
    STATE(621), 1,
      aux_sym_struct_expression_repeat1,
  [10497] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2021), 1,
      anon_sym_as,
    ACTIONS(2161), 1,
      anon_sym_from,
    STATE(727), 1,
      sym__import_alias,
  [10510] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2069), 1,
      sym_identifier,
    ACTIONS(2163), 1,
      anon_sym_RBRACE,
    STATE(587), 1,
      sym__import_declaration,
  [10523] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2069), 1,
      sym_identifier,
    ACTIONS(2165), 1,
      anon_sym_RBRACE,
    STATE(670), 1,
      sym__import_declaration,
  [10536] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2021), 1,
      anon_sym_as,
    ACTIONS(2167), 1,
      anon_sym_from,
    STATE(732), 1,
      sym__import_alias,
  [10549] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2021), 1,
      anon_sym_as,
    ACTIONS(2169), 1,
      sym__semicolon,
    STATE(744), 1,
      sym__import_alias,
  [10562] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2171), 1,
      anon_sym_default,
    ACTIONS(2173), 1,
      anon_sym_case,
    STATE(242), 1,
      aux_sym_yul_switch_statement_repeat1,
  [10575] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2175), 1,
      anon_sym_LBRACE,
    ACTIONS(2177), 1,
      anon_sym_COMMA,
    STATE(560), 1,
      aux_sym__class_heritage_repeat1,
  [10588] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1700), 1,
      anon_sym_LBRACE,
    ACTIONS(2180), 1,
      sym__semicolon,
    STATE(176), 1,
      sym_function_body,
  [10601] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2182), 1,
      anon_sym_COMMA,
    ACTIONS(2185), 1,
      anon_sym_RPAREN,
    STATE(562), 1,
      aux_sym_error_declaration_repeat1,
  [10614] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2025), 1,
      anon_sym_RPAREN,
    ACTIONS(2187), 1,
      anon_sym_COMMA,
    STATE(591), 1,
      aux_sym_override_specifier_repeat1,
  [10627] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2189), 1,
      anon_sym_COMMA,
    ACTIONS(2192), 1,
      anon_sym_RBRACE,
    STATE(564), 1,
      aux_sym_enum_declaration_repeat1,
  [10640] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(573), 1,
      anon_sym_RPAREN,
    ACTIONS(2194), 1,
      anon_sym_COMMA,
    STATE(614), 1,
      aux_sym__parameter_list_repeat1,
  [10653] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1993), 1,
      anon_sym_RPAREN,
    ACTIONS(2196), 1,
      anon_sym_COMMA,
    STATE(588), 1,
      aux_sym_variable_declaration_tuple_repeat1,
  [10666] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2198), 1,
      sym_identifier,
    ACTIONS(2200), 2,
      anon_sym_COMMA,
      anon_sym_RPAREN,
  [10677] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1993), 1,
      anon_sym_RPAREN,
    ACTIONS(2196), 1,
      anon_sym_COMMA,
    STATE(584), 1,
      aux_sym_variable_declaration_tuple_repeat1,
  [10690] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2202), 1,
      anon_sym_COMMA,
    ACTIONS(2204), 1,
      anon_sym_RBRACE,
    STATE(613), 1,
      aux_sym_enum_declaration_repeat1,
  [10703] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(813), 1,
      anon_sym_LBRACE,
    ACTIONS(2206), 1,
      anon_sym_DASH_GT,
    STATE(264), 1,
      sym_yul_block,
  [10716] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2208), 1,
      anon_sym_COMMA,
    ACTIONS(2211), 1,
      anon_sym_RBRACE,
    STATE(571), 1,
      aux_sym__multiple_import_repeat1,
  [10729] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2213), 1,
      anon_sym_COMMA,
    ACTIONS(2215), 1,
      anon_sym_RPAREN,
    STATE(617), 1,
      aux_sym_error_declaration_repeat1,
  [10742] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2003), 1,
      sym_identifier,
    ACTIONS(2217), 1,
      anon_sym_RPAREN,
    STATE(243), 1,
      sym_yul_identifier,
  [10755] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2003), 1,
      sym_identifier,
    ACTIONS(2219), 1,
      anon_sym_LPAREN,
    STATE(239), 1,
      sym_yul_identifier,
  [10768] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(813), 1,
      anon_sym_LBRACE,
    ACTIONS(2221), 1,
      anon_sym_DASH_GT,
    STATE(261), 1,
      sym_yul_block,
  [10781] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(544), 1,
      anon_sym_RPAREN,
    ACTIONS(2151), 1,
      sym_identifier,
    ACTIONS(2153), 1,
      anon_sym_COMMA,
  [10794] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(544), 1,
      anon_sym_RPAREN,
    ACTIONS(2223), 1,
      anon_sym_COMMA,
    STATE(578), 1,
      aux_sym_variable_declaration_tuple_repeat2,
  [10807] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2225), 1,
      anon_sym_COMMA,
    ACTIONS(2228), 1,
      anon_sym_RPAREN,
    STATE(578), 1,
      aux_sym_variable_declaration_tuple_repeat2,
  [10820] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2230), 1,
      anon_sym_LBRACE,
    ACTIONS(2232), 1,
      anon_sym_COMMA,
    STATE(603), 1,
      aux_sym__class_heritage_repeat1,
  [10833] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2234), 1,
      anon_sym_COMMA,
    ACTIONS(2236), 1,
      anon_sym_RPAREN,
    STATE(563), 1,
      aux_sym_override_specifier_repeat1,
  [10846] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2238), 1,
      anon_sym_COMMA,
    ACTIONS(2241), 1,
      anon_sym_RPAREN,
    STATE(581), 1,
      aux_sym_yul_function_call_repeat1,
  [10859] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2243), 1,
      anon_sym_COMMA,
    ACTIONS(2245), 1,
      anon_sym_RPAREN,
    STATE(238), 1,
      aux_sym_yul_variable_declaration_repeat1,
  [10872] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(43), 1,
      anon_sym_LBRACE,
    ACTIONS(1622), 1,
      sym__unchecked,
    STATE(622), 1,
      sym_block_statement,
  [10885] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2247), 1,
      anon_sym_COMMA,
    ACTIONS(2250), 1,
      anon_sym_RPAREN,
    STATE(584), 1,
      aux_sym_variable_declaration_tuple_repeat1,
  [10898] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(813), 1,
      anon_sym_LBRACE,
    ACTIONS(2252), 1,
      anon_sym_DASH_GT,
    STATE(273), 1,
      sym_yul_block,
  [10911] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2003), 1,
      sym_identifier,
    ACTIONS(2245), 1,
      anon_sym_RPAREN,
    STATE(243), 1,
      sym_yul_identifier,
  [10924] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2254), 1,
      anon_sym_COMMA,
    ACTIONS(2256), 1,
      anon_sym_RBRACE,
    STATE(541), 1,
      aux_sym__multiple_import_repeat1,
  [10937] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(540), 1,
      anon_sym_RPAREN,
    ACTIONS(2258), 1,
      anon_sym_COMMA,
    STATE(584), 1,
      aux_sym_variable_declaration_tuple_repeat1,
  [10950] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2003), 1,
      sym_identifier,
    ACTIONS(2260), 1,
      anon_sym_RPAREN,
    STATE(243), 1,
      sym_yul_identifier,
  [10963] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2262), 1,
      anon_sym_COMMA,
    ACTIONS(2264), 1,
      anon_sym_RPAREN,
    STATE(525), 1,
      aux_sym__return_parameters_repeat1,
  [10976] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2266), 1,
      anon_sym_COMMA,
    ACTIONS(2269), 1,
      anon_sym_RPAREN,
    STATE(591), 1,
      aux_sym_override_specifier_repeat1,
  [10989] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(99), 1,
      anon_sym_DQUOTE,
    ACTIONS(101), 1,
      anon_sym_SQUOTE,
    STATE(791), 1,
      sym_string,
  [11002] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1865), 1,
      anon_sym_LPAREN,
    ACTIONS(2271), 1,
      sym_identifier,
    STATE(429), 1,
      sym__parameter_list,
  [11015] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(43), 1,
      anon_sym_LBRACE,
    ACTIONS(1622), 1,
      sym__unchecked,
    STATE(82), 1,
      sym_block_statement,
  [11028] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2003), 1,
      sym_identifier,
    STATE(224), 1,
      sym_yul_identifier,
    STATE(240), 1,
      sym_yul_path,
  [11041] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1077), 1,
      anon_sym_RPAREN,
    ACTIONS(2273), 1,
      anon_sym_COMMA,
    STATE(581), 1,
      aux_sym_yul_function_call_repeat1,
  [11054] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2080), 1,
      sym_identifier,
    ACTIONS(2275), 1,
      anon_sym_RBRACE,
    STATE(677), 1,
      sym_call_struct_argument,
  [11067] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2277), 1,
      anon_sym_COMMA,
    ACTIONS(2280), 1,
      anon_sym_RBRACE,
    STATE(598), 1,
      aux_sym_call_argument_repeat1,
  [11080] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2282), 1,
      anon_sym_COMMA,
    ACTIONS(2284), 1,
      anon_sym_RPAREN,
    STATE(582), 1,
      aux_sym_yul_variable_declaration_repeat1,
  [11093] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1981), 1,
      sym_identifier,
    STATE(308), 1,
      sym__identifier_path,
    STATE(710), 1,
      sym_user_defined_type,
  [11106] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(813), 1,
      anon_sym_LBRACE,
    ACTIONS(2286), 1,
      anon_sym_DASH_GT,
    STATE(257), 1,
      sym_yul_block,
  [11119] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1981), 1,
      sym_identifier,
    STATE(308), 1,
      sym__identifier_path,
    STATE(580), 1,
      sym_user_defined_type,
  [11132] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1987), 1,
      anon_sym_LBRACE,
    ACTIONS(2288), 1,
      anon_sym_COMMA,
    STATE(560), 1,
      aux_sym__class_heritage_repeat1,
  [11145] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2290), 1,
      anon_sym_COMMA,
    ACTIONS(2292), 1,
      anon_sym_RBRACE,
    STATE(528), 1,
      aux_sym_call_argument_repeat1,
  [11158] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2294), 1,
      anon_sym_COMMA,
    ACTIONS(2296), 1,
      anon_sym_RPAREN,
    STATE(238), 1,
      aux_sym_yul_variable_declaration_repeat1,
  [11171] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(252), 1,
      anon_sym_RPAREN,
    ACTIONS(2298), 1,
      anon_sym_COMMA,
    STATE(531), 1,
      aux_sym__call_arguments_repeat1,
  [11184] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2300), 1,
      anon_sym_COMMA,
    ACTIONS(2303), 1,
      anon_sym_RPAREN,
    STATE(607), 1,
      aux_sym__event_parameter_list_repeat1,
  [11197] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2003), 1,
      sym_identifier,
    ACTIONS(2296), 1,
      anon_sym_RPAREN,
    STATE(243), 1,
      sym_yul_identifier,
  [11210] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1636), 1,
      anon_sym_RBRACK,
    ACTIONS(2305), 1,
      anon_sym_COMMA,
    STATE(609), 1,
      aux_sym_inline_array_expression_repeat1,
  [11223] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2308), 1,
      anon_sym_COMMA,
    ACTIONS(2310), 1,
      anon_sym_RPAREN,
    STATE(596), 1,
      aux_sym_yul_function_call_repeat1,
  [11236] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2107), 1,
      sym_identifier,
    ACTIONS(2312), 1,
      anon_sym_RBRACE,
    STATE(638), 1,
      sym_struct_field_assignment,
  [11249] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1981), 1,
      sym_identifier,
    STATE(308), 1,
      sym__identifier_path,
    STATE(692), 1,
      sym_user_defined_type,
  [11262] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2314), 1,
      anon_sym_COMMA,
    ACTIONS(2316), 1,
      anon_sym_RBRACE,
    STATE(564), 1,
      aux_sym_enum_declaration_repeat1,
  [11275] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2318), 1,
      anon_sym_COMMA,
    ACTIONS(2321), 1,
      anon_sym_RPAREN,
    STATE(614), 1,
      aux_sym__parameter_list_repeat1,
  [11288] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2323), 1,
      anon_sym_COMMA,
    ACTIONS(2325), 1,
      anon_sym_RPAREN,
    STATE(605), 1,
      aux_sym_yul_variable_declaration_repeat1,
  [11301] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2151), 1,
      sym_identifier,
    ACTIONS(2153), 1,
      anon_sym_COMMA,
    ACTIONS(2327), 1,
      anon_sym_RPAREN,
  [11314] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(577), 1,
      anon_sym_RPAREN,
    ACTIONS(2329), 1,
      anon_sym_COMMA,
    STATE(562), 1,
      aux_sym_error_declaration_repeat1,
  [11327] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2151), 1,
      sym_identifier,
    ACTIONS(2153), 2,
      anon_sym_COMMA,
      anon_sym_RPAREN,
  [11338] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2331), 1,
      anon_sym_COMMA,
    ACTIONS(2333), 1,
      anon_sym_RPAREN,
    STATE(565), 1,
      aux_sym__parameter_list_repeat1,
  [11351] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(43), 1,
      anon_sym_LBRACE,
    ACTIONS(1622), 1,
      sym__unchecked,
    STATE(80), 1,
      sym_block_statement,
  [11364] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2312), 1,
      anon_sym_RBRACE,
    ACTIONS(2335), 1,
      anon_sym_COMMA,
    STATE(535), 1,
      aux_sym_struct_expression_repeat1,
  [11377] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2137), 1,
      anon_sym_catch,
    STATE(69), 2,
      sym_catch_clause,
      aux_sym_try_statement_repeat1,
  [11388] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2003), 1,
      sym_identifier,
    ACTIONS(2337), 1,
      anon_sym_RPAREN,
    STATE(599), 1,
      sym_yul_identifier,
  [11401] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2339), 1,
      sym_identifier,
    ACTIONS(2341), 1,
      anon_sym_RBRACE,
  [11411] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2003), 1,
      sym_identifier,
    STATE(490), 1,
      sym_yul_identifier,
  [11421] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2343), 2,
      anon_sym_COMMA,
      anon_sym_RPAREN,
  [11429] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2345), 2,
      anon_sym_LBRACE,
      anon_sym_COMMA,
  [11437] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2097), 2,
      anon_sym_COMMA,
      anon_sym_RPAREN,
  [11445] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(813), 1,
      anon_sym_LBRACE,
    STATE(655), 1,
      sym_yul_block,
  [11455] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2347), 1,
      sym__hex_digit,
    ACTIONS(2349), 1,
      anon_sym_SQUOTE,
  [11465] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2351), 2,
      anon_sym_COMMA,
      anon_sym_RPAREN,
  [11473] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(813), 1,
      anon_sym_LBRACE,
    STATE(270), 1,
      sym_yul_block,
  [11483] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1865), 1,
      anon_sym_LPAREN,
    STATE(433), 1,
      sym__parameter_list,
  [11493] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2339), 1,
      sym_identifier,
    ACTIONS(2353), 1,
      anon_sym_RBRACE,
  [11503] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2355), 2,
      anon_sym_COMMA,
      anon_sym_RBRACE,
  [11511] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2316), 1,
      anon_sym_RBRACE,
    ACTIONS(2339), 1,
      sym_identifier,
  [11521] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2349), 1,
      anon_sym_DQUOTE,
    ACTIONS(2357), 1,
      sym__hex_digit,
  [11531] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2114), 2,
      anon_sym_COMMA,
      anon_sym_RBRACE,
  [11539] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2101), 1,
      anon_sym_RBRACE,
    ACTIONS(2339), 1,
      sym_identifier,
  [11549] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2359), 2,
      anon_sym_COMMA,
      anon_sym_RPAREN,
  [11557] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2361), 2,
      anon_sym_anonymous,
      sym__semicolon,
  [11565] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2363), 2,
      anon_sym_LBRACE,
      sym__semicolon,
  [11573] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2365), 2,
      anon_sym_anonymous,
      sym__semicolon,
  [11581] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2321), 2,
      anon_sym_COMMA,
      anon_sym_RPAREN,
  [11589] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2367), 1,
      anon_sym_DQUOTE,
    ACTIONS(2369), 1,
      anon_sym_SQUOTE,
  [11599] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1865), 1,
      anon_sym_LPAREN,
    STATE(594), 1,
      sym__parameter_list,
  [11609] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2371), 1,
      anon_sym_DQUOTE,
    ACTIONS(2373), 1,
      anon_sym_SQUOTE,
  [11619] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2375), 2,
      anon_sym_COMMA,
      anon_sym_RPAREN,
  [11627] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2377), 2,
      anon_sym_COMMA,
      anon_sym_RPAREN,
  [11635] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2080), 1,
      sym_identifier,
    STATE(677), 1,
      sym_call_struct_argument,
  [11645] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2379), 2,
      anon_sym_anonymous,
      sym__semicolon,
  [11653] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1474), 1,
      anon_sym_LBRACK,
    ACTIONS(2381), 1,
      anon_sym_RPAREN,
  [11663] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1440), 1,
      anon_sym_LPAREN,
    STATE(373), 1,
      sym__call_arguments,
  [11673] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2383), 2,
      anon_sym_anonymous,
      sym__semicolon,
  [11681] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(813), 1,
      anon_sym_LBRACE,
    STATE(279), 1,
      sym_yul_block,
  [11691] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1995), 1,
      anon_sym_LBRACE,
    STATE(145), 1,
      sym_contract_body,
  [11701] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2385), 2,
      anon_sym_COMMA,
      anon_sym_RPAREN,
  [11709] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2387), 1,
      sym_identifier,
    ACTIONS(2389), 1,
      anon_sym_RBRACE,
  [11719] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1474), 1,
      anon_sym_LBRACK,
    ACTIONS(2391), 1,
      anon_sym_RPAREN,
  [11729] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1474), 1,
      anon_sym_LBRACK,
    ACTIONS(2393), 1,
      sym__semicolon,
  [11739] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1865), 1,
      anon_sym_LPAREN,
    STATE(583), 1,
      sym__parameter_list,
  [11749] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2395), 1,
      anon_sym_LBRACE,
    ACTIONS(2397), 1,
      anon_sym_DQUOTEevmasm_DQUOTE,
  [11759] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1474), 1,
      anon_sym_LBRACK,
    ACTIONS(2399), 1,
      anon_sym_constant,
  [11769] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2303), 2,
      anon_sym_COMMA,
      anon_sym_RPAREN,
  [11777] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2401), 2,
      anon_sym_COMMA,
      anon_sym_RPAREN,
  [11785] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(813), 1,
      anon_sym_LBRACE,
    STATE(248), 1,
      sym_yul_block,
  [11795] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(813), 1,
      anon_sym_LBRACE,
    STATE(255), 1,
      sym_yul_block,
  [11805] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2403), 2,
      anon_sym_COMMA,
      anon_sym_RPAREN,
  [11813] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2107), 1,
      sym_identifier,
    STATE(638), 1,
      sym_struct_field_assignment,
  [11823] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2405), 2,
      anon_sym_COMMA,
      anon_sym_RBRACE,
  [11831] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1865), 1,
      anon_sym_LPAREN,
    STATE(300), 1,
      sym__parameter_list,
  [11841] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2407), 1,
      sym_identifier,
    ACTIONS(2409), 1,
      anon_sym_RBRACE,
  [11851] = 3,
    ACTIONS(1917), 1,
      sym_comment,
    ACTIONS(2411), 1,
      aux_sym_pragma_value_token1,
    STATE(713), 1,
      sym_pragma_value,
  [11861] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2003), 1,
      sym_identifier,
    STATE(615), 1,
      sym_yul_identifier,
  [11871] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1995), 1,
      anon_sym_LBRACE,
    STATE(157), 1,
      sym_contract_body,
  [11881] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1995), 1,
      anon_sym_LBRACE,
    STATE(153), 1,
      sym_contract_body,
  [11891] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2280), 2,
      anon_sym_COMMA,
      anon_sym_RBRACE,
  [11899] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2003), 1,
      sym_identifier,
    STATE(741), 1,
      sym_yul_identifier,
  [11909] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(813), 1,
      anon_sym_LBRACE,
    STATE(260), 1,
      sym_yul_block,
  [11919] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2069), 1,
      sym_identifier,
    STATE(670), 1,
      sym__import_declaration,
  [11929] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2413), 1,
      anon_sym_anonymous,
    ACTIONS(2415), 1,
      sym__semicolon,
  [11939] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2417), 2,
      anon_sym_COMMA,
      anon_sym_RPAREN,
  [11947] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2419), 1,
      anon_sym_from,
    STATE(740), 1,
      sym__from_clause,
  [11957] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2421), 1,
      anon_sym_EQ,
    ACTIONS(2423), 1,
      sym__semicolon,
  [11967] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2250), 2,
      anon_sym_COMMA,
      anon_sym_RPAREN,
  [11975] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2175), 2,
      anon_sym_LBRACE,
      anon_sym_COMMA,
  [11983] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2425), 1,
      anon_sym_EQ,
    ACTIONS(2427), 1,
      sym__semicolon,
  [11993] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2185), 2,
      anon_sym_COMMA,
      anon_sym_RPAREN,
  [12001] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2003), 1,
      sym_identifier,
    STATE(222), 1,
      sym_yul_identifier,
  [12011] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2003), 1,
      sym_identifier,
    STATE(243), 1,
      sym_yul_identifier,
  [12021] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2429), 2,
      anon_sym_COMMA,
      anon_sym_RBRACE,
  [12029] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2269), 2,
      anon_sym_COMMA,
      anon_sym_RPAREN,
  [12037] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2003), 1,
      sym_identifier,
    STATE(487), 1,
      sym_yul_identifier,
  [12047] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2431), 2,
      anon_sym_COMMA,
      anon_sym_RPAREN,
  [12055] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1865), 1,
      anon_sym_LPAREN,
    STATE(642), 1,
      sym__parameter_list,
  [12065] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1865), 1,
      anon_sym_LPAREN,
    STATE(455), 1,
      sym__parameter_list,
  [12075] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1865), 1,
      anon_sym_LPAREN,
    STATE(435), 1,
      sym__parameter_list,
  [12085] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2003), 1,
      sym_identifier,
    STATE(497), 1,
      sym_yul_identifier,
  [12095] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2241), 2,
      anon_sym_COMMA,
      anon_sym_RPAREN,
  [12103] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2433), 2,
      anon_sym_COMMA,
      anon_sym_RPAREN,
  [12111] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(813), 1,
      anon_sym_LBRACE,
    STATE(287), 1,
      sym_yul_block,
  [12121] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1474), 1,
      anon_sym_LBRACK,
    ACTIONS(2435), 1,
      sym_identifier,
  [12131] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2437), 1,
      anon_sym_EQ,
    ACTIONS(2439), 1,
      sym__semicolon,
  [12141] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1995), 1,
      anon_sym_LBRACE,
    STATE(198), 1,
      sym_contract_body,
  [12151] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2003), 1,
      sym_identifier,
    STATE(493), 1,
      sym_yul_identifier,
  [12161] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1865), 1,
      anon_sym_LPAREN,
    STATE(430), 1,
      sym__parameter_list,
  [12171] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2228), 2,
      anon_sym_COMMA,
      anon_sym_RPAREN,
  [12179] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2441), 1,
      anon_sym_LPAREN,
    STATE(681), 1,
      sym__event_parameter_list,
  [12189] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2339), 1,
      sym_identifier,
  [12196] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2443), 1,
      anon_sym_for,
  [12203] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2445), 1,
      anon_sym_EQ,
  [12210] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2447), 1,
      sym_identifier,
  [12217] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2449), 1,
      sym__semicolon,
  [12224] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2451), 1,
      sym_identifier,
  [12231] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2453), 1,
      sym_identifier,
  [12238] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2455), 1,
      sym_solidity_version,
  [12245] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2457), 1,
      anon_sym_LBRACE,
  [12252] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2459), 1,
      sym__semicolon,
  [12259] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2461), 1,
      anon_sym_LBRACE,
  [12266] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2463), 1,
      anon_sym_while,
  [12273] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2437), 1,
      anon_sym_EQ,
  [12280] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2465), 1,
      sym__semicolon,
  [12287] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2467), 1,
      sym__semicolon,
  [12294] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2469), 1,
      sym_solidity_version,
  [12301] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2471), 1,
      anon_sym_LBRACE,
  [12308] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2473), 1,
      sym_identifier,
  [12315] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2475), 1,
      anon_sym_from,
  [12322] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2477), 1,
      anon_sym_EQ,
  [12329] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2479), 1,
      anon_sym_from,
  [12336] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2481), 1,
      anon_sym_LPAREN,
  [12343] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1616), 1,
      anon_sym_COLON,
  [12350] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2483), 1,
      anon_sym_from,
  [12357] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2485), 1,
      anon_sym_LPAREN,
  [12364] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2487), 1,
      anon_sym_EQ,
  [12371] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2489), 1,
      sym__semicolon,
  [12378] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2491), 1,
      anon_sym_from,
  [12385] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2493), 1,
      sym_identifier,
  [12392] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2495), 1,
      anon_sym_LBRACE,
  [12399] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2497), 1,
      anon_sym_is,
  [12406] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2499), 1,
      sym__semicolon,
  [12413] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2501), 1,
      anon_sym_LPAREN,
  [12420] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2503), 1,
      anon_sym_from,
  [12427] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2503), 1,
      anon_sym_from,
  [12434] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2505), 1,
      sym__semicolon,
  [12441] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2507), 1,
      sym__semicolon,
  [12448] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2509), 1,
      anon_sym_LPAREN,
  [12455] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2511), 1,
      sym__semicolon,
  [12462] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2513), 1,
      anon_sym_EQ,
  [12469] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2515), 1,
      sym__semicolon,
  [12476] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(914), 1,
      anon_sym_LPAREN,
  [12483] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2517), 1,
      anon_sym_from,
  [12490] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2519), 1,
      sym__semicolon,
  [12497] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2521), 1,
      sym_identifier,
  [12504] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2523), 1,
      sym__semicolon,
  [12511] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2525), 1,
      sym__semicolon,
  [12518] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2527), 1,
      anon_sym_from,
  [12525] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2529), 1,
      anon_sym_LPAREN,
  [12532] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2531), 1,
      ts_builtin_sym_end,
  [12539] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2533), 1,
      sym_identifier,
  [12546] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2535), 1,
      anon_sym_LPAREN,
  [12553] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2537), 1,
      anon_sym_EQ,
  [12560] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2539), 1,
      sym_identifier,
  [12567] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2541), 1,
      anon_sym_LPAREN,
  [12574] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2543), 1,
      anon_sym_EQ_GT,
  [12581] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2545), 1,
      anon_sym_EQ,
  [12588] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2547), 1,
      anon_sym_LPAREN,
  [12595] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2549), 1,
      sym_identifier,
  [12602] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2551), 1,
      sym__hex_digit,
  [12609] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2553), 1,
      sym__semicolon,
  [12616] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2555), 1,
      sym__semicolon,
  [12623] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2557), 1,
      sym_identifier,
  [12630] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2559), 1,
      anon_sym_LPAREN,
  [12637] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2561), 1,
      sym_identifier,
  [12644] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2563), 1,
      sym__semicolon,
  [12651] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2565), 1,
      sym_identifier,
  [12658] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2567), 1,
      sym__semicolon,
  [12665] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2569), 1,
      sym__semicolon,
  [12672] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2393), 1,
      sym__semicolon,
  [12679] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2571), 1,
      sym_identifier,
  [12686] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2573), 1,
      anon_sym_COLON,
  [12693] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2575), 1,
      sym__semicolon,
  [12700] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2577), 1,
      anon_sym_from,
  [12707] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2579), 1,
      sym__semicolon,
  [12714] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2581), 1,
      anon_sym_LBRACE,
  [12721] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2583), 1,
      sym__semicolon,
  [12728] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2585), 1,
      sym_identifier,
  [12735] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2587), 1,
      sym_identifier,
  [12742] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2589), 1,
      anon_sym_contract,
  [12749] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2591), 1,
      sym__semicolon,
  [12756] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2593), 1,
      sym_identifier,
  [12763] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2595), 1,
      sym__semicolon,
  [12770] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2597), 1,
      sym__semicolon,
  [12777] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2599), 1,
      sym_identifier,
  [12784] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2601), 1,
      anon_sym_is,
  [12791] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2603), 1,
      anon_sym_LPAREN,
  [12798] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2605), 1,
      anon_sym_LBRACE,
  [12805] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2607), 1,
      sym_identifier,
  [12812] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2609), 1,
      sym_identifier,
  [12819] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2611), 1,
      sym_identifier,
};

static const uint32_t ts_small_parse_table_map[] = {
  [SMALL_STATE(307)] = 0,
  [SMALL_STATE(308)] = 72,
  [SMALL_STATE(309)] = 142,
  [SMALL_STATE(310)] = 211,
  [SMALL_STATE(311)] = 280,
  [SMALL_STATE(312)] = 348,
  [SMALL_STATE(313)] = 416,
  [SMALL_STATE(314)] = 484,
  [SMALL_STATE(315)] = 552,
  [SMALL_STATE(316)] = 620,
  [SMALL_STATE(317)] = 692,
  [SMALL_STATE(318)] = 760,
  [SMALL_STATE(319)] = 828,
  [SMALL_STATE(320)] = 896,
  [SMALL_STATE(321)] = 964,
  [SMALL_STATE(322)] = 1032,
  [SMALL_STATE(323)] = 1100,
  [SMALL_STATE(324)] = 1168,
  [SMALL_STATE(325)] = 1234,
  [SMALL_STATE(326)] = 1300,
  [SMALL_STATE(327)] = 1366,
  [SMALL_STATE(328)] = 1432,
  [SMALL_STATE(329)] = 1493,
  [SMALL_STATE(330)] = 1556,
  [SMALL_STATE(331)] = 1623,
  [SMALL_STATE(332)] = 1684,
  [SMALL_STATE(333)] = 1746,
  [SMALL_STATE(334)] = 1812,
  [SMALL_STATE(335)] = 1878,
  [SMALL_STATE(336)] = 1940,
  [SMALL_STATE(337)] = 2002,
  [SMALL_STATE(338)] = 2064,
  [SMALL_STATE(339)] = 2126,
  [SMALL_STATE(340)] = 2183,
  [SMALL_STATE(341)] = 2244,
  [SMALL_STATE(342)] = 2319,
  [SMALL_STATE(343)] = 2384,
  [SMALL_STATE(344)] = 2451,
  [SMALL_STATE(345)] = 2542,
  [SMALL_STATE(346)] = 2605,
  [SMALL_STATE(347)] = 2664,
  [SMALL_STATE(348)] = 2721,
  [SMALL_STATE(349)] = 2782,
  [SMALL_STATE(350)] = 2839,
  [SMALL_STATE(351)] = 2896,
  [SMALL_STATE(352)] = 2953,
  [SMALL_STATE(353)] = 3014,
  [SMALL_STATE(354)] = 3085,
  [SMALL_STATE(355)] = 3146,
  [SMALL_STATE(356)] = 3237,
  [SMALL_STATE(357)] = 3298,
  [SMALL_STATE(358)] = 3377,
  [SMALL_STATE(359)] = 3433,
  [SMALL_STATE(360)] = 3489,
  [SMALL_STATE(361)] = 3545,
  [SMALL_STATE(362)] = 3601,
  [SMALL_STATE(363)] = 3657,
  [SMALL_STATE(364)] = 3713,
  [SMALL_STATE(365)] = 3769,
  [SMALL_STATE(366)] = 3825,
  [SMALL_STATE(367)] = 3881,
  [SMALL_STATE(368)] = 3937,
  [SMALL_STATE(369)] = 3993,
  [SMALL_STATE(370)] = 4049,
  [SMALL_STATE(371)] = 4105,
  [SMALL_STATE(372)] = 4161,
  [SMALL_STATE(373)] = 4217,
  [SMALL_STATE(374)] = 4273,
  [SMALL_STATE(375)] = 4329,
  [SMALL_STATE(376)] = 4385,
  [SMALL_STATE(377)] = 4441,
  [SMALL_STATE(378)] = 4497,
  [SMALL_STATE(379)] = 4553,
  [SMALL_STATE(380)] = 4609,
  [SMALL_STATE(381)] = 4667,
  [SMALL_STATE(382)] = 4723,
  [SMALL_STATE(383)] = 4779,
  [SMALL_STATE(384)] = 4835,
  [SMALL_STATE(385)] = 4891,
  [SMALL_STATE(386)] = 4947,
  [SMALL_STATE(387)] = 5003,
  [SMALL_STATE(388)] = 5059,
  [SMALL_STATE(389)] = 5115,
  [SMALL_STATE(390)] = 5171,
  [SMALL_STATE(391)] = 5230,
  [SMALL_STATE(392)] = 5291,
  [SMALL_STATE(393)] = 5354,
  [SMALL_STATE(394)] = 5409,
  [SMALL_STATE(395)] = 5499,
  [SMALL_STATE(396)] = 5589,
  [SMALL_STATE(397)] = 5679,
  [SMALL_STATE(398)] = 5769,
  [SMALL_STATE(399)] = 5854,
  [SMALL_STATE(400)] = 5939,
  [SMALL_STATE(401)] = 6024,
  [SMALL_STATE(402)] = 6109,
  [SMALL_STATE(403)] = 6194,
  [SMALL_STATE(404)] = 6247,
  [SMALL_STATE(405)] = 6334,
  [SMALL_STATE(406)] = 6418,
  [SMALL_STATE(407)] = 6502,
  [SMALL_STATE(408)] = 6586,
  [SMALL_STATE(409)] = 6670,
  [SMALL_STATE(410)] = 6754,
  [SMALL_STATE(411)] = 6838,
  [SMALL_STATE(412)] = 6922,
  [SMALL_STATE(413)] = 7006,
  [SMALL_STATE(414)] = 7090,
  [SMALL_STATE(415)] = 7174,
  [SMALL_STATE(416)] = 7258,
  [SMALL_STATE(417)] = 7342,
  [SMALL_STATE(418)] = 7426,
  [SMALL_STATE(419)] = 7510,
  [SMALL_STATE(420)] = 7594,
  [SMALL_STATE(421)] = 7678,
  [SMALL_STATE(422)] = 7729,
  [SMALL_STATE(423)] = 7810,
  [SMALL_STATE(424)] = 7861,
  [SMALL_STATE(425)] = 7912,
  [SMALL_STATE(426)] = 7963,
  [SMALL_STATE(427)] = 8014,
  [SMALL_STATE(428)] = 8053,
  [SMALL_STATE(429)] = 8092,
  [SMALL_STATE(430)] = 8153,
  [SMALL_STATE(431)] = 8202,
  [SMALL_STATE(432)] = 8251,
  [SMALL_STATE(433)] = 8300,
  [SMALL_STATE(434)] = 8349,
  [SMALL_STATE(435)] = 8390,
  [SMALL_STATE(436)] = 8433,
  [SMALL_STATE(437)] = 8476,
  [SMALL_STATE(438)] = 8514,
  [SMALL_STATE(439)] = 8540,
  [SMALL_STATE(440)] = 8570,
  [SMALL_STATE(441)] = 8593,
  [SMALL_STATE(442)] = 8616,
  [SMALL_STATE(443)] = 8639,
  [SMALL_STATE(444)] = 8666,
  [SMALL_STATE(445)] = 8687,
  [SMALL_STATE(446)] = 8717,
  [SMALL_STATE(447)] = 8747,
  [SMALL_STATE(448)] = 8777,
  [SMALL_STATE(449)] = 8807,
  [SMALL_STATE(450)] = 8826,
  [SMALL_STATE(451)] = 8853,
  [SMALL_STATE(452)] = 8880,
  [SMALL_STATE(453)] = 8901,
  [SMALL_STATE(454)] = 8929,
  [SMALL_STATE(455)] = 8963,
  [SMALL_STATE(456)] = 8988,
  [SMALL_STATE(457)] = 9013,
  [SMALL_STATE(458)] = 9030,
  [SMALL_STATE(459)] = 9059,
  [SMALL_STATE(460)] = 9073,
  [SMALL_STATE(461)] = 9095,
  [SMALL_STATE(462)] = 9117,
  [SMALL_STATE(463)] = 9140,
  [SMALL_STATE(464)] = 9163,
  [SMALL_STATE(465)] = 9182,
  [SMALL_STATE(466)] = 9205,
  [SMALL_STATE(467)] = 9223,
  [SMALL_STATE(468)] = 9245,
  [SMALL_STATE(469)] = 9262,
  [SMALL_STATE(470)] = 9279,
  [SMALL_STATE(471)] = 9294,
  [SMALL_STATE(472)] = 9311,
  [SMALL_STATE(473)] = 9328,
  [SMALL_STATE(474)] = 9345,
  [SMALL_STATE(475)] = 9362,
  [SMALL_STATE(476)] = 9379,
  [SMALL_STATE(477)] = 9396,
  [SMALL_STATE(478)] = 9413,
  [SMALL_STATE(479)] = 9430,
  [SMALL_STATE(480)] = 9447,
  [SMALL_STATE(481)] = 9466,
  [SMALL_STATE(482)] = 9483,
  [SMALL_STATE(483)] = 9500,
  [SMALL_STATE(484)] = 9519,
  [SMALL_STATE(485)] = 9535,
  [SMALL_STATE(486)] = 9551,
  [SMALL_STATE(487)] = 9561,
  [SMALL_STATE(488)] = 9577,
  [SMALL_STATE(489)] = 9593,
  [SMALL_STATE(490)] = 9609,
  [SMALL_STATE(491)] = 9625,
  [SMALL_STATE(492)] = 9641,
  [SMALL_STATE(493)] = 9657,
  [SMALL_STATE(494)] = 9673,
  [SMALL_STATE(495)] = 9689,
  [SMALL_STATE(496)] = 9705,
  [SMALL_STATE(497)] = 9721,
  [SMALL_STATE(498)] = 9737,
  [SMALL_STATE(499)] = 9753,
  [SMALL_STATE(500)] = 9769,
  [SMALL_STATE(501)] = 9785,
  [SMALL_STATE(502)] = 9801,
  [SMALL_STATE(503)] = 9817,
  [SMALL_STATE(504)] = 9831,
  [SMALL_STATE(505)] = 9841,
  [SMALL_STATE(506)] = 9857,
  [SMALL_STATE(507)] = 9873,
  [SMALL_STATE(508)] = 9883,
  [SMALL_STATE(509)] = 9897,
  [SMALL_STATE(510)] = 9907,
  [SMALL_STATE(511)] = 9921,
  [SMALL_STATE(512)] = 9935,
  [SMALL_STATE(513)] = 9949,
  [SMALL_STATE(514)] = 9963,
  [SMALL_STATE(515)] = 9977,
  [SMALL_STATE(516)] = 9993,
  [SMALL_STATE(517)] = 10009,
  [SMALL_STATE(518)] = 10025,
  [SMALL_STATE(519)] = 10039,
  [SMALL_STATE(520)] = 10053,
  [SMALL_STATE(521)] = 10069,
  [SMALL_STATE(522)] = 10085,
  [SMALL_STATE(523)] = 10098,
  [SMALL_STATE(524)] = 10111,
  [SMALL_STATE(525)] = 10124,
  [SMALL_STATE(526)] = 10137,
  [SMALL_STATE(527)] = 10150,
  [SMALL_STATE(528)] = 10163,
  [SMALL_STATE(529)] = 10176,
  [SMALL_STATE(530)] = 10189,
  [SMALL_STATE(531)] = 10202,
  [SMALL_STATE(532)] = 10215,
  [SMALL_STATE(533)] = 10228,
  [SMALL_STATE(534)] = 10241,
  [SMALL_STATE(535)] = 10254,
  [SMALL_STATE(536)] = 10267,
  [SMALL_STATE(537)] = 10280,
  [SMALL_STATE(538)] = 10293,
  [SMALL_STATE(539)] = 10306,
  [SMALL_STATE(540)] = 10317,
  [SMALL_STATE(541)] = 10330,
  [SMALL_STATE(542)] = 10343,
  [SMALL_STATE(543)] = 10356,
  [SMALL_STATE(544)] = 10367,
  [SMALL_STATE(545)] = 10380,
  [SMALL_STATE(546)] = 10393,
  [SMALL_STATE(547)] = 10406,
  [SMALL_STATE(548)] = 10419,
  [SMALL_STATE(549)] = 10432,
  [SMALL_STATE(550)] = 10445,
  [SMALL_STATE(551)] = 10458,
  [SMALL_STATE(552)] = 10471,
  [SMALL_STATE(553)] = 10484,
  [SMALL_STATE(554)] = 10497,
  [SMALL_STATE(555)] = 10510,
  [SMALL_STATE(556)] = 10523,
  [SMALL_STATE(557)] = 10536,
  [SMALL_STATE(558)] = 10549,
  [SMALL_STATE(559)] = 10562,
  [SMALL_STATE(560)] = 10575,
  [SMALL_STATE(561)] = 10588,
  [SMALL_STATE(562)] = 10601,
  [SMALL_STATE(563)] = 10614,
  [SMALL_STATE(564)] = 10627,
  [SMALL_STATE(565)] = 10640,
  [SMALL_STATE(566)] = 10653,
  [SMALL_STATE(567)] = 10666,
  [SMALL_STATE(568)] = 10677,
  [SMALL_STATE(569)] = 10690,
  [SMALL_STATE(570)] = 10703,
  [SMALL_STATE(571)] = 10716,
  [SMALL_STATE(572)] = 10729,
  [SMALL_STATE(573)] = 10742,
  [SMALL_STATE(574)] = 10755,
  [SMALL_STATE(575)] = 10768,
  [SMALL_STATE(576)] = 10781,
  [SMALL_STATE(577)] = 10794,
  [SMALL_STATE(578)] = 10807,
  [SMALL_STATE(579)] = 10820,
  [SMALL_STATE(580)] = 10833,
  [SMALL_STATE(581)] = 10846,
  [SMALL_STATE(582)] = 10859,
  [SMALL_STATE(583)] = 10872,
  [SMALL_STATE(584)] = 10885,
  [SMALL_STATE(585)] = 10898,
  [SMALL_STATE(586)] = 10911,
  [SMALL_STATE(587)] = 10924,
  [SMALL_STATE(588)] = 10937,
  [SMALL_STATE(589)] = 10950,
  [SMALL_STATE(590)] = 10963,
  [SMALL_STATE(591)] = 10976,
  [SMALL_STATE(592)] = 10989,
  [SMALL_STATE(593)] = 11002,
  [SMALL_STATE(594)] = 11015,
  [SMALL_STATE(595)] = 11028,
  [SMALL_STATE(596)] = 11041,
  [SMALL_STATE(597)] = 11054,
  [SMALL_STATE(598)] = 11067,
  [SMALL_STATE(599)] = 11080,
  [SMALL_STATE(600)] = 11093,
  [SMALL_STATE(601)] = 11106,
  [SMALL_STATE(602)] = 11119,
  [SMALL_STATE(603)] = 11132,
  [SMALL_STATE(604)] = 11145,
  [SMALL_STATE(605)] = 11158,
  [SMALL_STATE(606)] = 11171,
  [SMALL_STATE(607)] = 11184,
  [SMALL_STATE(608)] = 11197,
  [SMALL_STATE(609)] = 11210,
  [SMALL_STATE(610)] = 11223,
  [SMALL_STATE(611)] = 11236,
  [SMALL_STATE(612)] = 11249,
  [SMALL_STATE(613)] = 11262,
  [SMALL_STATE(614)] = 11275,
  [SMALL_STATE(615)] = 11288,
  [SMALL_STATE(616)] = 11301,
  [SMALL_STATE(617)] = 11314,
  [SMALL_STATE(618)] = 11327,
  [SMALL_STATE(619)] = 11338,
  [SMALL_STATE(620)] = 11351,
  [SMALL_STATE(621)] = 11364,
  [SMALL_STATE(622)] = 11377,
  [SMALL_STATE(623)] = 11388,
  [SMALL_STATE(624)] = 11401,
  [SMALL_STATE(625)] = 11411,
  [SMALL_STATE(626)] = 11421,
  [SMALL_STATE(627)] = 11429,
  [SMALL_STATE(628)] = 11437,
  [SMALL_STATE(629)] = 11445,
  [SMALL_STATE(630)] = 11455,
  [SMALL_STATE(631)] = 11465,
  [SMALL_STATE(632)] = 11473,
  [SMALL_STATE(633)] = 11483,
  [SMALL_STATE(634)] = 11493,
  [SMALL_STATE(635)] = 11503,
  [SMALL_STATE(636)] = 11511,
  [SMALL_STATE(637)] = 11521,
  [SMALL_STATE(638)] = 11531,
  [SMALL_STATE(639)] = 11539,
  [SMALL_STATE(640)] = 11549,
  [SMALL_STATE(641)] = 11557,
  [SMALL_STATE(642)] = 11565,
  [SMALL_STATE(643)] = 11573,
  [SMALL_STATE(644)] = 11581,
  [SMALL_STATE(645)] = 11589,
  [SMALL_STATE(646)] = 11599,
  [SMALL_STATE(647)] = 11609,
  [SMALL_STATE(648)] = 11619,
  [SMALL_STATE(649)] = 11627,
  [SMALL_STATE(650)] = 11635,
  [SMALL_STATE(651)] = 11645,
  [SMALL_STATE(652)] = 11653,
  [SMALL_STATE(653)] = 11663,
  [SMALL_STATE(654)] = 11673,
  [SMALL_STATE(655)] = 11681,
  [SMALL_STATE(656)] = 11691,
  [SMALL_STATE(657)] = 11701,
  [SMALL_STATE(658)] = 11709,
  [SMALL_STATE(659)] = 11719,
  [SMALL_STATE(660)] = 11729,
  [SMALL_STATE(661)] = 11739,
  [SMALL_STATE(662)] = 11749,
  [SMALL_STATE(663)] = 11759,
  [SMALL_STATE(664)] = 11769,
  [SMALL_STATE(665)] = 11777,
  [SMALL_STATE(666)] = 11785,
  [SMALL_STATE(667)] = 11795,
  [SMALL_STATE(668)] = 11805,
  [SMALL_STATE(669)] = 11813,
  [SMALL_STATE(670)] = 11823,
  [SMALL_STATE(671)] = 11831,
  [SMALL_STATE(672)] = 11841,
  [SMALL_STATE(673)] = 11851,
  [SMALL_STATE(674)] = 11861,
  [SMALL_STATE(675)] = 11871,
  [SMALL_STATE(676)] = 11881,
  [SMALL_STATE(677)] = 11891,
  [SMALL_STATE(678)] = 11899,
  [SMALL_STATE(679)] = 11909,
  [SMALL_STATE(680)] = 11919,
  [SMALL_STATE(681)] = 11929,
  [SMALL_STATE(682)] = 11939,
  [SMALL_STATE(683)] = 11947,
  [SMALL_STATE(684)] = 11957,
  [SMALL_STATE(685)] = 11967,
  [SMALL_STATE(686)] = 11975,
  [SMALL_STATE(687)] = 11983,
  [SMALL_STATE(688)] = 11993,
  [SMALL_STATE(689)] = 12001,
  [SMALL_STATE(690)] = 12011,
  [SMALL_STATE(691)] = 12021,
  [SMALL_STATE(692)] = 12029,
  [SMALL_STATE(693)] = 12037,
  [SMALL_STATE(694)] = 12047,
  [SMALL_STATE(695)] = 12055,
  [SMALL_STATE(696)] = 12065,
  [SMALL_STATE(697)] = 12075,
  [SMALL_STATE(698)] = 12085,
  [SMALL_STATE(699)] = 12095,
  [SMALL_STATE(700)] = 12103,
  [SMALL_STATE(701)] = 12111,
  [SMALL_STATE(702)] = 12121,
  [SMALL_STATE(703)] = 12131,
  [SMALL_STATE(704)] = 12141,
  [SMALL_STATE(705)] = 12151,
  [SMALL_STATE(706)] = 12161,
  [SMALL_STATE(707)] = 12171,
  [SMALL_STATE(708)] = 12179,
  [SMALL_STATE(709)] = 12189,
  [SMALL_STATE(710)] = 12196,
  [SMALL_STATE(711)] = 12203,
  [SMALL_STATE(712)] = 12210,
  [SMALL_STATE(713)] = 12217,
  [SMALL_STATE(714)] = 12224,
  [SMALL_STATE(715)] = 12231,
  [SMALL_STATE(716)] = 12238,
  [SMALL_STATE(717)] = 12245,
  [SMALL_STATE(718)] = 12252,
  [SMALL_STATE(719)] = 12259,
  [SMALL_STATE(720)] = 12266,
  [SMALL_STATE(721)] = 12273,
  [SMALL_STATE(722)] = 12280,
  [SMALL_STATE(723)] = 12287,
  [SMALL_STATE(724)] = 12294,
  [SMALL_STATE(725)] = 12301,
  [SMALL_STATE(726)] = 12308,
  [SMALL_STATE(727)] = 12315,
  [SMALL_STATE(728)] = 12322,
  [SMALL_STATE(729)] = 12329,
  [SMALL_STATE(730)] = 12336,
  [SMALL_STATE(731)] = 12343,
  [SMALL_STATE(732)] = 12350,
  [SMALL_STATE(733)] = 12357,
  [SMALL_STATE(734)] = 12364,
  [SMALL_STATE(735)] = 12371,
  [SMALL_STATE(736)] = 12378,
  [SMALL_STATE(737)] = 12385,
  [SMALL_STATE(738)] = 12392,
  [SMALL_STATE(739)] = 12399,
  [SMALL_STATE(740)] = 12406,
  [SMALL_STATE(741)] = 12413,
  [SMALL_STATE(742)] = 12420,
  [SMALL_STATE(743)] = 12427,
  [SMALL_STATE(744)] = 12434,
  [SMALL_STATE(745)] = 12441,
  [SMALL_STATE(746)] = 12448,
  [SMALL_STATE(747)] = 12455,
  [SMALL_STATE(748)] = 12462,
  [SMALL_STATE(749)] = 12469,
  [SMALL_STATE(750)] = 12476,
  [SMALL_STATE(751)] = 12483,
  [SMALL_STATE(752)] = 12490,
  [SMALL_STATE(753)] = 12497,
  [SMALL_STATE(754)] = 12504,
  [SMALL_STATE(755)] = 12511,
  [SMALL_STATE(756)] = 12518,
  [SMALL_STATE(757)] = 12525,
  [SMALL_STATE(758)] = 12532,
  [SMALL_STATE(759)] = 12539,
  [SMALL_STATE(760)] = 12546,
  [SMALL_STATE(761)] = 12553,
  [SMALL_STATE(762)] = 12560,
  [SMALL_STATE(763)] = 12567,
  [SMALL_STATE(764)] = 12574,
  [SMALL_STATE(765)] = 12581,
  [SMALL_STATE(766)] = 12588,
  [SMALL_STATE(767)] = 12595,
  [SMALL_STATE(768)] = 12602,
  [SMALL_STATE(769)] = 12609,
  [SMALL_STATE(770)] = 12616,
  [SMALL_STATE(771)] = 12623,
  [SMALL_STATE(772)] = 12630,
  [SMALL_STATE(773)] = 12637,
  [SMALL_STATE(774)] = 12644,
  [SMALL_STATE(775)] = 12651,
  [SMALL_STATE(776)] = 12658,
  [SMALL_STATE(777)] = 12665,
  [SMALL_STATE(778)] = 12672,
  [SMALL_STATE(779)] = 12679,
  [SMALL_STATE(780)] = 12686,
  [SMALL_STATE(781)] = 12693,
  [SMALL_STATE(782)] = 12700,
  [SMALL_STATE(783)] = 12707,
  [SMALL_STATE(784)] = 12714,
  [SMALL_STATE(785)] = 12721,
  [SMALL_STATE(786)] = 12728,
  [SMALL_STATE(787)] = 12735,
  [SMALL_STATE(788)] = 12742,
  [SMALL_STATE(789)] = 12749,
  [SMALL_STATE(790)] = 12756,
  [SMALL_STATE(791)] = 12763,
  [SMALL_STATE(792)] = 12770,
  [SMALL_STATE(793)] = 12777,
  [SMALL_STATE(794)] = 12784,
  [SMALL_STATE(795)] = 12791,
  [SMALL_STATE(796)] = 12798,
  [SMALL_STATE(797)] = 12805,
  [SMALL_STATE(798)] = 12812,
  [SMALL_STATE(799)] = 12819,
};

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),
  [7] = {.entry = {.count = 1, .reusable = false}}, SHIFT(428),
  [9] = {.entry = {.count = 1, .reusable = false}}, SHIFT(477),
  [11] = {.entry = {.count = 1, .reusable = false}}, SHIFT(454),
  [13] = {.entry = {.count = 1, .reusable = false}}, SHIFT(790),
  [15] = {.entry = {.count = 1, .reusable = false}}, SHIFT(788),
  [17] = {.entry = {.count = 1, .reusable = false}}, SHIFT(787),
  [19] = {.entry = {.count = 1, .reusable = false}}, SHIFT(786),
  [21] = {.entry = {.count = 1, .reusable = false}}, SHIFT(779),
  [23] = {.entry = {.count = 1, .reusable = false}}, SHIFT(773),
  [25] = {.entry = {.count = 1, .reusable = false}}, SHIFT(771),
  [27] = {.entry = {.count = 1, .reusable = false}}, SHIFT(762),
  [29] = {.entry = {.count = 1, .reusable = false}}, SHIFT(546),
  [31] = {.entry = {.count = 1, .reusable = false}}, SHIFT(309),
  [33] = {.entry = {.count = 1, .reusable = false}}, SHIFT(307),
  [35] = {.entry = {.count = 1, .reusable = false}}, SHIFT(760),
  [37] = {.entry = {.count = 1, .reusable = false}}, SHIFT(392),
  [39] = {.entry = {.count = 1, .reusable = false}}, SHIFT(51),
  [41] = {.entry = {.count = 1, .reusable = true}}, SHIFT(43),
  [43] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7),
  [45] = {.entry = {.count = 1, .reusable = true}}, SHIFT(403),
  [47] = {.entry = {.count = 1, .reusable = false}}, SHIFT(766),
  [49] = {.entry = {.count = 1, .reusable = true}}, SHIFT(18),
  [51] = {.entry = {.count = 1, .reusable = false}}, SHIFT(772),
  [53] = {.entry = {.count = 1, .reusable = false}}, SHIFT(662),
  [55] = {.entry = {.count = 1, .reusable = false}}, SHIFT(718),
  [57] = {.entry = {.count = 1, .reusable = false}}, SHIFT(749),
  [59] = {.entry = {.count = 1, .reusable = false}}, SHIFT(369),
  [61] = {.entry = {.count = 1, .reusable = false}}, SHIFT(379),
  [63] = {.entry = {.count = 1, .reusable = false}}, SHIFT(746),
  [65] = {.entry = {.count = 1, .reusable = false}}, SHIFT(671),
  [67] = {.entry = {.count = 1, .reusable = false}}, SHIFT(41),
  [69] = {.entry = {.count = 1, .reusable = false}}, SHIFT(32),
  [71] = {.entry = {.count = 1, .reusable = false}}, SHIFT(738),
  [73] = {.entry = {.count = 1, .reusable = false}}, SHIFT(393),
  [75] = {.entry = {.count = 1, .reusable = false}}, SHIFT(733),
  [77] = {.entry = {.count = 1, .reusable = false}}, SHIFT(16),
  [79] = {.entry = {.count = 1, .reusable = false}}, SHIFT(42),
  [81] = {.entry = {.count = 1, .reusable = false}}, SHIFT(46),
  [83] = {.entry = {.count = 1, .reusable = false}}, SHIFT(653),
  [85] = {.entry = {.count = 1, .reusable = false}}, SHIFT(132),
  [87] = {.entry = {.count = 1, .reusable = true}}, SHIFT(36),
  [89] = {.entry = {.count = 1, .reusable = false}}, SHIFT(68),
  [91] = {.entry = {.count = 1, .reusable = true}}, SHIFT(59),
  [93] = {.entry = {.count = 1, .reusable = false}}, SHIFT(316),
  [95] = {.entry = {.count = 1, .reusable = true}}, SHIFT(316),
  [97] = {.entry = {.count = 1, .reusable = false}}, SHIFT(647),
  [99] = {.entry = {.count = 1, .reusable = true}}, SHIFT(472),
  [101] = {.entry = {.count = 1, .reusable = true}}, SHIFT(473),
  [103] = {.entry = {.count = 1, .reusable = false}}, SHIFT(645),
  [105] = {.entry = {.count = 1, .reusable = false}}, SHIFT(330),
  [107] = {.entry = {.count = 1, .reusable = true}}, SHIFT(75),
  [109] = {.entry = {.count = 1, .reusable = true}}, SHIFT(76),
  [111] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_statement_repeat1, 2), SHIFT_REPEAT(330),
  [114] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_statement_repeat1, 2), SHIFT_REPEAT(51),
  [117] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_block_statement_repeat1, 2), SHIFT_REPEAT(43),
  [120] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_block_statement_repeat1, 2), SHIFT_REPEAT(7),
  [123] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_block_statement_repeat1, 2),
  [125] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_statement_repeat1, 2), SHIFT_REPEAT(766),
  [128] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_block_statement_repeat1, 2), SHIFT_REPEAT(18),
  [131] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_statement_repeat1, 2), SHIFT_REPEAT(772),
  [134] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_statement_repeat1, 2), SHIFT_REPEAT(662),
  [137] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_statement_repeat1, 2), SHIFT_REPEAT(718),
  [140] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_statement_repeat1, 2), SHIFT_REPEAT(749),
  [143] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_statement_repeat1, 2), SHIFT_REPEAT(369),
  [146] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_statement_repeat1, 2), SHIFT_REPEAT(379),
  [149] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_statement_repeat1, 2), SHIFT_REPEAT(746),
  [152] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_statement_repeat1, 2), SHIFT_REPEAT(671),
  [155] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_statement_repeat1, 2), SHIFT_REPEAT(309),
  [158] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_statement_repeat1, 2), SHIFT_REPEAT(307),
  [161] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_statement_repeat1, 2), SHIFT_REPEAT(41),
  [164] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_statement_repeat1, 2), SHIFT_REPEAT(32),
  [167] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_statement_repeat1, 2), SHIFT_REPEAT(738),
  [170] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_statement_repeat1, 2), SHIFT_REPEAT(393),
  [173] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_statement_repeat1, 2), SHIFT_REPEAT(733),
  [176] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_statement_repeat1, 2), SHIFT_REPEAT(16),
  [179] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_statement_repeat1, 2), SHIFT_REPEAT(42),
  [182] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_statement_repeat1, 2), SHIFT_REPEAT(46),
  [185] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_statement_repeat1, 2), SHIFT_REPEAT(653),
  [188] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_statement_repeat1, 2), SHIFT_REPEAT(132),
  [191] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_block_statement_repeat1, 2), SHIFT_REPEAT(36),
  [194] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_statement_repeat1, 2), SHIFT_REPEAT(68),
  [197] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_block_statement_repeat1, 2), SHIFT_REPEAT(59),
  [200] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_statement_repeat1, 2), SHIFT_REPEAT(760),
  [203] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_statement_repeat1, 2), SHIFT_REPEAT(316),
  [206] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_block_statement_repeat1, 2), SHIFT_REPEAT(316),
  [209] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_statement_repeat1, 2), SHIFT_REPEAT(647),
  [212] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_block_statement_repeat1, 2), SHIFT_REPEAT(472),
  [215] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_block_statement_repeat1, 2), SHIFT_REPEAT(473),
  [218] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_statement_repeat1, 2), SHIFT_REPEAT(645),
  [221] = {.entry = {.count = 1, .reusable = true}}, SHIFT(196),
  [223] = {.entry = {.count = 1, .reusable = true}}, SHIFT(77),
  [225] = {.entry = {.count = 1, .reusable = true}}, SHIFT(150),
  [227] = {.entry = {.count = 1, .reusable = true}}, SHIFT(165),
  [229] = {.entry = {.count = 1, .reusable = true}}, SHIFT(192),
  [231] = {.entry = {.count = 1, .reusable = true}}, SHIFT(20),
  [233] = {.entry = {.count = 1, .reusable = true}}, SHIFT(22),
  [235] = {.entry = {.count = 1, .reusable = true}}, SHIFT(425),
  [237] = {.entry = {.count = 1, .reusable = true}}, SHIFT(29),
  [239] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_variable_declaration_tuple_repeat1, 1), REDUCE(aux_sym_tuple_expression_repeat1, 1),
  [242] = {.entry = {.count = 1, .reusable = true}}, SHIFT(424),
  [244] = {.entry = {.count = 1, .reusable = true}}, SHIFT(544),
  [246] = {.entry = {.count = 1, .reusable = true}}, SHIFT(27),
  [248] = {.entry = {.count = 1, .reusable = true}}, SHIFT(423),
  [250] = {.entry = {.count = 1, .reusable = true}}, SHIFT(375),
  [252] = {.entry = {.count = 1, .reusable = true}}, SHIFT(325),
  [254] = {.entry = {.count = 1, .reusable = true}}, SHIFT(324),
  [256] = {.entry = {.count = 1, .reusable = true}}, SHIFT(327),
  [258] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_tuple_expression_repeat1, 1),
  [260] = {.entry = {.count = 1, .reusable = true}}, SHIFT(384),
  [262] = {.entry = {.count = 1, .reusable = true}}, SHIFT(37),
  [264] = {.entry = {.count = 1, .reusable = true}}, SHIFT(40),
  [266] = {.entry = {.count = 1, .reusable = true}}, SHIFT(360),
  [268] = {.entry = {.count = 1, .reusable = true}}, SHIFT(361),
  [270] = {.entry = {.count = 1, .reusable = true}}, SHIFT(21),
  [272] = {.entry = {.count = 1, .reusable = true}}, SHIFT(103),
  [274] = {.entry = {.count = 1, .reusable = true}}, SHIFT(365),
  [276] = {.entry = {.count = 1, .reusable = true}}, SHIFT(385),
  [278] = {.entry = {.count = 1, .reusable = true}}, SHIFT(368),
  [280] = {.entry = {.count = 1, .reusable = true}}, SHIFT(370),
  [282] = {.entry = {.count = 1, .reusable = true}}, SHIFT(12),
  [284] = {.entry = {.count = 1, .reusable = true}}, SHIFT(363),
  [286] = {.entry = {.count = 1, .reusable = true}}, SHIFT(318),
  [288] = {.entry = {.count = 1, .reusable = true}}, SHIFT(377),
  [290] = {.entry = {.count = 1, .reusable = true}}, SHIFT(86),
  [292] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try_statement, 6, .production_id = 75),
  [294] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try_statement, 6, .production_id = 75),
  [296] = {.entry = {.count = 1, .reusable = false}}, SHIFT(467),
  [298] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_try_statement_repeat1, 2),
  [300] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_try_statement_repeat1, 2),
  [302] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_try_statement_repeat1, 2), SHIFT_REPEAT(467),
  [305] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try_statement, 4, .production_id = 64),
  [307] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try_statement, 4, .production_id = 64),
  [309] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 1),
  [311] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2),
  [313] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(428),
  [316] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(477),
  [319] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(454),
  [322] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(790),
  [325] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(788),
  [328] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(787),
  [331] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(786),
  [334] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(779),
  [337] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(773),
  [340] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(771),
  [343] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(762),
  [346] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(546),
  [349] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(309),
  [352] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(307),
  [355] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(760),
  [358] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_statement, 2),
  [360] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_statement, 2),
  [362] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block_statement, 3),
  [364] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block_statement, 3),
  [366] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block_statement, 4),
  [368] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block_statement, 4),
  [370] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block_statement, 2),
  [372] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block_statement, 2),
  [374] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_variable_declaration_statement, 2),
  [376] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variable_declaration_statement, 2),
  [378] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_catch_clause, 2, .production_id = 71),
  [380] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_catch_clause, 2, .production_id = 71),
  [382] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_catch_clause, 3, .production_id = 43),
  [384] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_catch_clause, 3, .production_id = 43),
  [386] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_variable_declaration_statement, 4, .production_id = 65),
  [388] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variable_declaration_statement, 4, .production_id = 65),
  [390] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_catch_clause, 4, .production_id = 52),
  [392] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_catch_clause, 4, .production_id = 52),
  [394] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_revert_statement, 3, .production_id = 54),
  [396] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_revert_statement, 3, .production_id = 54),
  [398] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 6, .production_id = 72),
  [400] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 6, .production_id = 72),
  [402] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_emit_statement, 4, .production_id = 23),
  [404] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_emit_statement, 4, .production_id = 23),
  [406] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_return_statement, 2),
  [408] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_statement, 2),
  [410] = {.entry = {.count = 1, .reusable = true}}, SHIFT(156),
  [412] = {.entry = {.count = 1, .reusable = false}}, SHIFT(797),
  [414] = {.entry = {.count = 1, .reusable = false}}, SHIFT(798),
  [416] = {.entry = {.count = 1, .reusable = false}}, SHIFT(799),
  [418] = {.entry = {.count = 1, .reusable = false}}, SHIFT(793),
  [420] = {.entry = {.count = 1, .reusable = false}}, SHIFT(767),
  [422] = {.entry = {.count = 1, .reusable = false}}, SHIFT(600),
  [424] = {.entry = {.count = 1, .reusable = false}}, SHIFT(593),
  [426] = {.entry = {.count = 1, .reusable = false}}, SHIFT(753),
  [428] = {.entry = {.count = 1, .reusable = false}}, SHIFT(696),
  [430] = {.entry = {.count = 1, .reusable = false}}, SHIFT(697),
  [432] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 7, .production_id = 79),
  [434] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 7, .production_id = 79),
  [436] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_do_while_statement, 7, .production_id = 80),
  [438] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_do_while_statement, 7, .production_id = 80),
  [440] = {.entry = {.count = 1, .reusable = true}}, SHIFT(143),
  [442] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_contract_body_repeat1, 2), SHIFT_REPEAT(428),
  [445] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_contract_body_repeat1, 2),
  [447] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_contract_body_repeat1, 2), SHIFT_REPEAT(797),
  [450] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_contract_body_repeat1, 2), SHIFT_REPEAT(798),
  [453] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_contract_body_repeat1, 2), SHIFT_REPEAT(799),
  [456] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_contract_body_repeat1, 2), SHIFT_REPEAT(793),
  [459] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_contract_body_repeat1, 2), SHIFT_REPEAT(767),
  [462] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_contract_body_repeat1, 2), SHIFT_REPEAT(600),
  [465] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_contract_body_repeat1, 2), SHIFT_REPEAT(593),
  [468] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_contract_body_repeat1, 2), SHIFT_REPEAT(309),
  [471] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_contract_body_repeat1, 2), SHIFT_REPEAT(307),
  [474] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_contract_body_repeat1, 2), SHIFT_REPEAT(753),
  [477] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_contract_body_repeat1, 2), SHIFT_REPEAT(696),
  [480] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_contract_body_repeat1, 2), SHIFT_REPEAT(697),
  [483] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_contract_body_repeat1, 2), SHIFT_REPEAT(760),
  [486] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_revert_statement, 4, .production_id = 63),
  [488] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_revert_statement, 4, .production_id = 63),
  [490] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_assembly_statement, 5),
  [492] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assembly_statement, 5),
  [494] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 5, .production_id = 70),
  [496] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 5, .production_id = 70),
  [498] = {.entry = {.count = 1, .reusable = false}}, SHIFT(13),
  [500] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_while_statement, 5, .production_id = 70),
  [502] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_while_statement, 5, .production_id = 70),
  [504] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_return_statement, 3),
  [506] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_statement, 3),
  [508] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_assembly_statement, 3),
  [510] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assembly_statement, 3),
  [512] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_continue_statement, 2),
  [514] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_continue_statement, 2),
  [516] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_break_statement, 2),
  [518] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_break_statement, 2),
  [520] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_assembly_statement, 4),
  [522] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assembly_statement, 4),
  [524] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 7, .production_id = 76),
  [526] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 7, .production_id = 76),
  [528] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_revert_statement, 3, .production_id = 55),
  [530] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_revert_statement, 3, .production_id = 55),
  [532] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_revert_statement, 2),
  [534] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_revert_statement, 2),
  [536] = {.entry = {.count = 1, .reusable = true}}, SHIFT(135),
  [538] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_variable_declaration_tuple_repeat1, 1),
  [540] = {.entry = {.count = 1, .reusable = true}}, SHIFT(761),
  [542] = {.entry = {.count = 1, .reusable = true}}, SHIFT(206),
  [544] = {.entry = {.count = 1, .reusable = true}}, SHIFT(711),
  [546] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_struct_declaration_repeat1, 2), SHIFT_REPEAT(428),
  [549] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_struct_declaration_repeat1, 2),
  [551] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_struct_declaration_repeat1, 2), SHIFT_REPEAT(671),
  [554] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_struct_declaration_repeat1, 2), SHIFT_REPEAT(309),
  [557] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_struct_declaration_repeat1, 2), SHIFT_REPEAT(307),
  [560] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_struct_declaration_repeat1, 2), SHIFT_REPEAT(760),
  [563] = {.entry = {.count = 1, .reusable = true}}, SHIFT(643),
  [565] = {.entry = {.count = 1, .reusable = true}}, SHIFT(777),
  [567] = {.entry = {.count = 1, .reusable = true}}, SHIFT(302),
  [569] = {.entry = {.count = 1, .reusable = true}}, SHIFT(306),
  [571] = {.entry = {.count = 1, .reusable = true}}, SHIFT(314),
  [573] = {.entry = {.count = 1, .reusable = true}}, SHIFT(301),
  [575] = {.entry = {.count = 1, .reusable = true}}, SHIFT(723),
  [577] = {.entry = {.count = 1, .reusable = true}}, SHIFT(735),
  [579] = {.entry = {.count = 1, .reusable = true}}, SHIFT(654),
  [581] = {.entry = {.count = 1, .reusable = true}}, SHIFT(313),
  [583] = {.entry = {.count = 1, .reusable = true}}, SHIFT(755),
  [585] = {.entry = {.count = 1, .reusable = true}}, SHIFT(770),
  [587] = {.entry = {.count = 1, .reusable = true}}, SHIFT(783),
  [589] = {.entry = {.count = 1, .reusable = true}}, SHIFT(781),
  [591] = {.entry = {.count = 1, .reusable = true}}, SHIFT(651),
  [593] = {.entry = {.count = 1, .reusable = false}}, SHIFT(308),
  [595] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_declaration, 5, .production_id = 23),
  [597] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_declaration, 5, .production_id = 23),
  [599] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_user_defined_type_definition, 5, .production_id = 23),
  [601] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_user_defined_type_definition, 5, .production_id = 23),
  [603] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_fallback_receive_definition, 3),
  [605] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_fallback_receive_definition, 3),
  [607] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enum_declaration, 7, .production_id = 34),
  [609] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_declaration, 7, .production_id = 34),
  [611] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_directive, 4, .production_id = 19),
  [613] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_import_directive, 4, .production_id = 19),
  [615] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_state_variable_declaration, 6, .production_id = 68),
  [617] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_state_variable_declaration, 6, .production_id = 68),
  [619] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_error_declaration, 7, .production_id = 23),
  [621] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_error_declaration, 7, .production_id = 23),
  [623] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_contract_declaration, 4, .production_id = 20),
  [625] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_contract_declaration, 4, .production_id = 20),
  [627] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_contract_body, 2),
  [629] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_contract_body, 2),
  [631] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_constructor_definition, 3, .production_id = 43),
  [633] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_constructor_definition, 3, .production_id = 43),
  [635] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_contract_declaration, 5, .production_id = 31),
  [637] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_contract_declaration, 5, .production_id = 31),
  [639] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 6, .production_id = 47),
  [641] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 6, .production_id = 47),
  [643] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_declaration, 6, .production_id = 34),
  [645] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enum_declaration, 6, .production_id = 34),
  [647] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_fallback_receive_definition, 3, .production_id = 43),
  [649] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_fallback_receive_definition, 3, .production_id = 43),
  [651] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 6, .production_id = 46),
  [653] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 6, .production_id = 46),
  [655] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_body, 3),
  [657] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_body, 3),
  [659] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_error_declaration, 6, .production_id = 23),
  [661] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_error_declaration, 6, .production_id = 23),
  [663] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_contract_declaration, 4, .production_id = 22),
  [665] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_contract_declaration, 4, .production_id = 22),
  [667] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_modifier_definition, 3, .production_id = 23),
  [669] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_modifier_definition, 3, .production_id = 23),
  [671] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_contract_body, 3),
  [673] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_contract_body, 3),
  [675] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interface_declaration, 4, .production_id = 22),
  [677] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interface_declaration, 4, .production_id = 22),
  [679] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_declaration, 4, .production_id = 23),
  [681] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enum_declaration, 4, .production_id = 23),
  [683] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 5, .production_id = 36),
  [685] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 5, .production_id = 36),
  [687] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 5, .production_id = 23),
  [689] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 5, .production_id = 23),
  [691] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 5, .production_id = 37),
  [693] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 5, .production_id = 37),
  [695] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_state_variable_declaration, 4, .production_id = 53),
  [697] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_state_variable_declaration, 4, .production_id = 53),
  [699] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_body, 2),
  [701] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_body, 2),
  [703] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_state_variable_declaration, 3, .production_id = 24),
  [705] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_state_variable_declaration, 3, .production_id = 24),
  [707] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 5, .production_id = 38),
  [709] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 5, .production_id = 38),
  [711] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 4, .production_id = 23),
  [713] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 4, .production_id = 23),
  [715] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enum_declaration, 5, .production_id = 34),
  [717] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_declaration, 5, .production_id = 34),
  [719] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 4, .production_id = 22),
  [721] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 4, .production_id = 22),
  [723] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pragma_directive, 3),
  [725] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_pragma_directive, 3),
  [727] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_error_declaration, 5, .production_id = 23),
  [729] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_error_declaration, 5, .production_id = 23),
  [731] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_modifier_definition, 3, .production_id = 13),
  [733] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_modifier_definition, 3, .production_id = 13),
  [735] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_constructor_definition, 4, .production_id = 52),
  [737] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_constructor_definition, 4, .production_id = 52),
  [739] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_error_declaration, 8, .production_id = 23),
  [741] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_error_declaration, 8, .production_id = 23),
  [743] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_modifier_definition, 4, .production_id = 22),
  [745] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_modifier_definition, 4, .production_id = 22),
  [747] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_state_variable_declaration, 5, .production_id = 61),
  [749] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_state_variable_declaration, 5, .production_id = 61),
  [751] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_modifier_definition, 5, .production_id = 38),
  [753] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_modifier_definition, 5, .production_id = 38),
  [755] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_modifier_definition, 5, .production_id = 23),
  [757] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_modifier_definition, 5, .production_id = 23),
  [759] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_using_directive, 5, .production_id = 60),
  [761] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_using_directive, 5, .production_id = 60),
  [763] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_event_definition, 5, .production_id = 23),
  [765] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_event_definition, 5, .production_id = 23),
  [767] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_constant_variable_declaration, 6, .production_id = 50),
  [769] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_constant_variable_declaration, 6, .production_id = 50),
  [771] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_modifier_definition, 4, .production_id = 23),
  [773] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_modifier_definition, 4, .production_id = 23),
  [775] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_library_declaration, 3, .production_id = 13),
  [777] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_library_declaration, 3, .production_id = 13),
  [779] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interface_declaration, 3, .production_id = 13),
  [781] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interface_declaration, 3, .production_id = 13),
  [783] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_event_definition, 4, .production_id = 23),
  [785] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_event_definition, 4, .production_id = 23),
  [787] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_contract_declaration, 3, .production_id = 13),
  [789] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_contract_declaration, 3, .production_id = 13),
  [791] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_fallback_receive_definition, 4),
  [793] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_fallback_receive_definition, 4),
  [795] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_fallback_receive_definition, 4, .production_id = 52),
  [797] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_fallback_receive_definition, 4, .production_id = 52),
  [799] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_directive, 3, .production_id = 11),
  [801] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_import_directive, 3, .production_id = 11),
  [803] = {.entry = {.count = 1, .reusable = true}}, SHIFT(307),
  [805] = {.entry = {.count = 1, .reusable = true}}, SHIFT(309),
  [807] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_member, 3, .production_id = 24),
  [809] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_member, 3, .production_id = 24),
  [811] = {.entry = {.count = 1, .reusable = false}}, SHIFT(229),
  [813] = {.entry = {.count = 1, .reusable = true}}, SHIFT(212),
  [815] = {.entry = {.count = 1, .reusable = true}}, SHIFT(100),
  [817] = {.entry = {.count = 1, .reusable = false}}, SHIFT(701),
  [819] = {.entry = {.count = 1, .reusable = false}}, SHIFT(217),
  [821] = {.entry = {.count = 1, .reusable = false}}, SHIFT(272),
  [823] = {.entry = {.count = 1, .reusable = false}}, SHIFT(266),
  [825] = {.entry = {.count = 1, .reusable = true}}, SHIFT(217),
  [827] = {.entry = {.count = 1, .reusable = false}}, SHIFT(231),
  [829] = {.entry = {.count = 1, .reusable = false}}, SHIFT(574),
  [831] = {.entry = {.count = 1, .reusable = false}}, SHIFT(284),
  [833] = {.entry = {.count = 1, .reusable = false}}, SHIFT(288),
  [835] = {.entry = {.count = 1, .reusable = false}}, SHIFT(678),
  [837] = {.entry = {.count = 1, .reusable = false}}, SHIFT(223),
  [839] = {.entry = {.count = 1, .reusable = true}}, SHIFT(468),
  [841] = {.entry = {.count = 1, .reusable = true}}, SHIFT(469),
  [843] = {.entry = {.count = 1, .reusable = true}}, SHIFT(246),
  [845] = {.entry = {.count = 1, .reusable = false}}, SHIFT(214),
  [847] = {.entry = {.count = 1, .reusable = true}}, SHIFT(214),
  [849] = {.entry = {.count = 1, .reusable = false}}, SHIFT(216),
  [851] = {.entry = {.count = 1, .reusable = true}}, SHIFT(216),
  [853] = {.entry = {.count = 1, .reusable = true}}, SHIFT(245),
  [855] = {.entry = {.count = 1, .reusable = true}}, SHIFT(97),
  [857] = {.entry = {.count = 1, .reusable = false}}, SHIFT(213),
  [859] = {.entry = {.count = 1, .reusable = true}}, SHIFT(213),
  [861] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_assembly_statement_repeat1, 2), SHIFT_REPEAT(229),
  [864] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_assembly_statement_repeat1, 2), SHIFT_REPEAT(212),
  [867] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_assembly_statement_repeat1, 2),
  [869] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_assembly_statement_repeat1, 2), SHIFT_REPEAT(701),
  [872] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_assembly_statement_repeat1, 2), SHIFT_REPEAT(216),
  [875] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_assembly_statement_repeat1, 2), SHIFT_REPEAT(272),
  [878] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_assembly_statement_repeat1, 2), SHIFT_REPEAT(266),
  [881] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_assembly_statement_repeat1, 2), SHIFT_REPEAT(216),
  [884] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_assembly_statement_repeat1, 2), SHIFT_REPEAT(231),
  [887] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_assembly_statement_repeat1, 2), SHIFT_REPEAT(574),
  [890] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_assembly_statement_repeat1, 2), SHIFT_REPEAT(284),
  [893] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_assembly_statement_repeat1, 2), SHIFT_REPEAT(288),
  [896] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_assembly_statement_repeat1, 2), SHIFT_REPEAT(678),
  [899] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_assembly_statement_repeat1, 2), SHIFT_REPEAT(223),
  [902] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_assembly_statement_repeat1, 2), SHIFT_REPEAT(468),
  [905] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_assembly_statement_repeat1, 2), SHIFT_REPEAT(469),
  [908] = {.entry = {.count = 1, .reusable = true}}, SHIFT(93),
  [910] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_path, 1),
  [912] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_path, 1),
  [914] = {.entry = {.count = 1, .reusable = true}}, SHIFT(281),
  [916] = {.entry = {.count = 1, .reusable = true}}, SHIFT(689),
  [918] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_identifier, 1),
  [920] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_identifier, 1),
  [922] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_path, 2),
  [924] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_path, 2),
  [926] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_yul_path_repeat1, 2),
  [928] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_yul_path_repeat1, 2),
  [930] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_yul_path_repeat1, 2), SHIFT_REPEAT(689),
  [933] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_evm_builtin, 1),
  [935] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_evm_builtin, 1),
  [937] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_assignment, 2),
  [939] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_assignment, 2),
  [941] = {.entry = {.count = 1, .reusable = false}}, SHIFT(728),
  [943] = {.entry = {.count = 1, .reusable = true}}, SHIFT(295),
  [945] = {.entry = {.count = 1, .reusable = true}}, SHIFT(230),
  [947] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_function_call, 1, .production_id = 28),
  [949] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_function_call, 1, .production_id = 28),
  [951] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_assignment, 1),
  [953] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_assignment, 1),
  [955] = {.entry = {.count = 1, .reusable = true}}, SHIFT(225),
  [957] = {.entry = {.count = 1, .reusable = true}}, SHIFT(285),
  [959] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_yul_identifier, 1), SHIFT(282),
  [962] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_assignment, 3),
  [964] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_assignment, 3),
  [966] = {.entry = {.count = 1, .reusable = true}}, SHIFT(291),
  [968] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_boolean, 1),
  [970] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_boolean, 1),
  [972] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_function_call, 3, .production_id = 28),
  [974] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_function_call, 3, .production_id = 28),
  [976] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_function_call, 5, .production_id = 28),
  [978] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_function_call, 5, .production_id = 28),
  [980] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_yul_assignment_repeat1, 2),
  [982] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_yul_assignment_repeat1, 2),
  [984] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_yul_assignment_repeat1, 2), SHIFT_REPEAT(595),
  [987] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_string_literal, 1),
  [989] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_string_literal, 1),
  [991] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_function_call, 6, .production_id = 28),
  [993] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_function_call, 6, .production_id = 28),
  [995] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_function_call, 4, .production_id = 28),
  [997] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_function_call, 4, .production_id = 28),
  [999] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_yul_variable_declaration_repeat1, 2),
  [1001] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_yul_variable_declaration_repeat1, 2),
  [1003] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_yul_variable_declaration_repeat1, 2), SHIFT_REPEAT(690),
  [1006] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_variable_declaration, 2, .production_id = 62),
  [1008] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_variable_declaration, 2, .production_id = 62),
  [1010] = {.entry = {.count = 1, .reusable = true}}, SHIFT(249),
  [1012] = {.entry = {.count = 1, .reusable = true}}, SHIFT(283),
  [1014] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_variable_declaration, 3, .production_id = 69),
  [1016] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_variable_declaration, 3, .production_id = 69),
  [1018] = {.entry = {.count = 1, .reusable = true}}, SHIFT(247),
  [1020] = {.entry = {.count = 1, .reusable = true}}, SHIFT(292),
  [1022] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_switch_statement, 3),
  [1024] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_switch_statement, 3),
  [1026] = {.entry = {.count = 1, .reusable = false}}, SHIFT(667),
  [1028] = {.entry = {.count = 1, .reusable = false}}, SHIFT(453),
  [1030] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_yul_switch_statement_repeat1, 2),
  [1032] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_yul_switch_statement_repeat1, 2),
  [1034] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_yul_switch_statement_repeat1, 2), SHIFT_REPEAT(453),
  [1037] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_block, 3),
  [1039] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_block, 3),
  [1041] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_block, 2),
  [1043] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_block, 2),
  [1045] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_variable_declaration, 4, .production_id = 73),
  [1047] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_variable_declaration, 4, .production_id = 73),
  [1049] = {.entry = {.count = 1, .reusable = true}}, SHIFT(293),
  [1051] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_yul_switch_statement_repeat1, 3),
  [1053] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_yul_switch_statement_repeat1, 3),
  [1055] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_variable_declaration, 6, .production_id = 82),
  [1057] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_variable_declaration, 6, .production_id = 82),
  [1059] = {.entry = {.count = 1, .reusable = true}}, SHIFT(290),
  [1061] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_variable_declaration, 5, .production_id = 77),
  [1063] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_variable_declaration, 5, .production_id = 77),
  [1065] = {.entry = {.count = 1, .reusable = true}}, SHIFT(294),
  [1067] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_function_definition, 10),
  [1069] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_function_definition, 10),
  [1071] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_switch_statement, 5),
  [1073] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_switch_statement, 5),
  [1075] = {.entry = {.count = 1, .reusable = false}}, SHIFT(219),
  [1077] = {.entry = {.count = 1, .reusable = true}}, SHIFT(233),
  [1079] = {.entry = {.count = 1, .reusable = false}}, SHIFT(699),
  [1081] = {.entry = {.count = 1, .reusable = true}}, SHIFT(699),
  [1083] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_function_definition, 5),
  [1085] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_function_definition, 5),
  [1087] = {.entry = {.count = 1, .reusable = true}}, SHIFT(236),
  [1089] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_variable_declaration, 7, .production_id = 83),
  [1091] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_variable_declaration, 7, .production_id = 83),
  [1093] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_if_statement, 3),
  [1095] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_if_statement, 3),
  [1097] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_function_definition, 7),
  [1099] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_function_definition, 7),
  [1101] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_assignment, 5),
  [1103] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_assignment, 5),
  [1105] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_variable_declaration, 8, .production_id = 84),
  [1107] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_variable_declaration, 8, .production_id = 84),
  [1109] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_function_definition, 8),
  [1111] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_function_definition, 8),
  [1113] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_function_definition, 9),
  [1115] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_function_definition, 9),
  [1117] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_continue, 1),
  [1119] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_continue, 1),
  [1121] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_function_definition, 11),
  [1123] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_function_definition, 11),
  [1125] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_function_definition, 12),
  [1127] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_function_definition, 12),
  [1129] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_string, 2),
  [1131] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_string, 2),
  [1133] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_switch_statement, 4),
  [1135] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_switch_statement, 4),
  [1137] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_string, 3),
  [1139] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_string, 3),
  [1141] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_break, 1),
  [1143] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_break, 1),
  [1145] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_function_definition, 6),
  [1147] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_function_definition, 6),
  [1149] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_variable_declaration, 4, .production_id = 74),
  [1151] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_variable_declaration, 4, .production_id = 74),
  [1153] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym__yul_expression, 1), REDUCE(sym_yul_assignment, 3),
  [1156] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__yul_expression, 1), REDUCE(sym_yul_assignment, 3),
  [1159] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_variable_declaration, 5, .production_id = 78),
  [1161] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_variable_declaration, 5, .production_id = 78),
  [1163] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_variable_declaration, 6, .production_id = 81),
  [1165] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_variable_declaration, 6, .production_id = 81),
  [1167] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_for_statement, 5),
  [1169] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_for_statement, 5),
  [1171] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_assignment, 4),
  [1173] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_assignment, 4),
  [1175] = {.entry = {.count = 1, .reusable = true}}, SHIFT(232),
  [1177] = {.entry = {.count = 1, .reusable = false}}, SHIFT(610),
  [1179] = {.entry = {.count = 1, .reusable = true}}, SHIFT(610),
  [1181] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_label, 2),
  [1183] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_label, 2),
  [1185] = {.entry = {.count = 1, .reusable = false}}, SHIFT(277),
  [1187] = {.entry = {.count = 1, .reusable = true}}, SHIFT(277),
  [1189] = {.entry = {.count = 1, .reusable = false}}, SHIFT(679),
  [1191] = {.entry = {.count = 1, .reusable = true}}, SHIFT(679),
  [1193] = {.entry = {.count = 1, .reusable = false}}, SHIFT(254),
  [1195] = {.entry = {.count = 1, .reusable = true}}, SHIFT(254),
  [1197] = {.entry = {.count = 1, .reusable = false}}, SHIFT(629),
  [1199] = {.entry = {.count = 1, .reusable = true}}, SHIFT(629),
  [1201] = {.entry = {.count = 1, .reusable = false}}, SHIFT(559),
  [1203] = {.entry = {.count = 1, .reusable = true}}, SHIFT(559),
  [1205] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__yul_assignment_operator, 2),
  [1207] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__yul_assignment_operator, 2),
  [1209] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym__identifier_path_repeat1, 2),
  [1211] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__identifier_path_repeat1, 2),
  [1213] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__identifier_path_repeat1, 2), SHIFT_REPEAT(715),
  [1216] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__function_type, 3, .production_id = 6),
  [1218] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__function_type, 3, .production_id = 6),
  [1220] = {.entry = {.count = 1, .reusable = false}}, SHIFT(757),
  [1222] = {.entry = {.count = 1, .reusable = false}}, SHIFT(304),
  [1224] = {.entry = {.count = 1, .reusable = false}}, SHIFT(305),
  [1226] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym__function_type_repeat1, 2),
  [1228] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__function_type_repeat1, 2),
  [1230] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__function_type_repeat1, 2), SHIFT_REPEAT(304),
  [1233] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__function_type_repeat1, 2), SHIFT_REPEAT(305),
  [1236] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__function_type, 2, .production_id = 6),
  [1238] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__function_type, 2, .production_id = 6),
  [1240] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__parameter_list, 4),
  [1242] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__parameter_list, 4),
  [1244] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__parameter_list, 2),
  [1246] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__parameter_list, 2),
  [1248] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__parameter_list, 3),
  [1250] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__parameter_list, 3),
  [1252] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_visibility, 1),
  [1254] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_visibility, 1),
  [1256] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_state_mutability, 1),
  [1258] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_state_mutability, 1),
  [1260] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__parameter_list, 5),
  [1262] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__parameter_list, 5),
  [1264] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_primitive_type, 1),
  [1266] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_primitive_type, 1),
  [1268] = {.entry = {.count = 1, .reusable = false}}, SHIFT(310),
  [1270] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_user_defined_type, 1),
  [1272] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_user_defined_type, 1),
  [1274] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_primitive_type, 2),
  [1276] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_primitive_type, 2),
  [1278] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__mapping, 6, .production_id = 49),
  [1280] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__mapping, 6, .production_id = 49),
  [1282] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__return_parameters, 4, .production_id = 48),
  [1284] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__return_parameters, 4, .production_id = 48),
  [1286] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__return_parameters, 6, .production_id = 48),
  [1288] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__return_parameters, 6, .production_id = 48),
  [1290] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__return_parameters, 5, .production_id = 48),
  [1292] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__return_parameters, 5, .production_id = 48),
  [1294] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__array_type, 4),
  [1296] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__array_type, 4),
  [1298] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_number_literal, 1),
  [1300] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_number_literal, 1),
  [1302] = {.entry = {.count = 1, .reusable = true}}, SHIFT(389),
  [1304] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_name, 1, .production_id = 2),
  [1306] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_name, 1, .production_id = 2),
  [1308] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__array_type, 3),
  [1310] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__array_type, 3),
  [1312] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_name, 1),
  [1314] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_name, 1),
  [1316] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__function_type, 4, .production_id = 6),
  [1318] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__function_type, 4, .production_id = 6),
  [1320] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_name, 1, .production_id = 1),
  [1322] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_name, 1, .production_id = 1),
  [1324] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__call_arguments, 5),
  [1326] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__call_arguments, 5),
  [1328] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__call_arguments, 4),
  [1330] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__call_arguments, 4),
  [1332] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__call_arguments, 3),
  [1334] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__call_arguments, 3),
  [1336] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__call_arguments, 2),
  [1338] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__call_arguments, 2),
  [1340] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__identifier_path, 2),
  [1342] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__identifier_path, 2),
  [1344] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__identifier_path, 1),
  [1346] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__primary_expression, 1), REDUCE(sym__identifier_path, 1),
  [1349] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym__primary_expression, 1), REDUCE(sym__identifier_path, 1),
  [1352] = {.entry = {.count = 3, .reusable = true}}, REDUCE(sym__primary_expression, 1), REDUCE(sym__identifier_path, 1), SHIFT(775),
  [1356] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__identifier_path_repeat1, 2), REDUCE(sym_member_expression, 3, .dynamic_precedence = 1, .production_id = 39),
  [1359] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__identifier_path_repeat1, 2), REDUCE(sym_member_expression, 3, .dynamic_precedence = 1, .production_id = 39),
  [1362] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_string_literal, 1),
  [1364] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_string_literal, 1),
  [1366] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_string_literal_repeat1, 2),
  [1368] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_string_literal_repeat1, 2),
  [1370] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_string_literal_repeat1, 2), SHIFT_REPEAT(472),
  [1373] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_string_literal_repeat1, 2), SHIFT_REPEAT(473),
  [1376] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_unicode_string_literal, 1),
  [1378] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_unicode_string_literal, 1),
  [1380] = {.entry = {.count = 1, .reusable = true}}, SHIFT(645),
  [1382] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_hex_string_literal, 1),
  [1384] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_hex_string_literal, 1),
  [1386] = {.entry = {.count = 1, .reusable = true}}, SHIFT(647),
  [1388] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_unicode_string_literal_repeat3, 2),
  [1390] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_unicode_string_literal_repeat3, 2),
  [1392] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_unicode_string_literal_repeat3, 2), SHIFT_REPEAT(645),
  [1395] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_hex_string_literal_repeat2, 2),
  [1397] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_hex_string_literal_repeat2, 2),
  [1399] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_hex_string_literal_repeat2, 2), SHIFT_REPEAT(647),
  [1402] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_hex_string_literal_repeat2, 5),
  [1404] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_hex_string_literal_repeat2, 5),
  [1406] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_unary_expression, 2, .production_id = 26),
  [1408] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_unary_expression, 2, .production_id = 26),
  [1410] = {.entry = {.count = 1, .reusable = true}}, SHIFT(378),
  [1412] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_binary_expression, 3, .production_id = 40),
  [1414] = {.entry = {.count = 1, .reusable = false}}, SHIFT(62),
  [1416] = {.entry = {.count = 1, .reusable = true}}, SHIFT(45),
  [1418] = {.entry = {.count = 1, .reusable = false}}, SHIFT(45),
  [1420] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_binary_expression, 3, .production_id = 40),
  [1422] = {.entry = {.count = 1, .reusable = false}}, SHIFT(54),
  [1424] = {.entry = {.count = 1, .reusable = true}}, SHIFT(67),
  [1426] = {.entry = {.count = 1, .reusable = false}}, SHIFT(67),
  [1428] = {.entry = {.count = 1, .reusable = true}}, SHIFT(66),
  [1430] = {.entry = {.count = 1, .reusable = true}}, SHIFT(60),
  [1432] = {.entry = {.count = 1, .reusable = false}}, SHIFT(60),
  [1434] = {.entry = {.count = 1, .reusable = false}}, SHIFT(47),
  [1436] = {.entry = {.count = 1, .reusable = true}}, SHIFT(545),
  [1438] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment_expression, 3, .production_id = 41),
  [1440] = {.entry = {.count = 1, .reusable = true}}, SHIFT(25),
  [1442] = {.entry = {.count = 1, .reusable = true}}, SHIFT(759),
  [1444] = {.entry = {.count = 1, .reusable = true}}, SHIFT(63),
  [1446] = {.entry = {.count = 1, .reusable = true}}, SHIFT(30),
  [1448] = {.entry = {.count = 1, .reusable = true}}, SHIFT(65),
  [1450] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_update_expression, 2, .production_id = 26),
  [1452] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_update_expression, 2, .production_id = 26),
  [1454] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_hex_string_literal_repeat2, 4),
  [1456] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_hex_string_literal_repeat2, 4),
  [1458] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_unicode_string_literal_repeat3, 3),
  [1460] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_unicode_string_literal_repeat3, 3),
  [1462] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_unicode_string_literal_repeat3, 4),
  [1464] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_unicode_string_literal_repeat3, 4),
  [1466] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_hex_string_literal_repeat2, 3),
  [1468] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_hex_string_literal_repeat2, 3),
  [1470] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_new_expression, 2, .production_id = 23),
  [1472] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_new_expression, 2, .production_id = 23),
  [1474] = {.entry = {.count = 1, .reusable = true}}, SHIFT(39),
  [1476] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_augmented_assignment_expression, 3, .production_id = 41),
  [1478] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_ternary_expression, 5),
  [1480] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_ternary_expression, 5),
  [1482] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_expression, 3, .production_id = 14),
  [1484] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_expression, 3, .production_id = 14),
  [1486] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_expression, 4, .production_id = 14),
  [1488] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_expression, 4, .production_id = 14),
  [1490] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_access, 3, .production_id = 42),
  [1492] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_array_access, 3, .production_id = 42),
  [1494] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_expression, 4),
  [1496] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_expression, 4),
  [1498] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_meta_type_expression, 4),
  [1500] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_meta_type_expression, 4),
  [1502] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_inline_array_expression, 5),
  [1504] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_inline_array_expression, 5),
  [1506] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_inline_array_expression, 3),
  [1508] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_inline_array_expression, 3),
  [1510] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_expression, 5),
  [1512] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_expression, 5),
  [1514] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_expression, 6, .production_id = 14),
  [1516] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_expression, 6, .production_id = 14),
  [1518] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice_access, 6, .production_id = 66),
  [1520] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_slice_access, 6, .production_id = 66),
  [1522] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice_access, 5, .production_id = 59),
  [1524] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_slice_access, 5, .production_id = 59),
  [1526] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_true, 1),
  [1528] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_true, 1),
  [1530] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_inline_array_expression, 2),
  [1532] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_inline_array_expression, 2),
  [1534] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_boolean_literal, 1),
  [1536] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_boolean_literal, 1),
  [1538] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_cast_expression, 4),
  [1540] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_cast_expression, 4),
  [1542] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_payable_conversion_expression, 2),
  [1544] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_payable_conversion_expression, 2),
  [1546] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_member_expression, 3, .dynamic_precedence = 1, .production_id = 39),
  [1548] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_member_expression, 3, .dynamic_precedence = 1, .production_id = 39),
  [1550] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_expression, 2),
  [1552] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_expression, 2),
  [1554] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_access, 4, .production_id = 51),
  [1556] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_array_access, 4, .production_id = 51),
  [1558] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice_access, 4, .production_id = 42),
  [1560] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_slice_access, 4, .production_id = 42),
  [1562] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_update_expression, 2, .production_id = 27),
  [1564] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_update_expression, 2, .production_id = 27),
  [1566] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_false, 1),
  [1568] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_false, 1),
  [1570] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__primary_expression, 1),
  [1572] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__primary_expression, 1),
  [1574] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__primary_expression, 1), SHIFT(64),
  [1577] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_new_expression, 3, .production_id = 23),
  [1579] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_new_expression, 3, .production_id = 23),
  [1581] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice_access, 5, .production_id = 58),
  [1583] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_slice_access, 5, .production_id = 58),
  [1585] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_call_expression, 2, .production_id = 28),
  [1587] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_call_expression, 2, .production_id = 28),
  [1589] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_expression, 3),
  [1591] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_expression, 3),
  [1593] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_inline_array_expression, 4),
  [1595] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_inline_array_expression, 4),
  [1597] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_expression, 5, .production_id = 14),
  [1599] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_expression, 5, .production_id = 14),
  [1601] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parenthesized_expression, 3),
  [1603] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_parenthesized_expression, 3),
  [1605] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_number_literal, 2),
  [1607] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_number_literal, 2),
  [1609] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_number_unit, 1),
  [1611] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_number_unit, 1),
  [1613] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__primary_expression, 1), REDUCE(sym_type_name, 1),
  [1616] = {.entry = {.count = 1, .reusable = true}}, SHIFT(48),
  [1618] = {.entry = {.count = 1, .reusable = true}}, SHIFT(484),
  [1620] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2),
  [1622] = {.entry = {.count = 1, .reusable = true}}, SHIFT(738),
  [1624] = {.entry = {.count = 1, .reusable = true}}, SHIFT(661),
  [1626] = {.entry = {.count = 1, .reusable = true}}, SHIFT(31),
  [1628] = {.entry = {.count = 1, .reusable = true}}, SHIFT(387),
  [1630] = {.entry = {.count = 1, .reusable = true}}, SHIFT(34),
  [1632] = {.entry = {.count = 1, .reusable = true}}, SHIFT(364),
  [1634] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_tuple_expression_repeat1, 2),
  [1636] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_inline_array_expression_repeat1, 2),
  [1638] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_call_argument, 1),
  [1640] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_call_struct_argument, 3, .production_id = 57),
  [1642] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_field_assignment, 3, .production_id = 57),
  [1644] = {.entry = {.count = 1, .reusable = true}}, SHIFT(35),
  [1646] = {.entry = {.count = 1, .reusable = true}}, SHIFT(376),
  [1648] = {.entry = {.count = 1, .reusable = true}}, SHIFT(102),
  [1650] = {.entry = {.count = 1, .reusable = true}}, SHIFT(747),
  [1652] = {.entry = {.count = 1, .reusable = true}}, SHIFT(81),
  [1654] = {.entry = {.count = 1, .reusable = true}}, SHIFT(15),
  [1656] = {.entry = {.count = 1, .reusable = true}}, SHIFT(372),
  [1658] = {.entry = {.count = 1, .reusable = true}}, SHIFT(185),
  [1660] = {.entry = {.count = 1, .reusable = true}}, SHIFT(367),
  [1662] = {.entry = {.count = 1, .reusable = true}}, SHIFT(17),
  [1664] = {.entry = {.count = 1, .reusable = true}}, SHIFT(140),
  [1666] = {.entry = {.count = 1, .reusable = true}}, SHIFT(195),
  [1668] = {.entry = {.count = 1, .reusable = true}}, SHIFT(74),
  [1670] = {.entry = {.count = 1, .reusable = true}}, SHIFT(382),
  [1672] = {.entry = {.count = 1, .reusable = true}}, SHIFT(50),
  [1674] = {.entry = {.count = 1, .reusable = true}}, SHIFT(315),
  [1676] = {.entry = {.count = 1, .reusable = true}}, SHIFT(96),
  [1678] = {.entry = {.count = 1, .reusable = true}}, SHIFT(14),
  [1680] = {.entry = {.count = 1, .reusable = true}}, SHIFT(85),
  [1682] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_variable_declaration_tuple, 3),
  [1684] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_variable_declaration_tuple, 2),
  [1686] = {.entry = {.count = 1, .reusable = true}}, SHIFT(92),
  [1688] = {.entry = {.count = 1, .reusable = true}}, SHIFT(715),
  [1690] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__identifier_path, 1),
  [1692] = {.entry = {.count = 1, .reusable = true}}, SHIFT(9),
  [1694] = {.entry = {.count = 1, .reusable = false}}, SHIFT(438),
  [1696] = {.entry = {.count = 1, .reusable = false}}, SHIFT(436),
  [1698] = {.entry = {.count = 1, .reusable = true}}, SHIFT(137),
  [1700] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6),
  [1702] = {.entry = {.count = 1, .reusable = false}}, SHIFT(695),
  [1704] = {.entry = {.count = 1, .reusable = false}}, SHIFT(432),
  [1706] = {.entry = {.count = 1, .reusable = true}}, SHIFT(168),
  [1708] = {.entry = {.count = 1, .reusable = false}}, SHIFT(434),
  [1710] = {.entry = {.count = 1, .reusable = true}}, SHIFT(161),
  [1712] = {.entry = {.count = 1, .reusable = true}}, SHIFT(172),
  [1714] = {.entry = {.count = 1, .reusable = false}}, SHIFT(431),
  [1716] = {.entry = {.count = 1, .reusable = true}}, SHIFT(190),
  [1718] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_function_definition_repeat1, 2), SHIFT_REPEAT(428),
  [1721] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_function_definition_repeat1, 2),
  [1723] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_function_definition_repeat1, 2),
  [1725] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_function_definition_repeat1, 2), SHIFT_REPEAT(304),
  [1728] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_function_definition_repeat1, 2), SHIFT_REPEAT(305),
  [1731] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_function_definition_repeat1, 2), SHIFT_REPEAT(438),
  [1734] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_function_definition_repeat1, 2), SHIFT_REPEAT(434),
  [1737] = {.entry = {.count = 1, .reusable = false}}, SHIFT(437),
  [1739] = {.entry = {.count = 1, .reusable = true}}, SHIFT(203),
  [1741] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_fallback_receive_definition_repeat1, 2), SHIFT_REPEAT(428),
  [1744] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_fallback_receive_definition_repeat1, 2),
  [1746] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_fallback_receive_definition_repeat1, 2), SHIFT_REPEAT(304),
  [1749] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_fallback_receive_definition_repeat1, 2), SHIFT_REPEAT(305),
  [1752] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_fallback_receive_definition_repeat1, 2), SHIFT_REPEAT(438),
  [1755] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_fallback_receive_definition_repeat1, 2), SHIFT_REPEAT(437),
  [1758] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_override_specifier, 1),
  [1760] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_override_specifier, 1),
  [1762] = {.entry = {.count = 1, .reusable = true}}, SHIFT(602),
  [1764] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_fallback_receive_definition_repeat1, 1), REDUCE(aux_sym__function_type_repeat1, 1),
  [1767] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_fallback_receive_definition_repeat1, 1),
  [1769] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym__function_type_repeat1, 1),
  [1771] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_fallback_receive_definition_repeat1, 1),
  [1773] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__function_type_repeat1, 1),
  [1775] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_override_specifier, 6),
  [1777] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_override_specifier, 6),
  [1779] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_override_specifier, 5),
  [1781] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_override_specifier, 5),
  [1783] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_override_specifier, 4),
  [1785] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_override_specifier, 4),
  [1787] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_modifier_invocation, 1),
  [1789] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_modifier_invocation, 1),
  [1791] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_modifier_invocation, 2),
  [1793] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_modifier_invocation, 2),
  [1795] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_solidity_pragma_token_repeat1, 2, .production_id = 15), SHIFT_REPEAT(452),
  [1798] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_solidity_pragma_token_repeat1, 2, .production_id = 15), SHIFT_REPEAT(716),
  [1801] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_solidity_pragma_token_repeat1, 2, .production_id = 15), SHIFT_REPEAT(716),
  [1804] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_solidity_pragma_token_repeat1, 2, .production_id = 15),
  [1806] = {.entry = {.count = 1, .reusable = true}}, SHIFT(452),
  [1808] = {.entry = {.count = 1, .reusable = true}}, SHIFT(716),
  [1810] = {.entry = {.count = 1, .reusable = false}}, SHIFT(716),
  [1812] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_solidity_pragma_token, 1),
  [1814] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_solidity_pragma_token, 2, .production_id = 8),
  [1816] = {.entry = {.count = 1, .reusable = false}}, SHIFT(687),
  [1818] = {.entry = {.count = 1, .reusable = false}}, SHIFT(451),
  [1820] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__pragma_version_constraint, 2),
  [1822] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__pragma_version_constraint, 2),
  [1824] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_state_variable_declaration_repeat1, 2, .production_id = 44),
  [1826] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_state_variable_declaration_repeat1, 2, .production_id = 44), SHIFT_REPEAT(450),
  [1829] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_state_variable_declaration_repeat1, 2, .production_id = 44), SHIFT_REPEAT(304),
  [1832] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_state_variable_declaration_repeat1, 2, .production_id = 44), SHIFT_REPEAT(438),
  [1835] = {.entry = {.count = 1, .reusable = false}}, SHIFT(684),
  [1837] = {.entry = {.count = 1, .reusable = false}}, SHIFT(450),
  [1839] = {.entry = {.count = 1, .reusable = true}}, SHIFT(457),
  [1841] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_solidity_pragma_token_repeat1, 1, .production_id = 7),
  [1843] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_solidity_pragma_token_repeat1, 1, .production_id = 7),
  [1845] = {.entry = {.count = 1, .reusable = false}}, SHIFT(666),
  [1847] = {.entry = {.count = 1, .reusable = true}}, SHIFT(666),
  [1849] = {.entry = {.count = 1, .reusable = true}}, SHIFT(231),
  [1851] = {.entry = {.count = 1, .reusable = true}}, SHIFT(557),
  [1853] = {.entry = {.count = 1, .reusable = true}}, SHIFT(554),
  [1855] = {.entry = {.count = 1, .reusable = true}}, SHIFT(555),
  [1857] = {.entry = {.count = 1, .reusable = false}}, SHIFT(456),
  [1859] = {.entry = {.count = 1, .reusable = false}}, SHIFT(461),
  [1861] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_solidity_pragma_token_repeat1, 2, .production_id = 7),
  [1863] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_solidity_pragma_token_repeat1, 2, .production_id = 7),
  [1865] = {.entry = {.count = 1, .reusable = true}}, SHIFT(112),
  [1867] = {.entry = {.count = 1, .reusable = true}}, SHIFT(438),
  [1869] = {.entry = {.count = 1, .reusable = true}}, SHIFT(465),
  [1871] = {.entry = {.count = 1, .reusable = true}}, SHIFT(155),
  [1873] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_state_variable_declaration_repeat1, 1, .production_id = 32),
  [1875] = {.entry = {.count = 1, .reusable = false}}, SHIFT(700),
  [1877] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameter, 1, .production_id = 14),
  [1879] = {.entry = {.count = 1, .reusable = false}}, SHIFT(567),
  [1881] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_constructor_definition_repeat1, 2), SHIFT_REPEAT(428),
  [1884] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_constructor_definition_repeat1, 2),
  [1886] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_constructor_definition_repeat1, 2), SHIFT_REPEAT(461),
  [1889] = {.entry = {.count = 1, .reusable = true}}, SHIFT(463),
  [1891] = {.entry = {.count = 1, .reusable = true}}, SHIFT(197),
  [1893] = {.entry = {.count = 1, .reusable = true}}, SHIFT(466),
  [1895] = {.entry = {.count = 1, .reusable = true}}, SHIFT(187),
  [1897] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__nameless_parameter, 1, .production_id = 14),
  [1899] = {.entry = {.count = 1, .reusable = true}}, SHIFT(694),
  [1901] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_modifier_definition_repeat1, 2),
  [1903] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_modifier_definition_repeat1, 2), SHIFT_REPEAT(438),
  [1906] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_modifier_definition_repeat1, 2), SHIFT_REPEAT(466),
  [1909] = {.entry = {.count = 1, .reusable = false}}, SHIFT(646),
  [1911] = {.entry = {.count = 1, .reusable = false}}, SHIFT(269),
  [1913] = {.entry = {.count = 1, .reusable = false}}, SHIFT(475),
  [1915] = {.entry = {.count = 1, .reusable = true}}, SHIFT(475),
  [1917] = {.entry = {.count = 1, .reusable = false}}, SHIFT_EXTRA(),
  [1919] = {.entry = {.count = 1, .reusable = false}}, SHIFT(478),
  [1921] = {.entry = {.count = 1, .reusable = true}}, SHIFT(478),
  [1923] = {.entry = {.count = 1, .reusable = false}}, SHIFT(486),
  [1925] = {.entry = {.count = 1, .reusable = false}}, SHIFT(714),
  [1927] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_hex_string_literal_repeat1, 2), SHIFT_REPEAT(471),
  [1930] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_hex_string_literal_repeat1, 2),
  [1932] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_hex_string_literal_repeat1, 2), SHIFT_REPEAT(768),
  [1935] = {.entry = {.count = 1, .reusable = false}}, SHIFT(331),
  [1937] = {.entry = {.count = 1, .reusable = false}}, SHIFT(482),
  [1939] = {.entry = {.count = 1, .reusable = true}}, SHIFT(482),
  [1941] = {.entry = {.count = 1, .reusable = false}}, SHIFT(481),
  [1943] = {.entry = {.count = 1, .reusable = true}}, SHIFT(481),
  [1945] = {.entry = {.count = 1, .reusable = false}}, SHIFT(648),
  [1947] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_event_paramater, 1, .production_id = 14),
  [1949] = {.entry = {.count = 1, .reusable = false}}, SHIFT(539),
  [1951] = {.entry = {.count = 1, .reusable = false}}, SHIFT(271),
  [1953] = {.entry = {.count = 1, .reusable = false}}, SHIFT(479),
  [1955] = {.entry = {.count = 1, .reusable = true}}, SHIFT(479),
  [1957] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_string_repeat2, 2),
  [1959] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_string_repeat2, 2), SHIFT_REPEAT(476),
  [1962] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_string_repeat2, 2), SHIFT_REPEAT(476),
  [1965] = {.entry = {.count = 1, .reusable = false}}, SHIFT(673),
  [1967] = {.entry = {.count = 1, .reusable = false}}, SHIFT(446),
  [1969] = {.entry = {.count = 1, .reusable = false}}, SHIFT(476),
  [1971] = {.entry = {.count = 1, .reusable = true}}, SHIFT(476),
  [1973] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_string_repeat1, 2),
  [1975] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_string_repeat1, 2), SHIFT_REPEAT(479),
  [1978] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_string_repeat1, 2), SHIFT_REPEAT(479),
  [1981] = {.entry = {.count = 1, .reusable = true}}, SHIFT(428),
  [1983] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__class_heritage, 4),
  [1985] = {.entry = {.count = 1, .reusable = false}}, SHIFT(328),
  [1987] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__class_heritage, 3),
  [1989] = {.entry = {.count = 1, .reusable = true}}, SHIFT(550),
  [1991] = {.entry = {.count = 1, .reusable = true}}, SHIFT(551),
  [1993] = {.entry = {.count = 1, .reusable = true}}, SHIFT(734),
  [1995] = {.entry = {.count = 1, .reusable = true}}, SHIFT(90),
  [1997] = {.entry = {.count = 1, .reusable = true}}, SHIFT(506),
  [1999] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variable_declaration, 2, .production_id = 24),
  [2001] = {.entry = {.count = 1, .reusable = true}}, SHIFT(488),
  [2003] = {.entry = {.count = 1, .reusable = true}}, SHIFT(219),
  [2005] = {.entry = {.count = 1, .reusable = true}}, SHIFT(492),
  [2007] = {.entry = {.count = 1, .reusable = true}}, SHIFT(495),
  [2009] = {.entry = {.count = 1, .reusable = true}}, SHIFT(499),
  [2011] = {.entry = {.count = 1, .reusable = true}}, SHIFT(471),
  [2013] = {.entry = {.count = 1, .reusable = true}}, SHIFT(768),
  [2015] = {.entry = {.count = 1, .reusable = true}}, SHIFT(339),
  [2017] = {.entry = {.count = 1, .reusable = true}}, SHIFT(502),
  [2019] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__import_declaration, 1, .production_id = 3),
  [2021] = {.entry = {.count = 1, .reusable = true}}, SHIFT(726),
  [2023] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variable_declaration, 3, .production_id = 35),
  [2025] = {.entry = {.count = 1, .reusable = true}}, SHIFT(441),
  [2027] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__import_alias, 2, .production_id = 16),
  [2029] = {.entry = {.count = 1, .reusable = true}}, SHIFT(631),
  [2031] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_error_parameter, 1, .production_id = 14),
  [2033] = {.entry = {.count = 1, .reusable = false}}, SHIFT(349),
  [2035] = {.entry = {.count = 1, .reusable = true}}, SHIFT(512),
  [2037] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_inheritance_specifier, 1, .production_id = 21),
  [2039] = {.entry = {.count = 1, .reusable = false}}, SHIFT(350),
  [2041] = {.entry = {.count = 1, .reusable = true}}, SHIFT(518),
  [2043] = {.entry = {.count = 1, .reusable = true}}, SHIFT(519),
  [2045] = {.entry = {.count = 1, .reusable = true}}, SHIFT(513),
  [2047] = {.entry = {.count = 1, .reusable = true}}, SHIFT(500),
  [2049] = {.entry = {.count = 1, .reusable = true}}, SHIFT(347),
  [2051] = {.entry = {.count = 1, .reusable = true}}, SHIFT(521),
  [2053] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_unicode_string_literal_repeat2, 2),
  [2055] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_unicode_string_literal_repeat2, 2), SHIFT_REPEAT(518),
  [2058] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_unicode_string_literal_repeat1, 2),
  [2060] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_unicode_string_literal_repeat1, 2), SHIFT_REPEAT(519),
  [2063] = {.entry = {.count = 1, .reusable = true}}, SHIFT(440),
  [2065] = {.entry = {.count = 1, .reusable = true}}, SHIFT(118),
  [2067] = {.entry = {.count = 1, .reusable = true}}, SHIFT(641),
  [2069] = {.entry = {.count = 1, .reusable = true}}, SHIFT(503),
  [2071] = {.entry = {.count = 1, .reusable = true}}, SHIFT(756),
  [2073] = {.entry = {.count = 1, .reusable = true}}, SHIFT(193),
  [2075] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__return_parameters_repeat1, 2), SHIFT_REPEAT(130),
  [2078] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__return_parameters_repeat1, 2),
  [2080] = {.entry = {.count = 1, .reusable = true}}, SHIFT(780),
  [2082] = {.entry = {.count = 1, .reusable = true}}, SHIFT(682),
  [2084] = {.entry = {.count = 1, .reusable = true}}, SHIFT(124),
  [2086] = {.entry = {.count = 1, .reusable = true}}, SHIFT(597),
  [2088] = {.entry = {.count = 1, .reusable = true}}, SHIFT(125),
  [2090] = {.entry = {.count = 1, .reusable = true}}, SHIFT(776),
  [2092] = {.entry = {.count = 1, .reusable = true}}, SHIFT(149),
  [2094] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__call_arguments_repeat1, 2), SHIFT_REPEAT(26),
  [2097] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__call_arguments_repeat1, 2),
  [2099] = {.entry = {.count = 1, .reusable = true}}, SHIFT(634),
  [2101] = {.entry = {.count = 1, .reusable = true}}, SHIFT(152),
  [2103] = {.entry = {.count = 1, .reusable = true}}, SHIFT(114),
  [2105] = {.entry = {.count = 1, .reusable = true}}, SHIFT(312),
  [2107] = {.entry = {.count = 1, .reusable = true}}, SHIFT(731),
  [2109] = {.entry = {.count = 1, .reusable = true}}, SHIFT(366),
  [2111] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_struct_expression_repeat1, 2), SHIFT_REPEAT(669),
  [2114] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_struct_expression_repeat1, 2),
  [2116] = {.entry = {.count = 1, .reusable = true}}, SHIFT(163),
  [2118] = {.entry = {.count = 1, .reusable = true}}, SHIFT(639),
  [2120] = {.entry = {.count = 1, .reusable = true}}, SHIFT(169),
  [2122] = {.entry = {.count = 1, .reusable = true}}, SHIFT(126),
  [2124] = {.entry = {.count = 1, .reusable = true}}, SHIFT(657),
  [2126] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_event_paramater, 2, .production_id = 14),
  [2128] = {.entry = {.count = 1, .reusable = true}}, SHIFT(33),
  [2130] = {.entry = {.count = 1, .reusable = true}}, SHIFT(556),
  [2132] = {.entry = {.count = 1, .reusable = true}}, SHIFT(736),
  [2134] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_tuple_expression_repeat1, 2), SHIFT_REPEAT(28),
  [2137] = {.entry = {.count = 1, .reusable = true}}, SHIFT(467),
  [2139] = {.entry = {.count = 1, .reusable = true}}, SHIFT(668),
  [2141] = {.entry = {.count = 1, .reusable = true}}, SHIFT(358),
  [2143] = {.entry = {.count = 1, .reusable = true}}, SHIFT(706),
  [2145] = {.entry = {.count = 1, .reusable = true}}, SHIFT(576),
  [2147] = {.entry = {.count = 1, .reusable = true}}, SHIFT(23),
  [2149] = {.entry = {.count = 1, .reusable = true}}, SHIFT(326),
  [2151] = {.entry = {.count = 1, .reusable = true}}, SHIFT(707),
  [2153] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_variable_declaration_tuple_repeat2, 1),
  [2155] = {.entry = {.count = 1, .reusable = true}}, SHIFT(38),
  [2157] = {.entry = {.count = 1, .reusable = true}}, SHIFT(611),
  [2159] = {.entry = {.count = 1, .reusable = true}}, SHIFT(359),
  [2161] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__single_import, 1),
  [2163] = {.entry = {.count = 1, .reusable = true}}, SHIFT(729),
  [2165] = {.entry = {.count = 1, .reusable = true}}, SHIFT(751),
  [2167] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__single_import, 1, .production_id = 3),
  [2169] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__source_import, 1, .production_id = 5),
  [2171] = {.entry = {.count = 1, .reusable = true}}, SHIFT(632),
  [2173] = {.entry = {.count = 1, .reusable = true}}, SHIFT(453),
  [2175] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__class_heritage_repeat1, 2),
  [2177] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__class_heritage_repeat1, 2), SHIFT_REPEAT(515),
  [2180] = {.entry = {.count = 1, .reusable = true}}, SHIFT(160),
  [2182] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_error_declaration_repeat1, 2), SHIFT_REPEAT(127),
  [2185] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_error_declaration_repeat1, 2),
  [2187] = {.entry = {.count = 1, .reusable = true}}, SHIFT(520),
  [2189] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_enum_declaration_repeat1, 2), SHIFT_REPEAT(709),
  [2192] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_enum_declaration_repeat1, 2),
  [2194] = {.entry = {.count = 1, .reusable = true}}, SHIFT(113),
  [2196] = {.entry = {.count = 1, .reusable = true}}, SHIFT(105),
  [2198] = {.entry = {.count = 1, .reusable = true}}, SHIFT(640),
  [2200] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameter, 2, .production_id = 25),
  [2202] = {.entry = {.count = 1, .reusable = true}}, SHIFT(636),
  [2204] = {.entry = {.count = 1, .reusable = true}}, SHIFT(202),
  [2206] = {.entry = {.count = 1, .reusable = true}}, SHIFT(698),
  [2208] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__multiple_import_repeat1, 2, .production_id = 30), SHIFT_REPEAT(680),
  [2211] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__multiple_import_repeat1, 2, .production_id = 30),
  [2213] = {.entry = {.count = 1, .reusable = true}}, SHIFT(117),
  [2215] = {.entry = {.count = 1, .reusable = true}}, SHIFT(789),
  [2217] = {.entry = {.count = 1, .reusable = true}}, SHIFT(570),
  [2219] = {.entry = {.count = 1, .reusable = true}}, SHIFT(674),
  [2221] = {.entry = {.count = 1, .reusable = true}}, SHIFT(705),
  [2223] = {.entry = {.count = 1, .reusable = true}}, SHIFT(616),
  [2225] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_variable_declaration_tuple_repeat2, 2), SHIFT_REPEAT(618),
  [2228] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_variable_declaration_tuple_repeat2, 2),
  [2230] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__class_heritage, 2),
  [2232] = {.entry = {.count = 1, .reusable = true}}, SHIFT(483),
  [2234] = {.entry = {.count = 1, .reusable = true}}, SHIFT(505),
  [2236] = {.entry = {.count = 1, .reusable = true}}, SHIFT(442),
  [2238] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_yul_function_call_repeat1, 2), SHIFT_REPEAT(286),
  [2241] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_yul_function_call_repeat1, 2),
  [2243] = {.entry = {.count = 1, .reusable = true}}, SHIFT(573),
  [2245] = {.entry = {.count = 1, .reusable = true}}, SHIFT(575),
  [2247] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_variable_declaration_tuple_repeat1, 2), SHIFT_REPEAT(108),
  [2250] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_variable_declaration_tuple_repeat1, 2),
  [2252] = {.entry = {.count = 1, .reusable = true}}, SHIFT(625),
  [2254] = {.entry = {.count = 1, .reusable = true}}, SHIFT(523),
  [2256] = {.entry = {.count = 1, .reusable = true}}, SHIFT(782),
  [2258] = {.entry = {.count = 1, .reusable = true}}, SHIFT(107),
  [2260] = {.entry = {.count = 1, .reusable = true}}, SHIFT(251),
  [2262] = {.entry = {.count = 1, .reusable = true}}, SHIFT(119),
  [2264] = {.entry = {.count = 1, .reusable = true}}, SHIFT(319),
  [2266] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_override_specifier_repeat1, 2), SHIFT_REPEAT(612),
  [2269] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_override_specifier_repeat1, 2),
  [2271] = {.entry = {.count = 1, .reusable = true}}, SHIFT(633),
  [2273] = {.entry = {.count = 1, .reusable = true}}, SHIFT(258),
  [2275] = {.entry = {.count = 1, .reusable = true}}, SHIFT(649),
  [2277] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_call_argument_repeat1, 2), SHIFT_REPEAT(650),
  [2280] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_call_argument_repeat1, 2),
  [2282] = {.entry = {.count = 1, .reusable = true}}, SHIFT(586),
  [2284] = {.entry = {.count = 1, .reusable = true}}, SHIFT(585),
  [2286] = {.entry = {.count = 1, .reusable = true}}, SHIFT(693),
  [2288] = {.entry = {.count = 1, .reusable = true}}, SHIFT(480),
  [2290] = {.entry = {.count = 1, .reusable = true}}, SHIFT(526),
  [2292] = {.entry = {.count = 1, .reusable = true}}, SHIFT(626),
  [2294] = {.entry = {.count = 1, .reusable = true}}, SHIFT(589),
  [2296] = {.entry = {.count = 1, .reusable = true}}, SHIFT(252),
  [2298] = {.entry = {.count = 1, .reusable = true}}, SHIFT(24),
  [2300] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__event_parameter_list_repeat1, 2), SHIFT_REPEAT(129),
  [2303] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__event_parameter_list_repeat1, 2),
  [2305] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_inline_array_expression_repeat1, 2), SHIFT_REPEAT(55),
  [2308] = {.entry = {.count = 1, .reusable = true}}, SHIFT(256),
  [2310] = {.entry = {.count = 1, .reusable = true}}, SHIFT(237),
  [2312] = {.entry = {.count = 1, .reusable = true}}, SHIFT(386),
  [2314] = {.entry = {.count = 1, .reusable = true}}, SHIFT(624),
  [2316] = {.entry = {.count = 1, .reusable = true}}, SHIFT(147),
  [2318] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__parameter_list_repeat1, 2), SHIFT_REPEAT(128),
  [2321] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__parameter_list_repeat1, 2),
  [2323] = {.entry = {.count = 1, .reusable = true}}, SHIFT(608),
  [2325] = {.entry = {.count = 1, .reusable = true}}, SHIFT(250),
  [2327] = {.entry = {.count = 1, .reusable = true}}, SHIFT(748),
  [2329] = {.entry = {.count = 1, .reusable = true}}, SHIFT(120),
  [2331] = {.entry = {.count = 1, .reusable = true}}, SHIFT(115),
  [2333] = {.entry = {.count = 1, .reusable = true}}, SHIFT(303),
  [2335] = {.entry = {.count = 1, .reusable = true}}, SHIFT(534),
  [2337] = {.entry = {.count = 1, .reusable = true}}, SHIFT(601),
  [2339] = {.entry = {.count = 1, .reusable = true}}, SHIFT(691),
  [2341] = {.entry = {.count = 1, .reusable = true}}, SHIFT(174),
  [2343] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_call_argument, 3),
  [2345] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_inheritance_specifier, 2, .production_id = 33),
  [2347] = {.entry = {.count = 1, .reusable = true}}, SHIFT(516),
  [2349] = {.entry = {.count = 1, .reusable = true}}, SHIFT(351),
  [2351] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_error_parameter, 2, .production_id = 24),
  [2353] = {.entry = {.count = 1, .reusable = true}}, SHIFT(138),
  [2355] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__import_declaration, 2, .production_id = 10),
  [2357] = {.entry = {.count = 1, .reusable = true}}, SHIFT(517),
  [2359] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameter, 3, .production_id = 35),
  [2361] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__event_parameter_list, 3),
  [2363] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_type_definition, 2),
  [2365] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__event_parameter_list, 2),
  [2367] = {.entry = {.count = 1, .reusable = true}}, SHIFT(514),
  [2369] = {.entry = {.count = 1, .reusable = true}}, SHIFT(510),
  [2371] = {.entry = {.count = 1, .reusable = true}}, SHIFT(637),
  [2373] = {.entry = {.count = 1, .reusable = true}}, SHIFT(630),
  [2375] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_event_paramater, 2, .production_id = 24),
  [2377] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_call_argument, 5),
  [2379] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__event_parameter_list, 5),
  [2381] = {.entry = {.count = 1, .reusable = true}}, SHIFT(311),
  [2383] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__event_parameter_list, 4),
  [2385] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_event_paramater, 3, .production_id = 67),
  [2387] = {.entry = {.count = 1, .reusable = true}}, SHIFT(537),
  [2389] = {.entry = {.count = 1, .reusable = true}}, SHIFT(191),
  [2391] = {.entry = {.count = 1, .reusable = true}}, SHIFT(362),
  [2393] = {.entry = {.count = 1, .reusable = true}}, SHIFT(188),
  [2395] = {.entry = {.count = 1, .reusable = true}}, SHIFT(215),
  [2397] = {.entry = {.count = 1, .reusable = true}}, SHIFT(725),
  [2399] = {.entry = {.count = 1, .reusable = true}}, SHIFT(712),
  [2401] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__return_parameters_repeat1, 2, .production_id = 56),
  [2403] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_call_argument, 2),
  [2405] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__multiple_import_repeat1, 2, .production_id = 17),
  [2407] = {.entry = {.count = 1, .reusable = true}}, SHIFT(569),
  [2409] = {.entry = {.count = 1, .reusable = true}}, SHIFT(158),
  [2411] = {.entry = {.count = 1, .reusable = false}}, SHIFT(754),
  [2413] = {.entry = {.count = 1, .reusable = true}}, SHIFT(774),
  [2415] = {.entry = {.count = 1, .reusable = true}}, SHIFT(200),
  [2417] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_call_argument, 4),
  [2419] = {.entry = {.count = 1, .reusable = true}}, SHIFT(592),
  [2421] = {.entry = {.count = 1, .reusable = true}}, SHIFT(56),
  [2423] = {.entry = {.count = 1, .reusable = true}}, SHIFT(164),
  [2425] = {.entry = {.count = 1, .reusable = true}}, SHIFT(52),
  [2427] = {.entry = {.count = 1, .reusable = true}}, SHIFT(166),
  [2429] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_enum_declaration_repeat1, 2, .production_id = 45),
  [2431] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__nameless_parameter, 2, .production_id = 25),
  [2433] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameter, 2, .production_id = 24),
  [2435] = {.entry = {.count = 1, .reusable = true}}, SHIFT(785),
  [2437] = {.entry = {.count = 1, .reusable = true}}, SHIFT(49),
  [2439] = {.entry = {.count = 1, .reusable = true}}, SHIFT(78),
  [2441] = {.entry = {.count = 1, .reusable = true}}, SHIFT(110),
  [2443] = {.entry = {.count = 1, .reusable = true}}, SHIFT(111),
  [2445] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variable_declaration_tuple, 5),
  [2447] = {.entry = {.count = 1, .reusable = true}}, SHIFT(765),
  [2449] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_any_pragma_token, 2),
  [2451] = {.entry = {.count = 1, .reusable = true}}, SHIFT(504),
  [2453] = {.entry = {.count = 1, .reusable = true}}, SHIFT(299),
  [2455] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_solidity_version_comparison_operator, 1),
  [2457] = {.entry = {.count = 1, .reusable = true}}, SHIFT(672),
  [2459] = {.entry = {.count = 1, .reusable = true}}, SHIFT(99),
  [2461] = {.entry = {.count = 1, .reusable = true}}, SHIFT(123),
  [2463] = {.entry = {.count = 1, .reusable = true}}, SHIFT(763),
  [2465] = {.entry = {.count = 1, .reusable = true}}, SHIFT(83),
  [2467] = {.entry = {.count = 1, .reusable = true}}, SHIFT(173),
  [2469] = {.entry = {.count = 1, .reusable = true}}, SHIFT(449),
  [2471] = {.entry = {.count = 1, .reusable = true}}, SHIFT(211),
  [2473] = {.entry = {.count = 1, .reusable = true}}, SHIFT(507),
  [2475] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__single_import, 2, .production_id = 9),
  [2477] = {.entry = {.count = 1, .reusable = true}}, SHIFT(289),
  [2479] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__multiple_import, 2),
  [2481] = {.entry = {.count = 1, .reusable = true}}, SHIFT(116),
  [2483] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__single_import, 2, .production_id = 10),
  [2485] = {.entry = {.count = 1, .reusable = true}}, SHIFT(53),
  [2487] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variable_declaration_tuple, 3),
  [2489] = {.entry = {.count = 1, .reusable = true}}, SHIFT(159),
  [2491] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__multiple_import, 4, .production_id = 29),
  [2493] = {.entry = {.count = 1, .reusable = true}}, SHIFT(485),
  [2495] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3),
  [2497] = {.entry = {.count = 1, .reusable = true}}, SHIFT(208),
  [2499] = {.entry = {.count = 1, .reusable = true}}, SHIFT(139),
  [2501] = {.entry = {.count = 1, .reusable = true}}, SHIFT(623),
  [2503] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__import_clause, 1, .production_id = 4),
  [2505] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__source_import, 2, .production_id = 12),
  [2507] = {.entry = {.count = 1, .reusable = true}}, SHIFT(205),
  [2509] = {.entry = {.count = 1, .reusable = true}}, SHIFT(61),
  [2511] = {.entry = {.count = 1, .reusable = true}}, SHIFT(89),
  [2513] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variable_declaration_tuple, 6),
  [2515] = {.entry = {.count = 1, .reusable = true}}, SHIFT(98),
  [2517] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__multiple_import, 5, .production_id = 29),
  [2519] = {.entry = {.count = 1, .reusable = true}}, SHIFT(171),
  [2521] = {.entry = {.count = 1, .reusable = true}}, SHIFT(458),
  [2523] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pragma_value, 1),
  [2525] = {.entry = {.count = 1, .reusable = true}}, SHIFT(183),
  [2527] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__multiple_import, 4, .production_id = 17),
  [2529] = {.entry = {.count = 1, .reusable = true}}, SHIFT(131),
  [2531] = {.entry = {.count = 1, .reusable = true}},  ACCEPT_INPUT(),
  [2533] = {.entry = {.count = 1, .reusable = true}}, SHIFT(374),
  [2535] = {.entry = {.count = 1, .reusable = true}}, SHIFT(207),
  [2537] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variable_declaration_tuple, 4),
  [2539] = {.entry = {.count = 1, .reusable = true}}, SHIFT(717),
  [2541] = {.entry = {.count = 1, .reusable = true}}, SHIFT(57),
  [2543] = {.entry = {.count = 1, .reusable = true}}, SHIFT(134),
  [2545] = {.entry = {.count = 1, .reusable = true}}, SHIFT(44),
  [2547] = {.entry = {.count = 1, .reusable = true}}, SHIFT(133),
  [2549] = {.entry = {.count = 1, .reusable = true}}, SHIFT(708),
  [2551] = {.entry = {.count = 1, .reusable = true}}, SHIFT(509),
  [2553] = {.entry = {.count = 1, .reusable = true}}, SHIFT(182),
  [2555] = {.entry = {.count = 1, .reusable = true}}, SHIFT(181),
  [2557] = {.entry = {.count = 1, .reusable = true}}, SHIFT(719),
  [2559] = {.entry = {.count = 1, .reusable = true}}, SHIFT(19),
  [2561] = {.entry = {.count = 1, .reusable = true}}, SHIFT(704),
  [2563] = {.entry = {.count = 1, .reusable = true}}, SHIFT(189),
  [2565] = {.entry = {.count = 1, .reusable = true}}, SHIFT(332),
  [2567] = {.entry = {.count = 1, .reusable = true}}, SHIFT(154),
  [2569] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_any_source_type, 1),
  [2571] = {.entry = {.count = 1, .reusable = true}}, SHIFT(491),
  [2573] = {.entry = {.count = 1, .reusable = true}}, SHIFT(58),
  [2575] = {.entry = {.count = 1, .reusable = true}}, SHIFT(141),
  [2577] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__multiple_import, 3, .production_id = 17),
  [2579] = {.entry = {.count = 1, .reusable = true}}, SHIFT(179),
  [2581] = {.entry = {.count = 1, .reusable = true}}, SHIFT(658),
  [2583] = {.entry = {.count = 1, .reusable = true}}, SHIFT(210),
  [2585] = {.entry = {.count = 1, .reusable = true}}, SHIFT(730),
  [2587] = {.entry = {.count = 1, .reusable = true}}, SHIFT(498),
  [2589] = {.entry = {.count = 1, .reusable = true}}, SHIFT(737),
  [2591] = {.entry = {.count = 1, .reusable = true}}, SHIFT(151),
  [2593] = {.entry = {.count = 1, .reusable = true}}, SHIFT(739),
  [2595] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__from_clause, 2, .production_id = 18),
  [2597] = {.entry = {.count = 1, .reusable = true}}, SHIFT(136),
  [2599] = {.entry = {.count = 1, .reusable = true}}, SHIFT(784),
  [2601] = {.entry = {.count = 1, .reusable = true}}, SHIFT(209),
  [2603] = {.entry = {.count = 1, .reusable = true}}, SHIFT(121),
  [2605] = {.entry = {.count = 1, .reusable = true}}, SHIFT(122),
  [2607] = {.entry = {.count = 1, .reusable = true}}, SHIFT(794),
  [2609] = {.entry = {.count = 1, .reusable = true}}, SHIFT(795),
  [2611] = {.entry = {.count = 1, .reusable = true}}, SHIFT(796),
};

#ifdef __cplusplus
extern "C" {
#endif
#ifdef _WIN32
#define extern __declspec(dllexport)
#endif

extern const TSLanguage *tree_sitter_solidity(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,
  };
  return &language;
}
#ifdef __cplusplus
}
#endif
