/* Automatically @generated by tree-sitter v0.25.8 */

#include "tree_sitter/parser.h"

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

#define LANGUAGE_VERSION 15
#define STATE_COUNT 977
#define LARGE_STATE_COUNT 368
#define SYMBOL_COUNT 528
#define ALIAS_COUNT 3
#define TOKEN_COUNT 329
#define EXTERNAL_TOKEN_COUNT 0
#define FIELD_COUNT 35
#define MAX_ALIAS_SEQUENCE_LENGTH 12
#define MAX_RESERVED_WORD_SET_SIZE 0
#define PRODUCTION_ID_COUNT 93
#define SUPERTYPE_COUNT 0

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

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_layout] = "layout",
  [anon_sym_at] = "at",
  [anon_sym_struct] = "struct",
  [anon_sym_enum] = "enum",
  [anon_sym_event] = "event",
  [anon_sym_anonymous] = "anonymous",
  [anon_sym_indexed] = "indexed",
  [anon_sym_AMP] = "&",
  [anon_sym_PIPE] = "|",
  [anon_sym_PLUS] = "+",
  [anon_sym_SLASH] = "/",
  [anon_sym_PERCENT] = "%",
  [anon_sym_EQ_EQ] = "==",
  [anon_sym_BANG_EQ] = "!=",
  [anon_sym_using] = "using",
  [anon_sym_for] = "for",
  [anon_sym_global] = "global",
  [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_hex] = "hex",
  [anon_sym_DQUOTE] = "\"",
  [anon_sym__] = "_",
  [anon_sym_SQUOTE] = "'",
  [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_mcopy] = "mcopy",
  [anon_sym_tload] = "tload",
  [anon_sym_tstore] = "tstore",
  [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_blobhash] = "blobhash",
  [anon_sym_basefee] = "basefee",
  [anon_sym_blobfee] = "blobfee",
  [anon_sym_coinbase] = "coinbase",
  [anon_sym_timestamp] = "timestamp",
  [anon_sym_number] = "number",
  [anon_sym_difficulty] = "difficulty",
  [anon_sym_gaslimit] = "gaslimit",
  [anon_sym_prevrandao] = "prevrandao",
  [anon_sym_blobbasefee] = "blobbasefee",
  [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",
  [anon_sym_transient] = "transient",
  [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_LT_LT] = "<<",
  [anon_sym_GT_GT] = ">>",
  [anon_sym_STAR_STAR] = "**",
  [anon_sym_delete] = "delete",
  [anon_sym_BANG] = "!",
  [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_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",
  [anon_sym_SEMI] = ";",
  [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",
  [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_layout_specifier] = "layout_specifier",
  [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_struct_body] = "struct_body",
  [sym_enum_declaration] = "enum_declaration",
  [sym_enum_body] = "enum_body",
  [sym_event_definition] = "event_definition",
  [sym__event_parameter_list] = "_event_parameter_list",
  [sym_event_parameter] = "event_parameter",
  [sym_user_definable_operator] = "user_definable_operator",
  [sym_using_directive] = "using_directive",
  [sym_using_alias] = "using_alias",
  [sym_any_source_type] = "any_source_type",
  [sym_statement] = "statement",
  [sym_assembly_statement] = "assembly_statement",
  [sym_assembly_flags] = "assembly_flags",
  [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_hex_string_literal] = "yul_hex_string_literal",
  [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_state_location] = "state_location",
  [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__semicolon] = "_semicolon",
  [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_contract_declaration_repeat1] = "contract_declaration_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_body_repeat1] = "struct_body_repeat1",
  [aux_sym_enum_body_repeat1] = "enum_body_repeat1",
  [aux_sym__event_parameter_list_repeat1] = "_event_parameter_list_repeat1",
  [aux_sym_using_directive_repeat1] = "using_directive_repeat1",
  [aux_sym_assembly_statement_repeat1] = "assembly_statement_repeat1",
  [aux_sym_assembly_flags_repeat1] = "assembly_flags_repeat1",
  [aux_sym_yul_path_repeat1] = "yul_path_repeat1",
  [aux_sym_yul_hex_string_literal_repeat1] = "yul_hex_string_literal_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_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_layout] = anon_sym_layout,
  [anon_sym_at] = anon_sym_at,
  [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_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_EQ_EQ] = anon_sym_EQ_EQ,
  [anon_sym_BANG_EQ] = anon_sym_BANG_EQ,
  [anon_sym_using] = anon_sym_using,
  [anon_sym_for] = anon_sym_for,
  [anon_sym_global] = anon_sym_global,
  [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_hex] = anon_sym_hex,
  [anon_sym_DQUOTE] = anon_sym_DQUOTE,
  [anon_sym__] = anon_sym__,
  [anon_sym_SQUOTE] = anon_sym_SQUOTE,
  [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_mcopy] = anon_sym_mcopy,
  [anon_sym_tload] = anon_sym_tload,
  [anon_sym_tstore] = anon_sym_tstore,
  [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_blobhash] = anon_sym_blobhash,
  [anon_sym_basefee] = anon_sym_basefee,
  [anon_sym_blobfee] = anon_sym_blobfee,
  [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,
  [anon_sym_prevrandao] = anon_sym_prevrandao,
  [anon_sym_blobbasefee] = anon_sym_blobbasefee,
  [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,
  [anon_sym_transient] = anon_sym_transient,
  [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_LT_LT] = anon_sym_LT_LT,
  [anon_sym_GT_GT] = anon_sym_GT_GT,
  [anon_sym_STAR_STAR] = anon_sym_STAR_STAR,
  [anon_sym_delete] = anon_sym_delete,
  [anon_sym_BANG] = anon_sym_BANG,
  [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_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,
  [anon_sym_SEMI] = anon_sym_SEMI,
  [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,
  [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_layout_specifier] = sym_layout_specifier,
  [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_struct_body] = sym_struct_body,
  [sym_enum_declaration] = sym_enum_declaration,
  [sym_enum_body] = sym_enum_body,
  [sym_event_definition] = sym_event_definition,
  [sym__event_parameter_list] = sym__event_parameter_list,
  [sym_event_parameter] = sym_event_parameter,
  [sym_user_definable_operator] = sym_user_definable_operator,
  [sym_using_directive] = sym_using_directive,
  [sym_using_alias] = sym_using_alias,
  [sym_any_source_type] = sym_any_source_type,
  [sym_statement] = sym_statement,
  [sym_assembly_statement] = sym_assembly_statement,
  [sym_assembly_flags] = sym_assembly_flags,
  [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_hex_string_literal] = sym_yul_hex_string_literal,
  [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_state_location] = sym_state_location,
  [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__semicolon] = sym__semicolon,
  [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_contract_declaration_repeat1] = aux_sym_contract_declaration_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_body_repeat1] = aux_sym_struct_body_repeat1,
  [aux_sym_enum_body_repeat1] = aux_sym_enum_body_repeat1,
  [aux_sym__event_parameter_list_repeat1] = aux_sym__event_parameter_list_repeat1,
  [aux_sym_using_directive_repeat1] = aux_sym_using_directive_repeat1,
  [aux_sym_assembly_statement_repeat1] = aux_sym_assembly_statement_repeat1,
  [aux_sym_assembly_flags_repeat1] = aux_sym_assembly_flags_repeat1,
  [aux_sym_yul_path_repeat1] = aux_sym_yul_path_repeat1,
  [aux_sym_yul_hex_string_literal_repeat1] = aux_sym_yul_hex_string_literal_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_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_layout] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_at] = {
    .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_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_EQ_EQ] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_BANG_EQ] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_using] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_for] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_global] = {
    .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_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,
  },
  [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_mcopy] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_tload] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_tstore] = {
    .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_blobhash] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_basefee] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_blobfee] = {
    .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,
  },
  [anon_sym_prevrandao] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_blobbasefee] = {
    .visible = true,
    .named = false,
  },
  [sym_unchecked] = {
    .visible = true,
    .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,
  },
  [anon_sym_transient] = {
    .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_LT_LT] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_GT_GT] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_STAR_STAR] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_delete] = {
    .visible = true,
    .named = false,
  },
  [anon_sym_BANG] = {
    .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_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,
  },
  [anon_sym_SEMI] = {
    .visible = true,
    .named = false,
  },
  [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,
  },
  [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_layout_specifier] = {
    .visible = true,
    .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_struct_body] = {
    .visible = true,
    .named = true,
  },
  [sym_enum_declaration] = {
    .visible = true,
    .named = true,
  },
  [sym_enum_body] = {
    .visible = true,
    .named = true,
  },
  [sym_event_definition] = {
    .visible = true,
    .named = true,
  },
  [sym__event_parameter_list] = {
    .visible = false,
    .named = true,
  },
  [sym_event_parameter] = {
    .visible = true,
    .named = true,
  },
  [sym_user_definable_operator] = {
    .visible = true,
    .named = true,
  },
  [sym_using_directive] = {
    .visible = true,
    .named = true,
  },
  [sym_using_alias] = {
    .visible = true,
    .named = true,
  },
  [sym_any_source_type] = {
    .visible = true,
    .named = true,
  },
  [sym_statement] = {
    .visible = true,
    .named = true,
  },
  [sym_assembly_statement] = {
    .visible = true,
    .named = true,
  },
  [sym_assembly_flags] = {
    .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_hex_string_literal] = {
    .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_state_location] = {
    .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 = true,
    .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__semicolon] = {
    .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_contract_declaration_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_body_repeat1] = {
    .visible = false,
    .named = false,
  },
  [aux_sym_enum_body_repeat1] = {
    .visible = false,
    .named = false,
  },
  [aux_sym__event_parameter_list_repeat1] = {
    .visible = false,
    .named = false,
  },
  [aux_sym_using_directive_repeat1] = {
    .visible = false,
    .named = false,
  },
  [aux_sym_assembly_statement_repeat1] = {
    .visible = false,
    .named = false,
  },
  [aux_sym_assembly_flags_repeat1] = {
    .visible = false,
    .named = false,
  },
  [aux_sym_yul_path_repeat1] = {
    .visible = false,
    .named = false,
  },
  [aux_sym_yul_hex_string_literal_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_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 ts_field_identifiers {
  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_identifier = 16,
  field_key_type = 17,
  field_left = 18,
  field_location = 19,
  field_name = 20,
  field_object = 21,
  field_operator = 22,
  field_parameters = 23,
  field_property = 24,
  field_return_type = 25,
  field_right = 26,
  field_source = 27,
  field_to = 28,
  field_type = 29,
  field_update = 30,
  field_value = 31,
  field_value_identifier = 32,
  field_value_type = 33,
  field_version_constraint = 34,
  field_visibility = 35,
};

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_identifier] = "key_identifier",
  [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_identifier] = "value_identifier",
  [field_value_type] = "value_type",
  [field_version_constraint] = "version_constraint",
  [field_visibility] = "visibility",
};

static const TSMapSlice ts_field_map_slices[PRODUCTION_ID_COUNT] = {
  [1] = {.index = 0, .length = 1},
  [2] = {.index = 1, .length = 4},
  [3] = {.index = 5, .length = 1},
  [4] = {.index = 6, .length = 2},
  [5] = {.index = 8, .length = 1},
  [6] = {.index = 9, .length = 1},
  [7] = {.index = 10, .length = 1},
  [8] = {.index = 11, .length = 1},
  [9] = {.index = 12, .length = 1},
  [10] = {.index = 13, .length = 2},
  [11] = {.index = 15, .length = 2},
  [12] = {.index = 17, .length = 2},
  [13] = {.index = 19, .length = 2},
  [14] = {.index = 21, .length = 1},
  [15] = {.index = 22, .length = 2},
  [16] = {.index = 24, .length = 1},
  [17] = {.index = 25, .length = 2},
  [18] = {.index = 27, .length = 1},
  [19] = {.index = 28, .length = 3},
  [20] = {.index = 31, .length = 2},
  [21] = {.index = 33, .length = 1},
  [22] = {.index = 34, .length = 2},
  [23] = {.index = 36, .length = 1},
  [24] = {.index = 37, .length = 2},
  [25] = {.index = 39, .length = 2},
  [26] = {.index = 41, .length = 2},
  [27] = {.index = 43, .length = 2},
  [28] = {.index = 45, .length = 1},
  [29] = {.index = 46, .length = 4},
  [30] = {.index = 50, .length = 4},
  [31] = {.index = 54, .length = 2},
  [32] = {.index = 56, .length = 1},
  [33] = {.index = 57, .length = 1},
  [34] = {.index = 58, .length = 2},
  [36] = {.index = 60, .length = 1},
  [37] = {.index = 61, .length = 3},
  [38] = {.index = 64, .length = 3},
  [39] = {.index = 67, .length = 2},
  [40] = {.index = 69, .length = 2},
  [41] = {.index = 71, .length = 2},
  [42] = {.index = 73, .length = 3},
  [43] = {.index = 76, .length = 2},
  [44] = {.index = 78, .length = 1},
  [45] = {.index = 79, .length = 1},
  [46] = {.index = 80, .length = 4},
  [47] = {.index = 84, .length = 2},
  [48] = {.index = 86, .length = 3},
  [49] = {.index = 89, .length = 2},
  [50] = {.index = 91, .length = 2},
  [51] = {.index = 93, .length = 2},
  [52] = {.index = 95, .length = 3},
  [53] = {.index = 98, .length = 2},
  [54] = {.index = 100, .length = 1},
  [55] = {.index = 101, .length = 4},
  [56] = {.index = 105, .length = 1},
  [58] = {.index = 106, .length = 1},
  [59] = {.index = 107, .length = 2},
  [60] = {.index = 109, .length = 3},
  [61] = {.index = 112, .length = 3},
  [62] = {.index = 115, .length = 2},
  [63] = {.index = 117, .length = 2},
  [64] = {.index = 119, .length = 2},
  [65] = {.index = 121, .length = 1},
  [66] = {.index = 122, .length = 3},
  [67] = {.index = 125, .length = 1},
  [68] = {.index = 126, .length = 1},
  [69] = {.index = 106, .length = 1},
  [70] = {.index = 127, .length = 2},
  [71] = {.index = 129, .length = 1},
  [72] = {.index = 130, .length = 4},
  [73] = {.index = 134, .length = 3},
  [74] = {.index = 137, .length = 1},
  [75] = {.index = 138, .length = 5},
  [76] = {.index = 143, .length = 1},
  [77] = {.index = 144, .length = 2},
  [78] = {.index = 146, .length = 2},
  [79] = {.index = 148, .length = 1},
  [80] = {.index = 149, .length = 3},
  [81] = {.index = 152, .length = 3},
  [82] = {.index = 155, .length = 2},
  [83] = {.index = 157, .length = 2},
  [84] = {.index = 159, .length = 4},
  [85] = {.index = 163, .length = 4},
  [86] = {.index = 167, .length = 3},
  [87] = {.index = 170, .length = 4},
  [88] = {.index = 174, .length = 2},
  [89] = {.index = 176, .length = 4},
  [90] = {.index = 180, .length = 5},
  [91] = {.index = 185, .length = 5},
  [92] = {.index = 190, .length = 6},
};

static const TSFieldMapEntry ts_field_map_entries[] = {
  [0] =
    {field_parameters, 0, .inherited = true},
  [1] =
    {field_key_identifier, 0, .inherited = true},
    {field_key_type, 0, .inherited = true},
    {field_value_identifier, 0, .inherited = true},
    {field_value_type, 0, .inherited = true},
  [5] =
    {field_import_name, 0},
  [6] =
    {field_alias, 0, .inherited = true},
    {field_import_name, 0, .inherited = true},
  [8] =
    {field_source, 0},
  [9] =
    {field_parameters, 1},
  [10] =
    {field_version_constraint, 0},
  [11] =
    {field_version_constraint, 1, .inherited = true},
  [12] =
    {field_alias, 1, .inherited = true},
  [13] =
    {field_alias, 1, .inherited = true},
    {field_import_name, 0},
  [15] =
    {field_alias, 1, .inherited = true},
    {field_source, 1, .inherited = true},
  [17] =
    {field_alias, 1, .inherited = true},
    {field_source, 0},
  [19] =
    {field_body, 2},
    {field_name, 1},
  [21] =
    {field_type, 0},
  [22] =
    {field_version_constraint, 0, .inherited = true},
    {field_version_constraint, 1, .inherited = true},
  [24] =
    {field_alias, 1},
  [25] =
    {field_alias, 1, .inherited = true},
    {field_import_name, 1, .inherited = true},
  [27] =
    {field_source, 1},
  [28] =
    {field_alias, 1, .inherited = true},
    {field_import_name, 1, .inherited = true},
    {field_source, 2, .inherited = true},
  [31] =
    {field_body, 3},
    {field_name, 2},
  [33] =
    {field_ancestor, 0},
  [34] =
    {field_body, 3},
    {field_name, 1},
  [36] =
    {field_name, 1},
  [37] =
    {field_name, 1},
    {field_type, 0},
  [39] =
    {field_location, 1},
    {field_type, 0},
  [41] =
    {field_argument, 1},
    {field_operator, 0},
  [43] =
    {field_argument, 0},
    {field_operator, 1},
  [45] =
    {field_function, 0},
  [46] =
    {field_alias, 1, .inherited = true},
    {field_alias, 2, .inherited = true},
    {field_import_name, 1, .inherited = true},
    {field_import_name, 2, .inherited = true},
  [50] =
    {field_alias, 0, .inherited = true},
    {field_alias, 1, .inherited = true},
    {field_import_name, 0, .inherited = true},
    {field_import_name, 1, .inherited = true},
  [54] =
    {field_body, 4},
    {field_name, 2},
  [56] =
    {field_visibility, 0},
  [57] =
    {field_location, 0},
  [58] =
    {field_ancestor, 0},
    {field_ancestor_arguments, 1},
  [60] =
    {field_source, 3},
  [61] =
    {field_location, 1},
    {field_name, 2},
    {field_type, 0},
  [64] =
    {field_body, 4},
    {field_name, 1},
    {field_return_type, 3},
  [67] =
    {field_name, 1},
    {field_return_type, 3},
  [69] =
    {field_body, 4},
    {field_name, 1},
  [71] =
    {field_object, 0},
    {field_property, 2},
  [73] =
    {field_left, 0},
    {field_operator, 1},
    {field_right, 2},
  [76] =
    {field_left, 0},
    {field_right, 2},
  [78] =
    {field_base, 0},
  [79] =
    {field_body, 2},
  [80] =
    {field_location, 0, .inherited = true},
    {field_location, 1, .inherited = true},
    {field_visibility, 0, .inherited = true},
    {field_visibility, 1, .inherited = true},
  [84] =
    {field_name, 2},
    {field_type, 0},
  [86] =
    {field_body, 5},
    {field_name, 1},
    {field_return_type, 4},
  [89] =
    {field_name, 1},
    {field_return_type, 4},
  [91] =
    {field_location, 2, .inherited = true},
    {field_type, 2, .inherited = true},
  [93] =
    {field_key_type, 2},
    {field_value_type, 4},
  [95] =
    {field_name, 2},
    {field_type, 0},
    {field_value, 4},
  [98] =
    {field_base, 0},
    {field_index, 2},
  [100] =
    {field_body, 3},
  [101] =
    {field_location, 1, .inherited = true},
    {field_name, 2},
    {field_type, 0},
    {field_visibility, 1, .inherited = true},
  [105] =
    {field_source, 5},
  [106] =
    {field_error, 1},
  [107] =
    {field_location, 1, .inherited = true},
    {field_type, 1, .inherited = true},
  [109] =
    {field_key_type, 2},
    {field_value_identifier, 5},
    {field_value_type, 4},
  [112] =
    {field_key_identifier, 3},
    {field_key_type, 2},
    {field_value_type, 5},
  [115] =
    {field_name, 0},
    {field_value, 2},
  [117] =
    {field_base, 0},
    {field_to, 3},
  [119] =
    {field_base, 0},
    {field_from, 2},
  [121] =
    {field_body, 4},
  [122] =
    {field_name, 1},
    {field_type, 0},
    {field_value, 3},
  [125] =
    {field_source, 6},
  [126] =
    {field_left, 1},
  [127] =
    {field_attempt, 1},
    {field_body, 2},
  [129] =
    {field_value, 2},
  [130] =
    {field_key_identifier, 3},
    {field_key_type, 2},
    {field_value_identifier, 6},
    {field_value_type, 5},
  [134] =
    {field_base, 0},
    {field_from, 2},
    {field_to, 4},
  [137] =
    {field_body, 5},
  [138] =
    {field_location, 1, .inherited = true},
    {field_name, 2},
    {field_type, 0},
    {field_value, 4},
    {field_visibility, 1, .inherited = true},
  [143] =
    {field_source, 7},
  [144] =
    {field_left, 1},
    {field_left, 2},
  [146] =
    {field_body, 4},
    {field_condition, 2},
  [148] =
    {field_body, 1},
  [149] =
    {field_body, 5},
    {field_condition, 3},
    {field_initial, 2},
  [152] =
    {field_left, 1},
    {field_left, 2},
    {field_left, 3},
  [155] =
    {field_left, 1},
    {field_right, 3},
  [157] =
    {field_attempt, 1},
    {field_body, 4},
  [159] =
    {field_body, 6},
    {field_condition, 3},
    {field_initial, 2},
    {field_update, 4},
  [163] =
    {field_left, 1},
    {field_left, 2},
    {field_left, 3},
    {field_left, 4},
  [167] =
    {field_left, 1},
    {field_left, 2},
    {field_right, 4},
  [170] =
    {field_body, 4},
    {field_body, 6},
    {field_condition, 2},
    {field_else, 5},
  [174] =
    {field_body, 1},
    {field_condition, 4},
  [176] =
    {field_left, 1},
    {field_left, 2},
    {field_left, 3},
    {field_right, 5},
  [180] =
    {field_left, 1},
    {field_left, 2},
    {field_left, 3},
    {field_left, 4},
    {field_left, 5},
  [185] =
    {field_left, 1},
    {field_left, 2},
    {field_left, 3},
    {field_left, 4},
    {field_right, 6},
  [190] =
    {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},
  [35] = {
    [1] = alias_sym_enum_value,
  },
  [36] = {
    [1] = alias_sym_type_alias,
  },
  [57] = {
    [1] = alias_sym_revert_arguments,
  },
  [69] = {
    [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 const TSStateId ts_primary_state_ids[STATE_COUNT] = {
  [0] = 0,
  [1] = 1,
  [2] = 2,
  [3] = 3,
  [4] = 4,
  [5] = 5,
  [6] = 6,
  [7] = 7,
  [8] = 8,
  [9] = 9,
  [10] = 3,
  [11] = 7,
  [12] = 12,
  [13] = 13,
  [14] = 14,
  [15] = 15,
  [16] = 16,
  [17] = 14,
  [18] = 13,
  [19] = 19,
  [20] = 15,
  [21] = 16,
  [22] = 19,
  [23] = 12,
  [24] = 24,
  [25] = 24,
  [26] = 26,
  [27] = 27,
  [28] = 28,
  [29] = 29,
  [30] = 30,
  [31] = 31,
  [32] = 32,
  [33] = 33,
  [34] = 33,
  [35] = 35,
  [36] = 35,
  [37] = 37,
  [38] = 38,
  [39] = 39,
  [40] = 39,
  [41] = 41,
  [42] = 42,
  [43] = 43,
  [44] = 44,
  [45] = 45,
  [46] = 46,
  [47] = 47,
  [48] = 48,
  [49] = 49,
  [50] = 45,
  [51] = 51,
  [52] = 52,
  [53] = 53,
  [54] = 54,
  [55] = 55,
  [56] = 56,
  [57] = 57,
  [58] = 58,
  [59] = 59,
  [60] = 60,
  [61] = 61,
  [62] = 62,
  [63] = 63,
  [64] = 64,
  [65] = 65,
  [66] = 66,
  [67] = 67,
  [68] = 68,
  [69] = 69,
  [70] = 70,
  [71] = 71,
  [72] = 72,
  [73] = 73,
  [74] = 74,
  [75] = 75,
  [76] = 76,
  [77] = 77,
  [78] = 78,
  [79] = 79,
  [80] = 54,
  [81] = 73,
  [82] = 82,
  [83] = 69,
  [84] = 53,
  [85] = 70,
  [86] = 86,
  [87] = 87,
  [88] = 88,
  [89] = 89,
  [90] = 90,
  [91] = 91,
  [92] = 92,
  [93] = 93,
  [94] = 94,
  [95] = 95,
  [96] = 96,
  [97] = 97,
  [98] = 98,
  [99] = 99,
  [100] = 100,
  [101] = 101,
  [102] = 102,
  [103] = 103,
  [104] = 104,
  [105] = 105,
  [106] = 106,
  [107] = 107,
  [108] = 108,
  [109] = 109,
  [110] = 110,
  [111] = 111,
  [112] = 112,
  [113] = 113,
  [114] = 114,
  [115] = 115,
  [116] = 116,
  [117] = 117,
  [118] = 118,
  [119] = 119,
  [120] = 120,
  [121] = 121,
  [122] = 122,
  [123] = 123,
  [124] = 124,
  [125] = 125,
  [126] = 126,
  [127] = 127,
  [128] = 128,
  [129] = 129,
  [130] = 130,
  [131] = 130,
  [132] = 132,
  [133] = 133,
  [134] = 134,
  [135] = 135,
  [136] = 136,
  [137] = 137,
  [138] = 138,
  [139] = 139,
  [140] = 140,
  [141] = 141,
  [142] = 142,
  [143] = 132,
  [144] = 144,
  [145] = 145,
  [146] = 146,
  [147] = 134,
  [148] = 148,
  [149] = 142,
  [150] = 135,
  [151] = 139,
  [152] = 152,
  [153] = 145,
  [154] = 146,
  [155] = 148,
  [156] = 156,
  [157] = 157,
  [158] = 158,
  [159] = 159,
  [160] = 160,
  [161] = 161,
  [162] = 162,
  [163] = 163,
  [164] = 164,
  [165] = 165,
  [166] = 166,
  [167] = 167,
  [168] = 168,
  [169] = 169,
  [170] = 170,
  [171] = 171,
  [172] = 172,
  [173] = 173,
  [174] = 174,
  [175] = 175,
  [176] = 176,
  [177] = 177,
  [178] = 178,
  [179] = 179,
  [180] = 180,
  [181] = 181,
  [182] = 182,
  [183] = 183,
  [184] = 184,
  [185] = 185,
  [186] = 186,
  [187] = 187,
  [188] = 188,
  [189] = 189,
  [190] = 190,
  [191] = 191,
  [192] = 192,
  [193] = 193,
  [194] = 194,
  [195] = 195,
  [196] = 196,
  [197] = 197,
  [198] = 198,
  [199] = 199,
  [200] = 200,
  [201] = 201,
  [202] = 202,
  [203] = 203,
  [204] = 204,
  [205] = 205,
  [206] = 206,
  [207] = 207,
  [208] = 208,
  [209] = 209,
  [210] = 199,
  [211] = 211,
  [212] = 212,
  [213] = 213,
  [214] = 214,
  [215] = 168,
  [216] = 169,
  [217] = 176,
  [218] = 157,
  [219] = 158,
  [220] = 192,
  [221] = 203,
  [222] = 204,
  [223] = 175,
  [224] = 171,
  [225] = 197,
  [226] = 201,
  [227] = 227,
  [228] = 228,
  [229] = 161,
  [230] = 165,
  [231] = 166,
  [232] = 167,
  [233] = 174,
  [234] = 156,
  [235] = 179,
  [236] = 194,
  [237] = 198,
  [238] = 200,
  [239] = 178,
  [240] = 187,
  [241] = 195,
  [242] = 162,
  [243] = 163,
  [244] = 164,
  [245] = 245,
  [246] = 246,
  [247] = 172,
  [248] = 173,
  [249] = 249,
  [250] = 205,
  [251] = 251,
  [252] = 252,
  [253] = 253,
  [254] = 254,
  [255] = 255,
  [256] = 256,
  [257] = 257,
  [258] = 258,
  [259] = 259,
  [260] = 260,
  [261] = 261,
  [262] = 262,
  [263] = 263,
  [264] = 264,
  [265] = 265,
  [266] = 266,
  [267] = 267,
  [268] = 268,
  [269] = 269,
  [270] = 270,
  [271] = 271,
  [272] = 272,
  [273] = 272,
  [274] = 274,
  [275] = 275,
  [276] = 276,
  [277] = 277,
  [278] = 278,
  [279] = 279,
  [280] = 280,
  [281] = 281,
  [282] = 282,
  [283] = 283,
  [284] = 284,
  [285] = 285,
  [286] = 286,
  [287] = 287,
  [288] = 288,
  [289] = 289,
  [290] = 290,
  [291] = 291,
  [292] = 292,
  [293] = 293,
  [294] = 294,
  [295] = 295,
  [296] = 296,
  [297] = 297,
  [298] = 298,
  [299] = 299,
  [300] = 300,
  [301] = 301,
  [302] = 302,
  [303] = 303,
  [304] = 304,
  [305] = 305,
  [306] = 306,
  [307] = 307,
  [308] = 308,
  [309] = 309,
  [310] = 310,
  [311] = 311,
  [312] = 312,
  [313] = 313,
  [314] = 314,
  [315] = 315,
  [316] = 316,
  [317] = 317,
  [318] = 318,
  [319] = 319,
  [320] = 320,
  [321] = 321,
  [322] = 322,
  [323] = 323,
  [324] = 324,
  [325] = 325,
  [326] = 326,
  [327] = 327,
  [328] = 328,
  [329] = 329,
  [330] = 330,
  [331] = 331,
  [332] = 332,
  [333] = 333,
  [334] = 334,
  [335] = 335,
  [336] = 336,
  [337] = 337,
  [338] = 338,
  [339] = 339,
  [340] = 340,
  [341] = 341,
  [342] = 342,
  [343] = 343,
  [344] = 344,
  [345] = 345,
  [346] = 346,
  [347] = 347,
  [348] = 348,
  [349] = 349,
  [350] = 350,
  [351] = 351,
  [352] = 352,
  [353] = 353,
  [354] = 354,
  [355] = 355,
  [356] = 356,
  [357] = 357,
  [358] = 358,
  [359] = 359,
  [360] = 360,
  [361] = 361,
  [362] = 362,
  [363] = 363,
  [364] = 364,
  [365] = 365,
  [366] = 366,
  [367] = 367,
  [368] = 368,
  [369] = 369,
  [370] = 370,
  [371] = 371,
  [372] = 372,
  [373] = 373,
  [374] = 374,
  [375] = 375,
  [376] = 376,
  [377] = 377,
  [378] = 378,
  [379] = 379,
  [380] = 380,
  [381] = 381,
  [382] = 382,
  [383] = 383,
  [384] = 384,
  [385] = 385,
  [386] = 386,
  [387] = 387,
  [388] = 388,
  [389] = 389,
  [390] = 390,
  [391] = 347,
  [392] = 392,
  [393] = 346,
  [394] = 394,
  [395] = 395,
  [396] = 396,
  [397] = 397,
  [398] = 398,
  [399] = 399,
  [400] = 400,
  [401] = 401,
  [402] = 402,
  [403] = 403,
  [404] = 404,
  [405] = 405,
  [406] = 406,
  [407] = 407,
  [408] = 408,
  [409] = 409,
  [410] = 410,
  [411] = 411,
  [412] = 412,
  [413] = 413,
  [414] = 414,
  [415] = 415,
  [416] = 416,
  [417] = 417,
  [418] = 418,
  [419] = 419,
  [420] = 420,
  [421] = 421,
  [422] = 422,
  [423] = 423,
  [424] = 424,
  [425] = 425,
  [426] = 426,
  [427] = 427,
  [428] = 428,
  [429] = 429,
  [430] = 430,
  [431] = 431,
  [432] = 432,
  [433] = 433,
  [434] = 434,
  [435] = 435,
  [436] = 436,
  [437] = 437,
  [438] = 438,
  [439] = 439,
  [440] = 440,
  [441] = 441,
  [442] = 442,
  [443] = 443,
  [444] = 444,
  [445] = 445,
  [446] = 446,
  [447] = 447,
  [448] = 448,
  [449] = 449,
  [450] = 450,
  [451] = 451,
  [452] = 452,
  [453] = 453,
  [454] = 454,
  [455] = 455,
  [456] = 456,
  [457] = 457,
  [458] = 458,
  [459] = 459,
  [460] = 460,
  [461] = 461,
  [462] = 462,
  [463] = 463,
  [464] = 464,
  [465] = 465,
  [466] = 466,
  [467] = 467,
  [468] = 468,
  [469] = 469,
  [470] = 465,
  [471] = 471,
  [472] = 472,
  [473] = 473,
  [474] = 474,
  [475] = 475,
  [476] = 474,
  [477] = 477,
  [478] = 477,
  [479] = 472,
  [480] = 480,
  [481] = 481,
  [482] = 482,
  [483] = 483,
  [484] = 484,
  [485] = 485,
  [486] = 486,
  [487] = 487,
  [488] = 488,
  [489] = 484,
  [490] = 488,
  [491] = 491,
  [492] = 492,
  [493] = 493,
  [494] = 494,
  [495] = 495,
  [496] = 492,
  [497] = 486,
  [498] = 494,
  [499] = 495,
  [500] = 500,
  [501] = 501,
  [502] = 502,
  [503] = 501,
  [504] = 504,
  [505] = 392,
  [506] = 506,
  [507] = 507,
  [508] = 508,
  [509] = 509,
  [510] = 508,
  [511] = 509,
  [512] = 512,
  [513] = 513,
  [514] = 514,
  [515] = 515,
  [516] = 516,
  [517] = 517,
  [518] = 518,
  [519] = 519,
  [520] = 520,
  [521] = 521,
  [522] = 522,
  [523] = 523,
  [524] = 524,
  [525] = 525,
  [526] = 526,
  [527] = 527,
  [528] = 528,
  [529] = 529,
  [530] = 530,
  [531] = 531,
  [532] = 532,
  [533] = 533,
  [534] = 534,
  [535] = 535,
  [536] = 536,
  [537] = 537,
  [538] = 538,
  [539] = 539,
  [540] = 540,
  [541] = 541,
  [542] = 542,
  [543] = 543,
  [544] = 544,
  [545] = 545,
  [546] = 546,
  [547] = 547,
  [548] = 548,
  [549] = 549,
  [550] = 550,
  [551] = 551,
  [552] = 552,
  [553] = 553,
  [554] = 554,
  [555] = 555,
  [556] = 556,
  [557] = 557,
  [558] = 558,
  [559] = 559,
  [560] = 560,
  [561] = 558,
  [562] = 562,
  [563] = 563,
  [564] = 564,
  [565] = 565,
  [566] = 566,
  [567] = 567,
  [568] = 568,
  [569] = 569,
  [570] = 559,
  [571] = 571,
  [572] = 572,
  [573] = 563,
  [574] = 564,
  [575] = 571,
  [576] = 576,
  [577] = 576,
  [578] = 578,
  [579] = 579,
  [580] = 580,
  [581] = 581,
  [582] = 582,
  [583] = 583,
  [584] = 584,
  [585] = 585,
  [586] = 586,
  [587] = 587,
  [588] = 588,
  [589] = 589,
  [590] = 590,
  [591] = 591,
  [592] = 592,
  [593] = 593,
  [594] = 594,
  [595] = 595,
  [596] = 596,
  [597] = 597,
  [598] = 598,
  [599] = 599,
  [600] = 600,
  [601] = 601,
  [602] = 602,
  [603] = 603,
  [604] = 604,
  [605] = 588,
  [606] = 606,
  [607] = 607,
  [608] = 608,
  [609] = 609,
  [610] = 610,
  [611] = 611,
  [612] = 612,
  [613] = 613,
  [614] = 614,
  [615] = 615,
  [616] = 616,
  [617] = 617,
  [618] = 618,
  [619] = 591,
  [620] = 620,
  [621] = 621,
  [622] = 622,
  [623] = 607,
  [624] = 624,
  [625] = 586,
  [626] = 626,
  [627] = 627,
  [628] = 627,
  [629] = 629,
  [630] = 630,
  [631] = 631,
  [632] = 620,
  [633] = 629,
  [634] = 634,
  [635] = 635,
  [636] = 636,
  [637] = 637,
  [638] = 638,
  [639] = 639,
  [640] = 589,
  [641] = 641,
  [642] = 642,
  [643] = 643,
  [644] = 644,
  [645] = 645,
  [646] = 646,
  [647] = 647,
  [648] = 648,
  [649] = 649,
  [650] = 650,
  [651] = 651,
  [652] = 652,
  [653] = 653,
  [654] = 654,
  [655] = 655,
  [656] = 656,
  [657] = 657,
  [658] = 658,
  [659] = 659,
  [660] = 660,
  [661] = 661,
  [662] = 662,
  [663] = 663,
  [664] = 664,
  [665] = 665,
  [666] = 666,
  [667] = 667,
  [668] = 668,
  [669] = 669,
  [670] = 670,
  [671] = 671,
  [672] = 672,
  [673] = 673,
  [674] = 674,
  [675] = 675,
  [676] = 676,
  [677] = 677,
  [678] = 678,
  [679] = 679,
  [680] = 680,
  [681] = 681,
  [682] = 682,
  [683] = 683,
  [684] = 684,
  [685] = 685,
  [686] = 686,
  [687] = 687,
  [688] = 688,
  [689] = 689,
  [690] = 690,
  [691] = 691,
  [692] = 692,
  [693] = 693,
  [694] = 694,
  [695] = 695,
  [696] = 696,
  [697] = 697,
  [698] = 698,
  [699] = 699,
  [700] = 700,
  [701] = 701,
  [702] = 702,
  [703] = 703,
  [704] = 704,
  [705] = 705,
  [706] = 706,
  [707] = 707,
  [708] = 708,
  [709] = 693,
  [710] = 710,
  [711] = 711,
  [712] = 712,
  [713] = 711,
  [714] = 714,
  [715] = 715,
  [716] = 716,
  [717] = 717,
  [718] = 718,
  [719] = 719,
  [720] = 720,
  [721] = 721,
  [722] = 722,
  [723] = 723,
  [724] = 724,
  [725] = 725,
  [726] = 726,
  [727] = 727,
  [728] = 728,
  [729] = 729,
  [730] = 730,
  [731] = 731,
  [732] = 732,
  [733] = 731,
  [734] = 734,
  [735] = 735,
  [736] = 683,
  [737] = 737,
  [738] = 738,
  [739] = 739,
  [740] = 740,
  [741] = 741,
  [742] = 742,
  [743] = 743,
  [744] = 744,
  [745] = 745,
  [746] = 746,
  [747] = 643,
  [748] = 707,
  [749] = 749,
  [750] = 750,
  [751] = 717,
  [752] = 752,
  [753] = 753,
  [754] = 754,
  [755] = 728,
  [756] = 722,
  [757] = 757,
  [758] = 758,
  [759] = 759,
  [760] = 696,
  [761] = 674,
  [762] = 762,
  [763] = 763,
  [764] = 750,
  [765] = 765,
  [766] = 766,
  [767] = 767,
  [768] = 768,
  [769] = 769,
  [770] = 770,
  [771] = 771,
  [772] = 772,
  [773] = 773,
  [774] = 774,
  [775] = 775,
  [776] = 776,
  [777] = 777,
  [778] = 778,
  [779] = 779,
  [780] = 780,
  [781] = 781,
  [782] = 782,
  [783] = 783,
  [784] = 784,
  [785] = 785,
  [786] = 786,
  [787] = 787,
  [788] = 788,
  [789] = 789,
  [790] = 790,
  [791] = 791,
  [792] = 792,
  [793] = 793,
  [794] = 794,
  [795] = 795,
  [796] = 796,
  [797] = 797,
  [798] = 798,
  [799] = 799,
  [800] = 800,
  [801] = 801,
  [802] = 802,
  [803] = 803,
  [804] = 804,
  [805] = 805,
  [806] = 806,
  [807] = 807,
  [808] = 808,
  [809] = 809,
  [810] = 810,
  [811] = 811,
  [812] = 812,
  [813] = 813,
  [814] = 814,
  [815] = 815,
  [816] = 816,
  [817] = 817,
  [818] = 815,
  [819] = 819,
  [820] = 820,
  [821] = 810,
  [822] = 822,
  [823] = 823,
  [824] = 824,
  [825] = 825,
  [826] = 826,
  [827] = 765,
  [828] = 828,
  [829] = 829,
  [830] = 830,
  [831] = 831,
  [832] = 832,
  [833] = 792,
  [834] = 834,
  [835] = 835,
  [836] = 836,
  [837] = 837,
  [838] = 823,
  [839] = 839,
  [840] = 840,
  [841] = 841,
  [842] = 842,
  [843] = 843,
  [844] = 842,
  [845] = 845,
  [846] = 846,
  [847] = 847,
  [848] = 848,
  [849] = 849,
  [850] = 850,
  [851] = 851,
  [852] = 852,
  [853] = 848,
  [854] = 854,
  [855] = 855,
  [856] = 856,
  [857] = 852,
  [858] = 793,
  [859] = 859,
  [860] = 860,
  [861] = 768,
  [862] = 862,
  [863] = 789,
  [864] = 795,
  [865] = 802,
  [866] = 832,
  [867] = 867,
  [868] = 868,
  [869] = 869,
  [870] = 826,
  [871] = 805,
  [872] = 872,
  [873] = 873,
  [874] = 874,
  [875] = 820,
  [876] = 876,
  [877] = 804,
  [878] = 878,
  [879] = 839,
  [880] = 816,
  [881] = 881,
  [882] = 111,
  [883] = 883,
  [884] = 884,
  [885] = 885,
  [886] = 817,
  [887] = 887,
  [888] = 888,
  [889] = 889,
  [890] = 890,
  [891] = 891,
  [892] = 892,
  [893] = 893,
  [894] = 894,
  [895] = 895,
  [896] = 896,
  [897] = 897,
  [898] = 898,
  [899] = 899,
  [900] = 900,
  [901] = 901,
  [902] = 902,
  [903] = 903,
  [904] = 904,
  [905] = 905,
  [906] = 906,
  [907] = 907,
  [908] = 908,
  [909] = 909,
  [910] = 910,
  [911] = 911,
  [912] = 912,
  [913] = 913,
  [914] = 914,
  [915] = 915,
  [916] = 916,
  [917] = 917,
  [918] = 918,
  [919] = 919,
  [920] = 920,
  [921] = 921,
  [922] = 922,
  [923] = 923,
  [924] = 924,
  [925] = 925,
  [926] = 926,
  [927] = 927,
  [928] = 928,
  [929] = 929,
  [930] = 930,
  [931] = 931,
  [932] = 932,
  [933] = 933,
  [934] = 934,
  [935] = 935,
  [936] = 936,
  [937] = 937,
  [938] = 938,
  [939] = 939,
  [940] = 940,
  [941] = 941,
  [942] = 942,
  [943] = 943,
  [944] = 944,
  [945] = 945,
  [946] = 915,
  [947] = 947,
  [948] = 925,
  [949] = 922,
  [950] = 897,
  [951] = 951,
  [952] = 900,
  [953] = 917,
  [954] = 954,
  [955] = 951,
  [956] = 956,
  [957] = 957,
  [958] = 958,
  [959] = 959,
  [960] = 960,
  [961] = 898,
  [962] = 929,
  [963] = 963,
  [964] = 964,
  [965] = 956,
  [966] = 966,
  [967] = 967,
  [968] = 926,
  [969] = 938,
  [970] = 970,
  [971] = 944,
  [972] = 947,
  [973] = 906,
  [974] = 933,
  [975] = 945,
  [976] = 976,
};

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

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

static const TSLexerMode ts_lex_modes[STATE_COUNT] = {
  [0] = {.lex_state = 0},
  [1] = {.lex_state = 52},
  [2] = {.lex_state = 12},
  [3] = {.lex_state = 12},
  [4] = {.lex_state = 12},
  [5] = {.lex_state = 12},
  [6] = {.lex_state = 12},
  [7] = {.lex_state = 12},
  [8] = {.lex_state = 12},
  [9] = {.lex_state = 12},
  [10] = {.lex_state = 12},
  [11] = {.lex_state = 12},
  [12] = {.lex_state = 12},
  [13] = {.lex_state = 12},
  [14] = {.lex_state = 12},
  [15] = {.lex_state = 12},
  [16] = {.lex_state = 12},
  [17] = {.lex_state = 12},
  [18] = {.lex_state = 12},
  [19] = {.lex_state = 12},
  [20] = {.lex_state = 12},
  [21] = {.lex_state = 12},
  [22] = {.lex_state = 12},
  [23] = {.lex_state = 12},
  [24] = {.lex_state = 12},
  [25] = {.lex_state = 12},
  [26] = {.lex_state = 12},
  [27] = {.lex_state = 12},
  [28] = {.lex_state = 12},
  [29] = {.lex_state = 12},
  [30] = {.lex_state = 12},
  [31] = {.lex_state = 12},
  [32] = {.lex_state = 12},
  [33] = {.lex_state = 12},
  [34] = {.lex_state = 12},
  [35] = {.lex_state = 12},
  [36] = {.lex_state = 12},
  [37] = {.lex_state = 12},
  [38] = {.lex_state = 12},
  [39] = {.lex_state = 12},
  [40] = {.lex_state = 12},
  [41] = {.lex_state = 12},
  [42] = {.lex_state = 12},
  [43] = {.lex_state = 12},
  [44] = {.lex_state = 12},
  [45] = {.lex_state = 12},
  [46] = {.lex_state = 12},
  [47] = {.lex_state = 12},
  [48] = {.lex_state = 12},
  [49] = {.lex_state = 12},
  [50] = {.lex_state = 12},
  [51] = {.lex_state = 12},
  [52] = {.lex_state = 12},
  [53] = {.lex_state = 12},
  [54] = {.lex_state = 12},
  [55] = {.lex_state = 12},
  [56] = {.lex_state = 12},
  [57] = {.lex_state = 12},
  [58] = {.lex_state = 12},
  [59] = {.lex_state = 12},
  [60] = {.lex_state = 12},
  [61] = {.lex_state = 12},
  [62] = {.lex_state = 12},
  [63] = {.lex_state = 12},
  [64] = {.lex_state = 12},
  [65] = {.lex_state = 12},
  [66] = {.lex_state = 12},
  [67] = {.lex_state = 12},
  [68] = {.lex_state = 12},
  [69] = {.lex_state = 12},
  [70] = {.lex_state = 12},
  [71] = {.lex_state = 12},
  [72] = {.lex_state = 12},
  [73] = {.lex_state = 12},
  [74] = {.lex_state = 12},
  [75] = {.lex_state = 12},
  [76] = {.lex_state = 12},
  [77] = {.lex_state = 12},
  [78] = {.lex_state = 12},
  [79] = {.lex_state = 12},
  [80] = {.lex_state = 12},
  [81] = {.lex_state = 12},
  [82] = {.lex_state = 12},
  [83] = {.lex_state = 12},
  [84] = {.lex_state = 12},
  [85] = {.lex_state = 12},
  [86] = {.lex_state = 12},
  [87] = {.lex_state = 12},
  [88] = {.lex_state = 52},
  [89] = {.lex_state = 52},
  [90] = {.lex_state = 12},
  [91] = {.lex_state = 12},
  [92] = {.lex_state = 12},
  [93] = {.lex_state = 12},
  [94] = {.lex_state = 12},
  [95] = {.lex_state = 12},
  [96] = {.lex_state = 12},
  [97] = {.lex_state = 52},
  [98] = {.lex_state = 12},
  [99] = {.lex_state = 12},
  [100] = {.lex_state = 12},
  [101] = {.lex_state = 52},
  [102] = {.lex_state = 52},
  [103] = {.lex_state = 12},
  [104] = {.lex_state = 12},
  [105] = {.lex_state = 12},
  [106] = {.lex_state = 12},
  [107] = {.lex_state = 12},
  [108] = {.lex_state = 12},
  [109] = {.lex_state = 12},
  [110] = {.lex_state = 12},
  [111] = {.lex_state = 12},
  [112] = {.lex_state = 12},
  [113] = {.lex_state = 12},
  [114] = {.lex_state = 12},
  [115] = {.lex_state = 12},
  [116] = {.lex_state = 12},
  [117] = {.lex_state = 12},
  [118] = {.lex_state = 12},
  [119] = {.lex_state = 12},
  [120] = {.lex_state = 12},
  [121] = {.lex_state = 12},
  [122] = {.lex_state = 12},
  [123] = {.lex_state = 12},
  [124] = {.lex_state = 12},
  [125] = {.lex_state = 52},
  [126] = {.lex_state = 52},
  [127] = {.lex_state = 52},
  [128] = {.lex_state = 52},
  [129] = {.lex_state = 52},
  [130] = {.lex_state = 52},
  [131] = {.lex_state = 52},
  [132] = {.lex_state = 52},
  [133] = {.lex_state = 52},
  [134] = {.lex_state = 52},
  [135] = {.lex_state = 52},
  [136] = {.lex_state = 52},
  [137] = {.lex_state = 52},
  [138] = {.lex_state = 52},
  [139] = {.lex_state = 52},
  [140] = {.lex_state = 52},
  [141] = {.lex_state = 52},
  [142] = {.lex_state = 52},
  [143] = {.lex_state = 52},
  [144] = {.lex_state = 52},
  [145] = {.lex_state = 52},
  [146] = {.lex_state = 52},
  [147] = {.lex_state = 52},
  [148] = {.lex_state = 52},
  [149] = {.lex_state = 52},
  [150] = {.lex_state = 52},
  [151] = {.lex_state = 52},
  [152] = {.lex_state = 52},
  [153] = {.lex_state = 52},
  [154] = {.lex_state = 52},
  [155] = {.lex_state = 52},
  [156] = {.lex_state = 52},
  [157] = {.lex_state = 52},
  [158] = {.lex_state = 52},
  [159] = {.lex_state = 52},
  [160] = {.lex_state = 52},
  [161] = {.lex_state = 52},
  [162] = {.lex_state = 52},
  [163] = {.lex_state = 52},
  [164] = {.lex_state = 52},
  [165] = {.lex_state = 52},
  [166] = {.lex_state = 52},
  [167] = {.lex_state = 52},
  [168] = {.lex_state = 52},
  [169] = {.lex_state = 52},
  [170] = {.lex_state = 52},
  [171] = {.lex_state = 52},
  [172] = {.lex_state = 52},
  [173] = {.lex_state = 52},
  [174] = {.lex_state = 52},
  [175] = {.lex_state = 52},
  [176] = {.lex_state = 52},
  [177] = {.lex_state = 52},
  [178] = {.lex_state = 52},
  [179] = {.lex_state = 52},
  [180] = {.lex_state = 52},
  [181] = {.lex_state = 52},
  [182] = {.lex_state = 52},
  [183] = {.lex_state = 52},
  [184] = {.lex_state = 52},
  [185] = {.lex_state = 52},
  [186] = {.lex_state = 52},
  [187] = {.lex_state = 52},
  [188] = {.lex_state = 52},
  [189] = {.lex_state = 52},
  [190] = {.lex_state = 52},
  [191] = {.lex_state = 52},
  [192] = {.lex_state = 52},
  [193] = {.lex_state = 52},
  [194] = {.lex_state = 52},
  [195] = {.lex_state = 52},
  [196] = {.lex_state = 52},
  [197] = {.lex_state = 52},
  [198] = {.lex_state = 52},
  [199] = {.lex_state = 52},
  [200] = {.lex_state = 52},
  [201] = {.lex_state = 52},
  [202] = {.lex_state = 52},
  [203] = {.lex_state = 52},
  [204] = {.lex_state = 52},
  [205] = {.lex_state = 52},
  [206] = {.lex_state = 52},
  [207] = {.lex_state = 52},
  [208] = {.lex_state = 52},
  [209] = {.lex_state = 52},
  [210] = {.lex_state = 52},
  [211] = {.lex_state = 52},
  [212] = {.lex_state = 52},
  [213] = {.lex_state = 52},
  [214] = {.lex_state = 52},
  [215] = {.lex_state = 52},
  [216] = {.lex_state = 52},
  [217] = {.lex_state = 52},
  [218] = {.lex_state = 52},
  [219] = {.lex_state = 52},
  [220] = {.lex_state = 52},
  [221] = {.lex_state = 52},
  [222] = {.lex_state = 52},
  [223] = {.lex_state = 52},
  [224] = {.lex_state = 52},
  [225] = {.lex_state = 52},
  [226] = {.lex_state = 52},
  [227] = {.lex_state = 52},
  [228] = {.lex_state = 52},
  [229] = {.lex_state = 52},
  [230] = {.lex_state = 52},
  [231] = {.lex_state = 52},
  [232] = {.lex_state = 52},
  [233] = {.lex_state = 52},
  [234] = {.lex_state = 52},
  [235] = {.lex_state = 52},
  [236] = {.lex_state = 52},
  [237] = {.lex_state = 52},
  [238] = {.lex_state = 52},
  [239] = {.lex_state = 52},
  [240] = {.lex_state = 52},
  [241] = {.lex_state = 52},
  [242] = {.lex_state = 52},
  [243] = {.lex_state = 52},
  [244] = {.lex_state = 52},
  [245] = {.lex_state = 52},
  [246] = {.lex_state = 52},
  [247] = {.lex_state = 52},
  [248] = {.lex_state = 52},
  [249] = {.lex_state = 52},
  [250] = {.lex_state = 52},
  [251] = {.lex_state = 52},
  [252] = {.lex_state = 52},
  [253] = {.lex_state = 52},
  [254] = {.lex_state = 52},
  [255] = {.lex_state = 52},
  [256] = {.lex_state = 52},
  [257] = {.lex_state = 52},
  [258] = {.lex_state = 52},
  [259] = {.lex_state = 52},
  [260] = {.lex_state = 52},
  [261] = {.lex_state = 52},
  [262] = {.lex_state = 52},
  [263] = {.lex_state = 52},
  [264] = {.lex_state = 52},
  [265] = {.lex_state = 52},
  [266] = {.lex_state = 52},
  [267] = {.lex_state = 52},
  [268] = {.lex_state = 52},
  [269] = {.lex_state = 52},
  [270] = {.lex_state = 52},
  [271] = {.lex_state = 52},
  [272] = {.lex_state = 52},
  [273] = {.lex_state = 52},
  [274] = {.lex_state = 52},
  [275] = {.lex_state = 52},
  [276] = {.lex_state = 52},
  [277] = {.lex_state = 52},
  [278] = {.lex_state = 52},
  [279] = {.lex_state = 52},
  [280] = {.lex_state = 52},
  [281] = {.lex_state = 52},
  [282] = {.lex_state = 52},
  [283] = {.lex_state = 52},
  [284] = {.lex_state = 52},
  [285] = {.lex_state = 52},
  [286] = {.lex_state = 52},
  [287] = {.lex_state = 52},
  [288] = {.lex_state = 52},
  [289] = {.lex_state = 52},
  [290] = {.lex_state = 52},
  [291] = {.lex_state = 52},
  [292] = {.lex_state = 52},
  [293] = {.lex_state = 52},
  [294] = {.lex_state = 52},
  [295] = {.lex_state = 52},
  [296] = {.lex_state = 52},
  [297] = {.lex_state = 52},
  [298] = {.lex_state = 52},
  [299] = {.lex_state = 52},
  [300] = {.lex_state = 52},
  [301] = {.lex_state = 52},
  [302] = {.lex_state = 52},
  [303] = {.lex_state = 52},
  [304] = {.lex_state = 52},
  [305] = {.lex_state = 52},
  [306] = {.lex_state = 52},
  [307] = {.lex_state = 52},
  [308] = {.lex_state = 52},
  [309] = {.lex_state = 52},
  [310] = {.lex_state = 52},
  [311] = {.lex_state = 52},
  [312] = {.lex_state = 52},
  [313] = {.lex_state = 52},
  [314] = {.lex_state = 52},
  [315] = {.lex_state = 52},
  [316] = {.lex_state = 52},
  [317] = {.lex_state = 52},
  [318] = {.lex_state = 52},
  [319] = {.lex_state = 52},
  [320] = {.lex_state = 52},
  [321] = {.lex_state = 52},
  [322] = {.lex_state = 52},
  [323] = {.lex_state = 52},
  [324] = {.lex_state = 52},
  [325] = {.lex_state = 52},
  [326] = {.lex_state = 52},
  [327] = {.lex_state = 52},
  [328] = {.lex_state = 52},
  [329] = {.lex_state = 52},
  [330] = {.lex_state = 52},
  [331] = {.lex_state = 52},
  [332] = {.lex_state = 52},
  [333] = {.lex_state = 52},
  [334] = {.lex_state = 52},
  [335] = {.lex_state = 52},
  [336] = {.lex_state = 52},
  [337] = {.lex_state = 52},
  [338] = {.lex_state = 52},
  [339] = {.lex_state = 52},
  [340] = {.lex_state = 52},
  [341] = {.lex_state = 52},
  [342] = {.lex_state = 52},
  [343] = {.lex_state = 52},
  [344] = {.lex_state = 52},
  [345] = {.lex_state = 52},
  [346] = {.lex_state = 52},
  [347] = {.lex_state = 52},
  [348] = {.lex_state = 52},
  [349] = {.lex_state = 52},
  [350] = {.lex_state = 52},
  [351] = {.lex_state = 52},
  [352] = {.lex_state = 52},
  [353] = {.lex_state = 52},
  [354] = {.lex_state = 52},
  [355] = {.lex_state = 52},
  [356] = {.lex_state = 10},
  [357] = {.lex_state = 9},
  [358] = {.lex_state = 10},
  [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 = 10},
  [368] = {.lex_state = 10},
  [369] = {.lex_state = 10},
  [370] = {.lex_state = 10},
  [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 = 9},
  [391] = {.lex_state = 9},
  [392] = {.lex_state = 9},
  [393] = {.lex_state = 9},
  [394] = {.lex_state = 9},
  [395] = {.lex_state = 9},
  [396] = {.lex_state = 9},
  [397] = {.lex_state = 9},
  [398] = {.lex_state = 9},
  [399] = {.lex_state = 9},
  [400] = {.lex_state = 9},
  [401] = {.lex_state = 9},
  [402] = {.lex_state = 9},
  [403] = {.lex_state = 9},
  [404] = {.lex_state = 9},
  [405] = {.lex_state = 9},
  [406] = {.lex_state = 9},
  [407] = {.lex_state = 9},
  [408] = {.lex_state = 9},
  [409] = {.lex_state = 9},
  [410] = {.lex_state = 9},
  [411] = {.lex_state = 9},
  [412] = {.lex_state = 9},
  [413] = {.lex_state = 9},
  [414] = {.lex_state = 9},
  [415] = {.lex_state = 9},
  [416] = {.lex_state = 9},
  [417] = {.lex_state = 9},
  [418] = {.lex_state = 9},
  [419] = {.lex_state = 9},
  [420] = {.lex_state = 9},
  [421] = {.lex_state = 9},
  [422] = {.lex_state = 9},
  [423] = {.lex_state = 9},
  [424] = {.lex_state = 9},
  [425] = {.lex_state = 9},
  [426] = {.lex_state = 9},
  [427] = {.lex_state = 9},
  [428] = {.lex_state = 9},
  [429] = {.lex_state = 9},
  [430] = {.lex_state = 9},
  [431] = {.lex_state = 9},
  [432] = {.lex_state = 9},
  [433] = {.lex_state = 9},
  [434] = {.lex_state = 9},
  [435] = {.lex_state = 9},
  [436] = {.lex_state = 9},
  [437] = {.lex_state = 9},
  [438] = {.lex_state = 9},
  [439] = {.lex_state = 9},
  [440] = {.lex_state = 9},
  [441] = {.lex_state = 9},
  [442] = {.lex_state = 9},
  [443] = {.lex_state = 9},
  [444] = {.lex_state = 9},
  [445] = {.lex_state = 9},
  [446] = {.lex_state = 9},
  [447] = {.lex_state = 9},
  [448] = {.lex_state = 9},
  [449] = {.lex_state = 9},
  [450] = {.lex_state = 9},
  [451] = {.lex_state = 9},
  [452] = {.lex_state = 9},
  [453] = {.lex_state = 9},
  [454] = {.lex_state = 9},
  [455] = {.lex_state = 9},
  [456] = {.lex_state = 9},
  [457] = {.lex_state = 52},
  [458] = {.lex_state = 9},
  [459] = {.lex_state = 52},
  [460] = {.lex_state = 52},
  [461] = {.lex_state = 52},
  [462] = {.lex_state = 52},
  [463] = {.lex_state = 52},
  [464] = {.lex_state = 52},
  [465] = {.lex_state = 52},
  [466] = {.lex_state = 52},
  [467] = {.lex_state = 52},
  [468] = {.lex_state = 52},
  [469] = {.lex_state = 9},
  [470] = {.lex_state = 52},
  [471] = {.lex_state = 52},
  [472] = {.lex_state = 52},
  [473] = {.lex_state = 52},
  [474] = {.lex_state = 52},
  [475] = {.lex_state = 52},
  [476] = {.lex_state = 52},
  [477] = {.lex_state = 52},
  [478] = {.lex_state = 52},
  [479] = {.lex_state = 52},
  [480] = {.lex_state = 52},
  [481] = {.lex_state = 52},
  [482] = {.lex_state = 52},
  [483] = {.lex_state = 52},
  [484] = {.lex_state = 52},
  [485] = {.lex_state = 52},
  [486] = {.lex_state = 52},
  [487] = {.lex_state = 52},
  [488] = {.lex_state = 52},
  [489] = {.lex_state = 52},
  [490] = {.lex_state = 52},
  [491] = {.lex_state = 52},
  [492] = {.lex_state = 52},
  [493] = {.lex_state = 9},
  [494] = {.lex_state = 52},
  [495] = {.lex_state = 52},
  [496] = {.lex_state = 52},
  [497] = {.lex_state = 52},
  [498] = {.lex_state = 52},
  [499] = {.lex_state = 52},
  [500] = {.lex_state = 52},
  [501] = {.lex_state = 52},
  [502] = {.lex_state = 52},
  [503] = {.lex_state = 52},
  [504] = {.lex_state = 52},
  [505] = {.lex_state = 11},
  [506] = {.lex_state = 11},
  [507] = {.lex_state = 52},
  [508] = {.lex_state = 52},
  [509] = {.lex_state = 52},
  [510] = {.lex_state = 52},
  [511] = {.lex_state = 52},
  [512] = {.lex_state = 52},
  [513] = {.lex_state = 52},
  [514] = {.lex_state = 52},
  [515] = {.lex_state = 52},
  [516] = {.lex_state = 52},
  [517] = {.lex_state = 52},
  [518] = {.lex_state = 11},
  [519] = {.lex_state = 52},
  [520] = {.lex_state = 52},
  [521] = {.lex_state = 52},
  [522] = {.lex_state = 52},
  [523] = {.lex_state = 52},
  [524] = {.lex_state = 52},
  [525] = {.lex_state = 52},
  [526] = {.lex_state = 52},
  [527] = {.lex_state = 52},
  [528] = {.lex_state = 5},
  [529] = {.lex_state = 5},
  [530] = {.lex_state = 5},
  [531] = {.lex_state = 5},
  [532] = {.lex_state = 5},
  [533] = {.lex_state = 52},
  [534] = {.lex_state = 52},
  [535] = {.lex_state = 52},
  [536] = {.lex_state = 52},
  [537] = {.lex_state = 5},
  [538] = {.lex_state = 52},
  [539] = {.lex_state = 52},
  [540] = {.lex_state = 52},
  [541] = {.lex_state = 52},
  [542] = {.lex_state = 52},
  [543] = {.lex_state = 52},
  [544] = {.lex_state = 52},
  [545] = {.lex_state = 52},
  [546] = {.lex_state = 52},
  [547] = {.lex_state = 52},
  [548] = {.lex_state = 52},
  [549] = {.lex_state = 52},
  [550] = {.lex_state = 52},
  [551] = {.lex_state = 52},
  [552] = {.lex_state = 52},
  [553] = {.lex_state = 52},
  [554] = {.lex_state = 52},
  [555] = {.lex_state = 52},
  [556] = {.lex_state = 52},
  [557] = {.lex_state = 52},
  [558] = {.lex_state = 52},
  [559] = {.lex_state = 52},
  [560] = {.lex_state = 52},
  [561] = {.lex_state = 52},
  [562] = {.lex_state = 13},
  [563] = {.lex_state = 1},
  [564] = {.lex_state = 3},
  [565] = {.lex_state = 52},
  [566] = {.lex_state = 52},
  [567] = {.lex_state = 52},
  [568] = {.lex_state = 1},
  [569] = {.lex_state = 3},
  [570] = {.lex_state = 52},
  [571] = {.lex_state = 1},
  [572] = {.lex_state = 52},
  [573] = {.lex_state = 1},
  [574] = {.lex_state = 3},
  [575] = {.lex_state = 1},
  [576] = {.lex_state = 3},
  [577] = {.lex_state = 3},
  [578] = {.lex_state = 52},
  [579] = {.lex_state = 0},
  [580] = {.lex_state = 3},
  [581] = {.lex_state = 52},
  [582] = {.lex_state = 52},
  [583] = {.lex_state = 52},
  [584] = {.lex_state = 13},
  [585] = {.lex_state = 13},
  [586] = {.lex_state = 52},
  [587] = {.lex_state = 52},
  [588] = {.lex_state = 52},
  [589] = {.lex_state = 52},
  [590] = {.lex_state = 0},
  [591] = {.lex_state = 52},
  [592] = {.lex_state = 0},
  [593] = {.lex_state = 13},
  [594] = {.lex_state = 13},
  [595] = {.lex_state = 52},
  [596] = {.lex_state = 52},
  [597] = {.lex_state = 52},
  [598] = {.lex_state = 13},
  [599] = {.lex_state = 0},
  [600] = {.lex_state = 52},
  [601] = {.lex_state = 13},
  [602] = {.lex_state = 13},
  [603] = {.lex_state = 13},
  [604] = {.lex_state = 52},
  [605] = {.lex_state = 52},
  [606] = {.lex_state = 0},
  [607] = {.lex_state = 0},
  [608] = {.lex_state = 0},
  [609] = {.lex_state = 0},
  [610] = {.lex_state = 52},
  [611] = {.lex_state = 52},
  [612] = {.lex_state = 0},
  [613] = {.lex_state = 0},
  [614] = {.lex_state = 52},
  [615] = {.lex_state = 0},
  [616] = {.lex_state = 52},
  [617] = {.lex_state = 1},
  [618] = {.lex_state = 3},
  [619] = {.lex_state = 52},
  [620] = {.lex_state = 0},
  [621] = {.lex_state = 52},
  [622] = {.lex_state = 0},
  [623] = {.lex_state = 0},
  [624] = {.lex_state = 0},
  [625] = {.lex_state = 52},
  [626] = {.lex_state = 52},
  [627] = {.lex_state = 52},
  [628] = {.lex_state = 52},
  [629] = {.lex_state = 52},
  [630] = {.lex_state = 1},
  [631] = {.lex_state = 3},
  [632] = {.lex_state = 0},
  [633] = {.lex_state = 52},
  [634] = {.lex_state = 52},
  [635] = {.lex_state = 13},
  [636] = {.lex_state = 10},
  [637] = {.lex_state = 0},
  [638] = {.lex_state = 52},
  [639] = {.lex_state = 52},
  [640] = {.lex_state = 52},
  [641] = {.lex_state = 1},
  [642] = {.lex_state = 52},
  [643] = {.lex_state = 0},
  [644] = {.lex_state = 52},
  [645] = {.lex_state = 0},
  [646] = {.lex_state = 52},
  [647] = {.lex_state = 52},
  [648] = {.lex_state = 52},
  [649] = {.lex_state = 0},
  [650] = {.lex_state = 52},
  [651] = {.lex_state = 0},
  [652] = {.lex_state = 52},
  [653] = {.lex_state = 0},
  [654] = {.lex_state = 52},
  [655] = {.lex_state = 0},
  [656] = {.lex_state = 0},
  [657] = {.lex_state = 0},
  [658] = {.lex_state = 52},
  [659] = {.lex_state = 52},
  [660] = {.lex_state = 0},
  [661] = {.lex_state = 52},
  [662] = {.lex_state = 13},
  [663] = {.lex_state = 0},
  [664] = {.lex_state = 52},
  [665] = {.lex_state = 0},
  [666] = {.lex_state = 0},
  [667] = {.lex_state = 52},
  [668] = {.lex_state = 0},
  [669] = {.lex_state = 52},
  [670] = {.lex_state = 0},
  [671] = {.lex_state = 0},
  [672] = {.lex_state = 52},
  [673] = {.lex_state = 52},
  [674] = {.lex_state = 0},
  [675] = {.lex_state = 52},
  [676] = {.lex_state = 13},
  [677] = {.lex_state = 0},
  [678] = {.lex_state = 0},
  [679] = {.lex_state = 0},
  [680] = {.lex_state = 52},
  [681] = {.lex_state = 52},
  [682] = {.lex_state = 0},
  [683] = {.lex_state = 52},
  [684] = {.lex_state = 52},
  [685] = {.lex_state = 13},
  [686] = {.lex_state = 52},
  [687] = {.lex_state = 52},
  [688] = {.lex_state = 0},
  [689] = {.lex_state = 52},
  [690] = {.lex_state = 52},
  [691] = {.lex_state = 0},
  [692] = {.lex_state = 52},
  [693] = {.lex_state = 52},
  [694] = {.lex_state = 13},
  [695] = {.lex_state = 0},
  [696] = {.lex_state = 0},
  [697] = {.lex_state = 52},
  [698] = {.lex_state = 0},
  [699] = {.lex_state = 0},
  [700] = {.lex_state = 52},
  [701] = {.lex_state = 0},
  [702] = {.lex_state = 52},
  [703] = {.lex_state = 0},
  [704] = {.lex_state = 0},
  [705] = {.lex_state = 0},
  [706] = {.lex_state = 52},
  [707] = {.lex_state = 0},
  [708] = {.lex_state = 0},
  [709] = {.lex_state = 52},
  [710] = {.lex_state = 0},
  [711] = {.lex_state = 52},
  [712] = {.lex_state = 52},
  [713] = {.lex_state = 52},
  [714] = {.lex_state = 0},
  [715] = {.lex_state = 0},
  [716] = {.lex_state = 0},
  [717] = {.lex_state = 0},
  [718] = {.lex_state = 0},
  [719] = {.lex_state = 0},
  [720] = {.lex_state = 52},
  [721] = {.lex_state = 52},
  [722] = {.lex_state = 52},
  [723] = {.lex_state = 0},
  [724] = {.lex_state = 0},
  [725] = {.lex_state = 52},
  [726] = {.lex_state = 0},
  [727] = {.lex_state = 0},
  [728] = {.lex_state = 52},
  [729] = {.lex_state = 52},
  [730] = {.lex_state = 52},
  [731] = {.lex_state = 52},
  [732] = {.lex_state = 0},
  [733] = {.lex_state = 52},
  [734] = {.lex_state = 0},
  [735] = {.lex_state = 0},
  [736] = {.lex_state = 52},
  [737] = {.lex_state = 52},
  [738] = {.lex_state = 0},
  [739] = {.lex_state = 52},
  [740] = {.lex_state = 0},
  [741] = {.lex_state = 0},
  [742] = {.lex_state = 0},
  [743] = {.lex_state = 0},
  [744] = {.lex_state = 0},
  [745] = {.lex_state = 52},
  [746] = {.lex_state = 0},
  [747] = {.lex_state = 0},
  [748] = {.lex_state = 0},
  [749] = {.lex_state = 0},
  [750] = {.lex_state = 0},
  [751] = {.lex_state = 0},
  [752] = {.lex_state = 52},
  [753] = {.lex_state = 0},
  [754] = {.lex_state = 52},
  [755] = {.lex_state = 52},
  [756] = {.lex_state = 52},
  [757] = {.lex_state = 0},
  [758] = {.lex_state = 0},
  [759] = {.lex_state = 52},
  [760] = {.lex_state = 0},
  [761] = {.lex_state = 0},
  [762] = {.lex_state = 52},
  [763] = {.lex_state = 0},
  [764] = {.lex_state = 0},
  [765] = {.lex_state = 0},
  [766] = {.lex_state = 0},
  [767] = {.lex_state = 0},
  [768] = {.lex_state = 0},
  [769] = {.lex_state = 52},
  [770] = {.lex_state = 0},
  [771] = {.lex_state = 0},
  [772] = {.lex_state = 52},
  [773] = {.lex_state = 0},
  [774] = {.lex_state = 0},
  [775] = {.lex_state = 52},
  [776] = {.lex_state = 0},
  [777] = {.lex_state = 0},
  [778] = {.lex_state = 52},
  [779] = {.lex_state = 0},
  [780] = {.lex_state = 0},
  [781] = {.lex_state = 0},
  [782] = {.lex_state = 0},
  [783] = {.lex_state = 0},
  [784] = {.lex_state = 0},
  [785] = {.lex_state = 52},
  [786] = {.lex_state = 11},
  [787] = {.lex_state = 13},
  [788] = {.lex_state = 13},
  [789] = {.lex_state = 0},
  [790] = {.lex_state = 52},
  [791] = {.lex_state = 52},
  [792] = {.lex_state = 0},
  [793] = {.lex_state = 0},
  [794] = {.lex_state = 0},
  [795] = {.lex_state = 0},
  [796] = {.lex_state = 0},
  [797] = {.lex_state = 52},
  [798] = {.lex_state = 0},
  [799] = {.lex_state = 0},
  [800] = {.lex_state = 23},
  [801] = {.lex_state = 52},
  [802] = {.lex_state = 0},
  [803] = {.lex_state = 0},
  [804] = {.lex_state = 52},
  [805] = {.lex_state = 52},
  [806] = {.lex_state = 0},
  [807] = {.lex_state = 52},
  [808] = {.lex_state = 0},
  [809] = {.lex_state = 52},
  [810] = {.lex_state = 0},
  [811] = {.lex_state = 0},
  [812] = {.lex_state = 52},
  [813] = {.lex_state = 0},
  [814] = {.lex_state = 0},
  [815] = {.lex_state = 0},
  [816] = {.lex_state = 0},
  [817] = {.lex_state = 0},
  [818] = {.lex_state = 0},
  [819] = {.lex_state = 0},
  [820] = {.lex_state = 52},
  [821] = {.lex_state = 0},
  [822] = {.lex_state = 52},
  [823] = {.lex_state = 0},
  [824] = {.lex_state = 0},
  [825] = {.lex_state = 0},
  [826] = {.lex_state = 0},
  [827] = {.lex_state = 0},
  [828] = {.lex_state = 0},
  [829] = {.lex_state = 52},
  [830] = {.lex_state = 0},
  [831] = {.lex_state = 0},
  [832] = {.lex_state = 0},
  [833] = {.lex_state = 0},
  [834] = {.lex_state = 52},
  [835] = {.lex_state = 0},
  [836] = {.lex_state = 0},
  [837] = {.lex_state = 0},
  [838] = {.lex_state = 0},
  [839] = {.lex_state = 0},
  [840] = {.lex_state = 13},
  [841] = {.lex_state = 0},
  [842] = {.lex_state = 0},
  [843] = {.lex_state = 0},
  [844] = {.lex_state = 0},
  [845] = {.lex_state = 0},
  [846] = {.lex_state = 0},
  [847] = {.lex_state = 13},
  [848] = {.lex_state = 0},
  [849] = {.lex_state = 52},
  [850] = {.lex_state = 0},
  [851] = {.lex_state = 0},
  [852] = {.lex_state = 0},
  [853] = {.lex_state = 0},
  [854] = {.lex_state = 0},
  [855] = {.lex_state = 0},
  [856] = {.lex_state = 52},
  [857] = {.lex_state = 0},
  [858] = {.lex_state = 0},
  [859] = {.lex_state = 0},
  [860] = {.lex_state = 0},
  [861] = {.lex_state = 0},
  [862] = {.lex_state = 0},
  [863] = {.lex_state = 0},
  [864] = {.lex_state = 0},
  [865] = {.lex_state = 0},
  [866] = {.lex_state = 0},
  [867] = {.lex_state = 52},
  [868] = {.lex_state = 0},
  [869] = {.lex_state = 0},
  [870] = {.lex_state = 0},
  [871] = {.lex_state = 52},
  [872] = {.lex_state = 0},
  [873] = {.lex_state = 0},
  [874] = {.lex_state = 0},
  [875] = {.lex_state = 52},
  [876] = {.lex_state = 0},
  [877] = {.lex_state = 52},
  [878] = {.lex_state = 52},
  [879] = {.lex_state = 0},
  [880] = {.lex_state = 0},
  [881] = {.lex_state = 0},
  [882] = {.lex_state = 52},
  [883] = {.lex_state = 0},
  [884] = {.lex_state = 0},
  [885] = {.lex_state = 0},
  [886] = {.lex_state = 0},
  [887] = {.lex_state = 0},
  [888] = {.lex_state = 0},
  [889] = {.lex_state = 0},
  [890] = {.lex_state = 52},
  [891] = {.lex_state = 52},
  [892] = {.lex_state = 12},
  [893] = {.lex_state = 52},
  [894] = {.lex_state = 52},
  [895] = {.lex_state = 52},
  [896] = {.lex_state = 52},
  [897] = {.lex_state = 52},
  [898] = {.lex_state = 52},
  [899] = {.lex_state = 52},
  [900] = {.lex_state = 52},
  [901] = {.lex_state = 52},
  [902] = {.lex_state = 0},
  [903] = {.lex_state = 0},
  [904] = {.lex_state = 52},
  [905] = {.lex_state = 52},
  [906] = {.lex_state = 0},
  [907] = {.lex_state = 52},
  [908] = {.lex_state = 5},
  [909] = {.lex_state = 0},
  [910] = {.lex_state = 52},
  [911] = {.lex_state = 0},
  [912] = {.lex_state = 52},
  [913] = {.lex_state = 52},
  [914] = {.lex_state = 0},
  [915] = {.lex_state = 52},
  [916] = {.lex_state = 52},
  [917] = {.lex_state = 52},
  [918] = {.lex_state = 5},
  [919] = {.lex_state = 0},
  [920] = {.lex_state = 13},
  [921] = {.lex_state = 0},
  [922] = {.lex_state = 0},
  [923] = {.lex_state = 0},
  [924] = {.lex_state = 52},
  [925] = {.lex_state = 52},
  [926] = {.lex_state = 0},
  [927] = {.lex_state = 0},
  [928] = {.lex_state = 52},
  [929] = {.lex_state = 52},
  [930] = {.lex_state = 52},
  [931] = {.lex_state = 52},
  [932] = {.lex_state = 0},
  [933] = {.lex_state = 52},
  [934] = {.lex_state = 52},
  [935] = {.lex_state = 0},
  [936] = {.lex_state = 52},
  [937] = {.lex_state = 12},
  [938] = {.lex_state = 0},
  [939] = {.lex_state = 12},
  [940] = {.lex_state = 52},
  [941] = {.lex_state = 52},
  [942] = {.lex_state = 52},
  [943] = {.lex_state = 0},
  [944] = {.lex_state = 0},
  [945] = {.lex_state = 52},
  [946] = {.lex_state = 52},
  [947] = {.lex_state = 52},
  [948] = {.lex_state = 52},
  [949] = {.lex_state = 0},
  [950] = {.lex_state = 52},
  [951] = {.lex_state = 52},
  [952] = {.lex_state = 52},
  [953] = {.lex_state = 52},
  [954] = {.lex_state = 0},
  [955] = {.lex_state = 52},
  [956] = {.lex_state = 52},
  [957] = {.lex_state = 52},
  [958] = {.lex_state = 0},
  [959] = {.lex_state = 0},
  [960] = {.lex_state = 52},
  [961] = {.lex_state = 52},
  [962] = {.lex_state = 52},
  [963] = {.lex_state = 52},
  [964] = {.lex_state = 52},
  [965] = {.lex_state = 52},
  [966] = {.lex_state = 0},
  [967] = {.lex_state = 52},
  [968] = {.lex_state = 0},
  [969] = {.lex_state = 0},
  [970] = {.lex_state = 0},
  [971] = {.lex_state = 0},
  [972] = {.lex_state = 52},
  [973] = {.lex_state = 0},
  [974] = {.lex_state = 52},
  [975] = {.lex_state = 52},
  [976] = {.lex_state = 0},
};

static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = {
  [STATE(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_layout] = ACTIONS(1),
    [anon_sym_at] = 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_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_EQ_EQ] = ACTIONS(1),
    [anon_sym_BANG_EQ] = ACTIONS(1),
    [anon_sym_using] = ACTIONS(1),
    [anon_sym_for] = ACTIONS(1),
    [anon_sym_global] = 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_hex] = ACTIONS(1),
    [anon_sym_DQUOTE] = ACTIONS(1),
    [anon_sym__] = ACTIONS(1),
    [anon_sym_SQUOTE] = 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_mcopy] = ACTIONS(1),
    [anon_sym_tload] = ACTIONS(1),
    [anon_sym_tstore] = 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_blobhash] = ACTIONS(1),
    [anon_sym_basefee] = ACTIONS(1),
    [anon_sym_blobfee] = 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),
    [anon_sym_prevrandao] = ACTIONS(1),
    [anon_sym_blobbasefee] = 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),
    [anon_sym_transient] = 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_LT_LT] = ACTIONS(1),
    [anon_sym_GT_GT] = ACTIONS(1),
    [anon_sym_STAR_STAR] = ACTIONS(1),
    [anon_sym_delete] = ACTIONS(1),
    [anon_sym_BANG] = 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_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),
    [anon_sym_SEMI] = 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),
    [sym__escape_sequence] = ACTIONS(1),
    [anon_sym_unicode] = ACTIONS(1),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(1)] = {
    [sym_source_file] = STATE(976),
    [sym__source_unit] = STATE(88),
    [sym__directive] = STATE(88),
    [sym_pragma_directive] = STATE(88),
    [sym_import_directive] = STATE(88),
    [sym__declaration] = STATE(88),
    [sym_user_defined_type_definition] = STATE(88),
    [sym_constant_variable_declaration] = STATE(88),
    [sym_contract_declaration] = STATE(88),
    [sym_error_declaration] = STATE(88),
    [sym_interface_declaration] = STATE(88),
    [sym_library_declaration] = STATE(88),
    [sym_struct_declaration] = STATE(88),
    [sym_enum_declaration] = STATE(88),
    [sym_event_definition] = STATE(88),
    [sym_using_directive] = STATE(88),
    [sym_function_definition] = STATE(88),
    [sym_type_name] = STATE(769),
    [sym__array_type] = STATE(380),
    [sym__function_type] = STATE(379),
    [sym_user_defined_type] = STATE(380),
    [sym__identifier_path] = STATE(367),
    [sym__mapping] = STATE(381),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [aux_sym_source_file_repeat1] = STATE(88),
    [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_event] = ACTIONS(29),
    [anon_sym_using] = ACTIONS(31),
    [anon_sym_function] = ACTIONS(33),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_mapping] = ACTIONS(39),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(2)] = {
    [sym_statement] = STATE(5),
    [sym_assembly_statement] = STATE(120),
    [sym_block_statement] = STATE(120),
    [sym_variable_declaration_statement] = STATE(120),
    [sym_variable_declaration] = STATE(756),
    [sym_variable_declaration_tuple] = STATE(951),
    [sym_expression_statement] = STATE(120),
    [sym_if_statement] = STATE(120),
    [sym_for_statement] = STATE(120),
    [sym_while_statement] = STATE(120),
    [sym_do_while_statement] = STATE(120),
    [sym_continue_statement] = STATE(120),
    [sym_break_statement] = STATE(120),
    [sym_revert_statement] = STATE(120),
    [sym_try_statement] = STATE(120),
    [sym_return_statement] = STATE(120),
    [sym_emit_statement] = STATE(120),
    [sym_expression] = STATE(479),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_struct_field_assignment] = STATE(691),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_type_name] = STATE(578),
    [sym__array_type] = STATE(380),
    [sym__function_type] = STATE(379),
    [sym_user_defined_type] = STATE(459),
    [sym__identifier_path] = STATE(367),
    [sym__mapping] = STATE(381),
    [sym_primitive_type] = STATE(457),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_block_statement_repeat1] = STATE(5),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(41),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_LBRACE] = ACTIONS(47),
    [anon_sym_RBRACE] = ACTIONS(49),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(53),
    [anon_sym_for] = ACTIONS(55),
    [anon_sym_assembly] = ACTIONS(57),
    [anon_sym_break] = ACTIONS(59),
    [anon_sym_continue] = ACTIONS(61),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_if] = ACTIONS(73),
    [anon_sym_function] = ACTIONS(75),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_return] = ACTIONS(77),
    [anon_sym_revert] = ACTIONS(79),
    [sym_unchecked] = ACTIONS(81),
    [anon_sym_var] = ACTIONS(83),
    [anon_sym_while] = ACTIONS(85),
    [anon_sym_do] = ACTIONS(87),
    [anon_sym_try] = ACTIONS(89),
    [anon_sym_emit] = ACTIONS(91),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_mapping] = ACTIONS(39),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(3)] = {
    [sym_statement] = STATE(7),
    [sym_assembly_statement] = STATE(120),
    [sym_block_statement] = STATE(120),
    [sym_variable_declaration_statement] = STATE(120),
    [sym_variable_declaration] = STATE(756),
    [sym_variable_declaration_tuple] = STATE(951),
    [sym_expression_statement] = STATE(120),
    [sym_if_statement] = STATE(120),
    [sym_for_statement] = STATE(120),
    [sym_while_statement] = STATE(120),
    [sym_do_while_statement] = STATE(120),
    [sym_continue_statement] = STATE(120),
    [sym_break_statement] = STATE(120),
    [sym_revert_statement] = STATE(120),
    [sym_try_statement] = STATE(120),
    [sym_return_statement] = STATE(120),
    [sym_emit_statement] = STATE(120),
    [sym_expression] = STATE(479),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_type_name] = STATE(578),
    [sym__array_type] = STATE(380),
    [sym__function_type] = STATE(379),
    [sym_user_defined_type] = STATE(459),
    [sym__identifier_path] = STATE(367),
    [sym__mapping] = STATE(381),
    [sym_primitive_type] = STATE(457),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_block_statement_repeat1] = STATE(7),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_LBRACE] = ACTIONS(47),
    [anon_sym_RBRACE] = ACTIONS(109),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(53),
    [anon_sym_for] = ACTIONS(55),
    [anon_sym_assembly] = ACTIONS(57),
    [anon_sym_break] = ACTIONS(59),
    [anon_sym_continue] = ACTIONS(61),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_if] = ACTIONS(73),
    [anon_sym_function] = ACTIONS(75),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_return] = ACTIONS(77),
    [anon_sym_revert] = ACTIONS(79),
    [sym_unchecked] = ACTIONS(81),
    [anon_sym_var] = ACTIONS(83),
    [anon_sym_while] = ACTIONS(85),
    [anon_sym_do] = ACTIONS(87),
    [anon_sym_try] = ACTIONS(89),
    [anon_sym_emit] = ACTIONS(91),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_mapping] = ACTIONS(39),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(4)] = {
    [sym_statement] = STATE(5),
    [sym_assembly_statement] = STATE(120),
    [sym_block_statement] = STATE(120),
    [sym_variable_declaration_statement] = STATE(120),
    [sym_variable_declaration] = STATE(756),
    [sym_variable_declaration_tuple] = STATE(951),
    [sym_expression_statement] = STATE(120),
    [sym_if_statement] = STATE(120),
    [sym_for_statement] = STATE(120),
    [sym_while_statement] = STATE(120),
    [sym_do_while_statement] = STATE(120),
    [sym_continue_statement] = STATE(120),
    [sym_break_statement] = STATE(120),
    [sym_revert_statement] = STATE(120),
    [sym_try_statement] = STATE(120),
    [sym_return_statement] = STATE(120),
    [sym_emit_statement] = STATE(120),
    [sym_expression] = STATE(479),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_type_name] = STATE(578),
    [sym__array_type] = STATE(380),
    [sym__function_type] = STATE(379),
    [sym_user_defined_type] = STATE(459),
    [sym__identifier_path] = STATE(367),
    [sym__mapping] = STATE(381),
    [sym_primitive_type] = STATE(457),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_block_statement_repeat1] = STATE(5),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_LBRACE] = ACTIONS(47),
    [anon_sym_RBRACE] = ACTIONS(111),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(53),
    [anon_sym_for] = ACTIONS(55),
    [anon_sym_assembly] = ACTIONS(57),
    [anon_sym_break] = ACTIONS(59),
    [anon_sym_continue] = ACTIONS(61),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_if] = ACTIONS(73),
    [anon_sym_function] = ACTIONS(75),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_return] = ACTIONS(77),
    [anon_sym_revert] = ACTIONS(79),
    [sym_unchecked] = ACTIONS(81),
    [anon_sym_var] = ACTIONS(83),
    [anon_sym_while] = ACTIONS(85),
    [anon_sym_do] = ACTIONS(87),
    [anon_sym_try] = ACTIONS(89),
    [anon_sym_emit] = ACTIONS(91),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_mapping] = ACTIONS(39),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(5)] = {
    [sym_statement] = STATE(6),
    [sym_assembly_statement] = STATE(120),
    [sym_block_statement] = STATE(120),
    [sym_variable_declaration_statement] = STATE(120),
    [sym_variable_declaration] = STATE(756),
    [sym_variable_declaration_tuple] = STATE(951),
    [sym_expression_statement] = STATE(120),
    [sym_if_statement] = STATE(120),
    [sym_for_statement] = STATE(120),
    [sym_while_statement] = STATE(120),
    [sym_do_while_statement] = STATE(120),
    [sym_continue_statement] = STATE(120),
    [sym_break_statement] = STATE(120),
    [sym_revert_statement] = STATE(120),
    [sym_try_statement] = STATE(120),
    [sym_return_statement] = STATE(120),
    [sym_emit_statement] = STATE(120),
    [sym_expression] = STATE(479),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_type_name] = STATE(578),
    [sym__array_type] = STATE(380),
    [sym__function_type] = STATE(379),
    [sym_user_defined_type] = STATE(459),
    [sym__identifier_path] = STATE(367),
    [sym__mapping] = STATE(381),
    [sym_primitive_type] = STATE(457),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_block_statement_repeat1] = STATE(6),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_LBRACE] = ACTIONS(47),
    [anon_sym_RBRACE] = ACTIONS(113),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(53),
    [anon_sym_for] = ACTIONS(55),
    [anon_sym_assembly] = ACTIONS(57),
    [anon_sym_break] = ACTIONS(59),
    [anon_sym_continue] = ACTIONS(61),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_if] = ACTIONS(73),
    [anon_sym_function] = ACTIONS(75),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_return] = ACTIONS(77),
    [anon_sym_revert] = ACTIONS(79),
    [sym_unchecked] = ACTIONS(81),
    [anon_sym_var] = ACTIONS(83),
    [anon_sym_while] = ACTIONS(85),
    [anon_sym_do] = ACTIONS(87),
    [anon_sym_try] = ACTIONS(89),
    [anon_sym_emit] = ACTIONS(91),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_mapping] = ACTIONS(39),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(6)] = {
    [sym_statement] = STATE(6),
    [sym_assembly_statement] = STATE(120),
    [sym_block_statement] = STATE(120),
    [sym_variable_declaration_statement] = STATE(120),
    [sym_variable_declaration] = STATE(756),
    [sym_variable_declaration_tuple] = STATE(951),
    [sym_expression_statement] = STATE(120),
    [sym_if_statement] = STATE(120),
    [sym_for_statement] = STATE(120),
    [sym_while_statement] = STATE(120),
    [sym_do_while_statement] = STATE(120),
    [sym_continue_statement] = STATE(120),
    [sym_break_statement] = STATE(120),
    [sym_revert_statement] = STATE(120),
    [sym_try_statement] = STATE(120),
    [sym_return_statement] = STATE(120),
    [sym_emit_statement] = STATE(120),
    [sym_expression] = STATE(479),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_type_name] = STATE(578),
    [sym__array_type] = STATE(380),
    [sym__function_type] = STATE(379),
    [sym_user_defined_type] = STATE(459),
    [sym__identifier_path] = STATE(367),
    [sym__mapping] = STATE(381),
    [sym_primitive_type] = STATE(457),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_block_statement_repeat1] = STATE(6),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(115),
    [anon_sym_DASH] = ACTIONS(118),
    [anon_sym_TILDE] = ACTIONS(121),
    [anon_sym_LBRACE] = ACTIONS(124),
    [anon_sym_RBRACE] = ACTIONS(127),
    [anon_sym_type] = ACTIONS(129),
    [anon_sym_LPAREN] = ACTIONS(132),
    [anon_sym_for] = ACTIONS(135),
    [anon_sym_assembly] = ACTIONS(138),
    [anon_sym_break] = ACTIONS(141),
    [anon_sym_continue] = ACTIONS(144),
    [anon_sym_true] = ACTIONS(147),
    [anon_sym_false] = ACTIONS(150),
    [anon_sym_hex] = ACTIONS(153),
    [anon_sym_DQUOTE] = ACTIONS(156),
    [anon_sym_SQUOTE] = ACTIONS(159),
    [anon_sym_if] = ACTIONS(162),
    [anon_sym_function] = ACTIONS(165),
    [anon_sym_byte] = ACTIONS(168),
    [anon_sym_address] = ACTIONS(171),
    [anon_sym_return] = ACTIONS(174),
    [anon_sym_revert] = ACTIONS(177),
    [sym_unchecked] = ACTIONS(180),
    [anon_sym_var] = ACTIONS(183),
    [anon_sym_while] = ACTIONS(186),
    [anon_sym_do] = ACTIONS(189),
    [anon_sym_try] = ACTIONS(192),
    [anon_sym_emit] = ACTIONS(195),
    [anon_sym_payable] = ACTIONS(198),
    [anon_sym_new] = ACTIONS(201),
    [anon_sym_LBRACK] = ACTIONS(204),
    [anon_sym_delete] = ACTIONS(118),
    [anon_sym_BANG] = ACTIONS(121),
    [anon_sym_PLUS_PLUS] = ACTIONS(207),
    [anon_sym_DASH_DASH] = ACTIONS(207),
    [anon_sym_mapping] = ACTIONS(210),
    [anon_sym_bool] = ACTIONS(168),
    [anon_sym_string] = ACTIONS(168),
    [anon_sym_int] = ACTIONS(168),
    [anon_sym_int8] = ACTIONS(168),
    [anon_sym_int16] = ACTIONS(168),
    [anon_sym_int24] = ACTIONS(168),
    [anon_sym_int32] = ACTIONS(168),
    [anon_sym_int40] = ACTIONS(168),
    [anon_sym_int48] = ACTIONS(168),
    [anon_sym_int56] = ACTIONS(168),
    [anon_sym_int64] = ACTIONS(168),
    [anon_sym_int72] = ACTIONS(168),
    [anon_sym_int80] = ACTIONS(168),
    [anon_sym_int88] = ACTIONS(168),
    [anon_sym_int96] = ACTIONS(168),
    [anon_sym_int104] = ACTIONS(168),
    [anon_sym_int112] = ACTIONS(168),
    [anon_sym_int120] = ACTIONS(168),
    [anon_sym_int128] = ACTIONS(168),
    [anon_sym_int136] = ACTIONS(168),
    [anon_sym_int144] = ACTIONS(168),
    [anon_sym_int152] = ACTIONS(168),
    [anon_sym_int160] = ACTIONS(168),
    [anon_sym_int168] = ACTIONS(168),
    [anon_sym_int176] = ACTIONS(168),
    [anon_sym_int184] = ACTIONS(168),
    [anon_sym_int192] = ACTIONS(168),
    [anon_sym_int200] = ACTIONS(168),
    [anon_sym_int208] = ACTIONS(168),
    [anon_sym_int216] = ACTIONS(168),
    [anon_sym_int224] = ACTIONS(168),
    [anon_sym_int232] = ACTIONS(168),
    [anon_sym_int240] = ACTIONS(168),
    [anon_sym_int248] = ACTIONS(168),
    [anon_sym_int256] = ACTIONS(168),
    [anon_sym_uint] = ACTIONS(168),
    [anon_sym_uint8] = ACTIONS(168),
    [anon_sym_uint16] = ACTIONS(168),
    [anon_sym_uint24] = ACTIONS(168),
    [anon_sym_uint32] = ACTIONS(168),
    [anon_sym_uint40] = ACTIONS(168),
    [anon_sym_uint48] = ACTIONS(168),
    [anon_sym_uint56] = ACTIONS(168),
    [anon_sym_uint64] = ACTIONS(168),
    [anon_sym_uint72] = ACTIONS(168),
    [anon_sym_uint80] = ACTIONS(168),
    [anon_sym_uint88] = ACTIONS(168),
    [anon_sym_uint96] = ACTIONS(168),
    [anon_sym_uint104] = ACTIONS(168),
    [anon_sym_uint112] = ACTIONS(168),
    [anon_sym_uint120] = ACTIONS(168),
    [anon_sym_uint128] = ACTIONS(168),
    [anon_sym_uint136] = ACTIONS(168),
    [anon_sym_uint144] = ACTIONS(168),
    [anon_sym_uint152] = ACTIONS(168),
    [anon_sym_uint160] = ACTIONS(168),
    [anon_sym_uint168] = ACTIONS(168),
    [anon_sym_uint176] = ACTIONS(168),
    [anon_sym_uint184] = ACTIONS(168),
    [anon_sym_uint192] = ACTIONS(168),
    [anon_sym_uint200] = ACTIONS(168),
    [anon_sym_uint208] = ACTIONS(168),
    [anon_sym_uint216] = ACTIONS(168),
    [anon_sym_uint224] = ACTIONS(168),
    [anon_sym_uint232] = ACTIONS(168),
    [anon_sym_uint240] = ACTIONS(168),
    [anon_sym_uint248] = ACTIONS(168),
    [anon_sym_uint256] = ACTIONS(168),
    [anon_sym_bytes] = ACTIONS(168),
    [anon_sym_bytes1] = ACTIONS(168),
    [anon_sym_bytes2] = ACTIONS(168),
    [anon_sym_bytes3] = ACTIONS(168),
    [anon_sym_bytes4] = ACTIONS(168),
    [anon_sym_bytes5] = ACTIONS(168),
    [anon_sym_bytes6] = ACTIONS(168),
    [anon_sym_bytes7] = ACTIONS(168),
    [anon_sym_bytes8] = ACTIONS(168),
    [anon_sym_bytes9] = ACTIONS(168),
    [anon_sym_bytes10] = ACTIONS(168),
    [anon_sym_bytes11] = ACTIONS(168),
    [anon_sym_bytes12] = ACTIONS(168),
    [anon_sym_bytes13] = ACTIONS(168),
    [anon_sym_bytes14] = ACTIONS(168),
    [anon_sym_bytes15] = ACTIONS(168),
    [anon_sym_bytes16] = ACTIONS(168),
    [anon_sym_bytes17] = ACTIONS(168),
    [anon_sym_bytes18] = ACTIONS(168),
    [anon_sym_bytes19] = ACTIONS(168),
    [anon_sym_bytes20] = ACTIONS(168),
    [anon_sym_bytes21] = ACTIONS(168),
    [anon_sym_bytes22] = ACTIONS(168),
    [anon_sym_bytes23] = ACTIONS(168),
    [anon_sym_bytes24] = ACTIONS(168),
    [anon_sym_bytes25] = ACTIONS(168),
    [anon_sym_bytes26] = ACTIONS(168),
    [anon_sym_bytes27] = ACTIONS(168),
    [anon_sym_bytes28] = ACTIONS(168),
    [anon_sym_bytes29] = ACTIONS(168),
    [anon_sym_bytes30] = ACTIONS(168),
    [anon_sym_bytes31] = ACTIONS(168),
    [anon_sym_bytes32] = ACTIONS(168),
    [anon_sym_fixed] = ACTIONS(168),
    [aux_sym__fixed_token1] = ACTIONS(168),
    [anon_sym_ufixed] = ACTIONS(168),
    [aux_sym__ufixed_token1] = ACTIONS(168),
    [aux_sym__decimal_number_token1] = ACTIONS(213),
    [aux_sym__decimal_number_token2] = ACTIONS(216),
    [aux_sym__hex_number_token1] = ACTIONS(216),
    [anon_sym_unicode] = ACTIONS(219),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(7)] = {
    [sym_statement] = STATE(6),
    [sym_assembly_statement] = STATE(120),
    [sym_block_statement] = STATE(120),
    [sym_variable_declaration_statement] = STATE(120),
    [sym_variable_declaration] = STATE(756),
    [sym_variable_declaration_tuple] = STATE(951),
    [sym_expression_statement] = STATE(120),
    [sym_if_statement] = STATE(120),
    [sym_for_statement] = STATE(120),
    [sym_while_statement] = STATE(120),
    [sym_do_while_statement] = STATE(120),
    [sym_continue_statement] = STATE(120),
    [sym_break_statement] = STATE(120),
    [sym_revert_statement] = STATE(120),
    [sym_try_statement] = STATE(120),
    [sym_return_statement] = STATE(120),
    [sym_emit_statement] = STATE(120),
    [sym_expression] = STATE(479),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_type_name] = STATE(578),
    [sym__array_type] = STATE(380),
    [sym__function_type] = STATE(379),
    [sym_user_defined_type] = STATE(459),
    [sym__identifier_path] = STATE(367),
    [sym__mapping] = STATE(381),
    [sym_primitive_type] = STATE(457),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_block_statement_repeat1] = STATE(6),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_LBRACE] = ACTIONS(47),
    [anon_sym_RBRACE] = ACTIONS(222),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(53),
    [anon_sym_for] = ACTIONS(55),
    [anon_sym_assembly] = ACTIONS(57),
    [anon_sym_break] = ACTIONS(59),
    [anon_sym_continue] = ACTIONS(61),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_if] = ACTIONS(73),
    [anon_sym_function] = ACTIONS(75),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_return] = ACTIONS(77),
    [anon_sym_revert] = ACTIONS(79),
    [sym_unchecked] = ACTIONS(81),
    [anon_sym_var] = ACTIONS(83),
    [anon_sym_while] = ACTIONS(85),
    [anon_sym_do] = ACTIONS(87),
    [anon_sym_try] = ACTIONS(89),
    [anon_sym_emit] = ACTIONS(91),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_mapping] = ACTIONS(39),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(8)] = {
    [sym_statement] = STATE(9),
    [sym_assembly_statement] = STATE(120),
    [sym_block_statement] = STATE(120),
    [sym_variable_declaration_statement] = STATE(120),
    [sym_variable_declaration] = STATE(756),
    [sym_variable_declaration_tuple] = STATE(951),
    [sym_expression_statement] = STATE(120),
    [sym_if_statement] = STATE(120),
    [sym_for_statement] = STATE(120),
    [sym_while_statement] = STATE(120),
    [sym_do_while_statement] = STATE(120),
    [sym_continue_statement] = STATE(120),
    [sym_break_statement] = STATE(120),
    [sym_revert_statement] = STATE(120),
    [sym_try_statement] = STATE(120),
    [sym_return_statement] = STATE(120),
    [sym_emit_statement] = STATE(120),
    [sym_expression] = STATE(479),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_type_name] = STATE(578),
    [sym__array_type] = STATE(380),
    [sym__function_type] = STATE(379),
    [sym_user_defined_type] = STATE(459),
    [sym__identifier_path] = STATE(367),
    [sym__mapping] = STATE(381),
    [sym_primitive_type] = STATE(457),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_block_statement_repeat1] = STATE(9),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_LBRACE] = ACTIONS(47),
    [anon_sym_RBRACE] = ACTIONS(113),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(53),
    [anon_sym_for] = ACTIONS(55),
    [anon_sym_assembly] = ACTIONS(57),
    [anon_sym_break] = ACTIONS(59),
    [anon_sym_continue] = ACTIONS(61),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_if] = ACTIONS(73),
    [anon_sym_function] = ACTIONS(75),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_return] = ACTIONS(77),
    [anon_sym_revert] = ACTIONS(79),
    [sym_unchecked] = ACTIONS(81),
    [anon_sym_var] = ACTIONS(83),
    [anon_sym_while] = ACTIONS(85),
    [anon_sym_do] = ACTIONS(87),
    [anon_sym_try] = ACTIONS(89),
    [anon_sym_emit] = ACTIONS(91),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_mapping] = ACTIONS(39),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(9)] = {
    [sym_statement] = STATE(6),
    [sym_assembly_statement] = STATE(120),
    [sym_block_statement] = STATE(120),
    [sym_variable_declaration_statement] = STATE(120),
    [sym_variable_declaration] = STATE(756),
    [sym_variable_declaration_tuple] = STATE(951),
    [sym_expression_statement] = STATE(120),
    [sym_if_statement] = STATE(120),
    [sym_for_statement] = STATE(120),
    [sym_while_statement] = STATE(120),
    [sym_do_while_statement] = STATE(120),
    [sym_continue_statement] = STATE(120),
    [sym_break_statement] = STATE(120),
    [sym_revert_statement] = STATE(120),
    [sym_try_statement] = STATE(120),
    [sym_return_statement] = STATE(120),
    [sym_emit_statement] = STATE(120),
    [sym_expression] = STATE(479),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_type_name] = STATE(578),
    [sym__array_type] = STATE(380),
    [sym__function_type] = STATE(379),
    [sym_user_defined_type] = STATE(459),
    [sym__identifier_path] = STATE(367),
    [sym__mapping] = STATE(381),
    [sym_primitive_type] = STATE(457),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_block_statement_repeat1] = STATE(6),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_LBRACE] = ACTIONS(47),
    [anon_sym_RBRACE] = ACTIONS(224),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(53),
    [anon_sym_for] = ACTIONS(55),
    [anon_sym_assembly] = ACTIONS(57),
    [anon_sym_break] = ACTIONS(59),
    [anon_sym_continue] = ACTIONS(61),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_if] = ACTIONS(73),
    [anon_sym_function] = ACTIONS(75),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_return] = ACTIONS(77),
    [anon_sym_revert] = ACTIONS(79),
    [sym_unchecked] = ACTIONS(81),
    [anon_sym_var] = ACTIONS(83),
    [anon_sym_while] = ACTIONS(85),
    [anon_sym_do] = ACTIONS(87),
    [anon_sym_try] = ACTIONS(89),
    [anon_sym_emit] = ACTIONS(91),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_mapping] = ACTIONS(39),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(10)] = {
    [sym_statement] = STATE(11),
    [sym_assembly_statement] = STATE(120),
    [sym_block_statement] = STATE(120),
    [sym_variable_declaration_statement] = STATE(120),
    [sym_variable_declaration] = STATE(756),
    [sym_variable_declaration_tuple] = STATE(951),
    [sym_expression_statement] = STATE(120),
    [sym_if_statement] = STATE(120),
    [sym_for_statement] = STATE(120),
    [sym_while_statement] = STATE(120),
    [sym_do_while_statement] = STATE(120),
    [sym_continue_statement] = STATE(120),
    [sym_break_statement] = STATE(120),
    [sym_revert_statement] = STATE(120),
    [sym_try_statement] = STATE(120),
    [sym_return_statement] = STATE(120),
    [sym_emit_statement] = STATE(120),
    [sym_expression] = STATE(479),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_type_name] = STATE(578),
    [sym__array_type] = STATE(380),
    [sym__function_type] = STATE(379),
    [sym_user_defined_type] = STATE(459),
    [sym__identifier_path] = STATE(367),
    [sym__mapping] = STATE(381),
    [sym_primitive_type] = STATE(457),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_block_statement_repeat1] = STATE(11),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_LBRACE] = ACTIONS(47),
    [anon_sym_RBRACE] = ACTIONS(226),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(53),
    [anon_sym_for] = ACTIONS(55),
    [anon_sym_assembly] = ACTIONS(57),
    [anon_sym_break] = ACTIONS(59),
    [anon_sym_continue] = ACTIONS(61),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_if] = ACTIONS(73),
    [anon_sym_function] = ACTIONS(75),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_return] = ACTIONS(77),
    [anon_sym_revert] = ACTIONS(79),
    [sym_unchecked] = ACTIONS(81),
    [anon_sym_var] = ACTIONS(83),
    [anon_sym_while] = ACTIONS(85),
    [anon_sym_do] = ACTIONS(87),
    [anon_sym_try] = ACTIONS(89),
    [anon_sym_emit] = ACTIONS(91),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_mapping] = ACTIONS(39),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(11)] = {
    [sym_statement] = STATE(6),
    [sym_assembly_statement] = STATE(120),
    [sym_block_statement] = STATE(120),
    [sym_variable_declaration_statement] = STATE(120),
    [sym_variable_declaration] = STATE(756),
    [sym_variable_declaration_tuple] = STATE(951),
    [sym_expression_statement] = STATE(120),
    [sym_if_statement] = STATE(120),
    [sym_for_statement] = STATE(120),
    [sym_while_statement] = STATE(120),
    [sym_do_while_statement] = STATE(120),
    [sym_continue_statement] = STATE(120),
    [sym_break_statement] = STATE(120),
    [sym_revert_statement] = STATE(120),
    [sym_try_statement] = STATE(120),
    [sym_return_statement] = STATE(120),
    [sym_emit_statement] = STATE(120),
    [sym_expression] = STATE(479),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_type_name] = STATE(578),
    [sym__array_type] = STATE(380),
    [sym__function_type] = STATE(379),
    [sym_user_defined_type] = STATE(459),
    [sym__identifier_path] = STATE(367),
    [sym__mapping] = STATE(381),
    [sym_primitive_type] = STATE(457),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_block_statement_repeat1] = STATE(6),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_LBRACE] = ACTIONS(47),
    [anon_sym_RBRACE] = ACTIONS(228),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(53),
    [anon_sym_for] = ACTIONS(55),
    [anon_sym_assembly] = ACTIONS(57),
    [anon_sym_break] = ACTIONS(59),
    [anon_sym_continue] = ACTIONS(61),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_if] = ACTIONS(73),
    [anon_sym_function] = ACTIONS(75),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_return] = ACTIONS(77),
    [anon_sym_revert] = ACTIONS(79),
    [sym_unchecked] = ACTIONS(81),
    [anon_sym_var] = ACTIONS(83),
    [anon_sym_while] = ACTIONS(85),
    [anon_sym_do] = ACTIONS(87),
    [anon_sym_try] = ACTIONS(89),
    [anon_sym_emit] = ACTIONS(91),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_mapping] = ACTIONS(39),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(12)] = {
    [sym_statement] = STATE(933),
    [sym_assembly_statement] = STATE(120),
    [sym_block_statement] = STATE(120),
    [sym_variable_declaration_statement] = STATE(120),
    [sym_variable_declaration] = STATE(722),
    [sym_variable_declaration_tuple] = STATE(955),
    [sym_expression_statement] = STATE(120),
    [sym_if_statement] = STATE(120),
    [sym_for_statement] = STATE(120),
    [sym_while_statement] = STATE(120),
    [sym_do_while_statement] = STATE(120),
    [sym_continue_statement] = STATE(120),
    [sym_break_statement] = STATE(120),
    [sym_revert_statement] = STATE(120),
    [sym_try_statement] = STATE(120),
    [sym_return_statement] = STATE(120),
    [sym_emit_statement] = STATE(120),
    [sym_expression] = STATE(472),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_type_name] = STATE(578),
    [sym__array_type] = STATE(380),
    [sym__function_type] = STATE(379),
    [sym_user_defined_type] = STATE(459),
    [sym__identifier_path] = STATE(367),
    [sym__mapping] = STATE(381),
    [sym_primitive_type] = STATE(457),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_LBRACE] = ACTIONS(47),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(53),
    [anon_sym_for] = ACTIONS(230),
    [anon_sym_assembly] = ACTIONS(57),
    [anon_sym_break] = ACTIONS(232),
    [anon_sym_continue] = ACTIONS(234),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_if] = ACTIONS(236),
    [anon_sym_function] = ACTIONS(75),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_return] = ACTIONS(238),
    [anon_sym_revert] = ACTIONS(240),
    [sym_unchecked] = ACTIONS(81),
    [anon_sym_var] = ACTIONS(83),
    [anon_sym_while] = ACTIONS(242),
    [anon_sym_do] = ACTIONS(244),
    [anon_sym_try] = ACTIONS(89),
    [anon_sym_emit] = ACTIONS(246),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_mapping] = ACTIONS(39),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(13)] = {
    [sym_statement] = STATE(122),
    [sym_assembly_statement] = STATE(120),
    [sym_block_statement] = STATE(120),
    [sym_variable_declaration_statement] = STATE(120),
    [sym_variable_declaration] = STATE(756),
    [sym_variable_declaration_tuple] = STATE(951),
    [sym_expression_statement] = STATE(120),
    [sym_if_statement] = STATE(120),
    [sym_for_statement] = STATE(120),
    [sym_while_statement] = STATE(120),
    [sym_do_while_statement] = STATE(120),
    [sym_continue_statement] = STATE(120),
    [sym_break_statement] = STATE(120),
    [sym_revert_statement] = STATE(120),
    [sym_try_statement] = STATE(120),
    [sym_return_statement] = STATE(120),
    [sym_emit_statement] = STATE(120),
    [sym_expression] = STATE(479),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_type_name] = STATE(578),
    [sym__array_type] = STATE(380),
    [sym__function_type] = STATE(379),
    [sym_user_defined_type] = STATE(459),
    [sym__identifier_path] = STATE(367),
    [sym__mapping] = STATE(381),
    [sym_primitive_type] = STATE(457),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_LBRACE] = ACTIONS(47),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(53),
    [anon_sym_for] = ACTIONS(55),
    [anon_sym_assembly] = ACTIONS(57),
    [anon_sym_break] = ACTIONS(59),
    [anon_sym_continue] = ACTIONS(61),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_if] = ACTIONS(73),
    [anon_sym_function] = ACTIONS(75),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_return] = ACTIONS(77),
    [anon_sym_revert] = ACTIONS(79),
    [sym_unchecked] = ACTIONS(81),
    [anon_sym_var] = ACTIONS(83),
    [anon_sym_while] = ACTIONS(85),
    [anon_sym_do] = ACTIONS(87),
    [anon_sym_try] = ACTIONS(89),
    [anon_sym_emit] = ACTIONS(91),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_mapping] = ACTIONS(39),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(14)] = {
    [sym_statement] = STATE(111),
    [sym_assembly_statement] = STATE(120),
    [sym_block_statement] = STATE(120),
    [sym_variable_declaration_statement] = STATE(120),
    [sym_variable_declaration] = STATE(756),
    [sym_variable_declaration_tuple] = STATE(951),
    [sym_expression_statement] = STATE(120),
    [sym_if_statement] = STATE(120),
    [sym_for_statement] = STATE(120),
    [sym_while_statement] = STATE(120),
    [sym_do_while_statement] = STATE(120),
    [sym_continue_statement] = STATE(120),
    [sym_break_statement] = STATE(120),
    [sym_revert_statement] = STATE(120),
    [sym_try_statement] = STATE(120),
    [sym_return_statement] = STATE(120),
    [sym_emit_statement] = STATE(120),
    [sym_expression] = STATE(479),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_type_name] = STATE(578),
    [sym__array_type] = STATE(380),
    [sym__function_type] = STATE(379),
    [sym_user_defined_type] = STATE(459),
    [sym__identifier_path] = STATE(367),
    [sym__mapping] = STATE(381),
    [sym_primitive_type] = STATE(457),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_LBRACE] = ACTIONS(47),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(53),
    [anon_sym_for] = ACTIONS(55),
    [anon_sym_assembly] = ACTIONS(57),
    [anon_sym_break] = ACTIONS(59),
    [anon_sym_continue] = ACTIONS(61),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_if] = ACTIONS(73),
    [anon_sym_function] = ACTIONS(75),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_return] = ACTIONS(77),
    [anon_sym_revert] = ACTIONS(79),
    [sym_unchecked] = ACTIONS(81),
    [anon_sym_var] = ACTIONS(83),
    [anon_sym_while] = ACTIONS(85),
    [anon_sym_do] = ACTIONS(87),
    [anon_sym_try] = ACTIONS(89),
    [anon_sym_emit] = ACTIONS(91),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_mapping] = ACTIONS(39),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(15)] = {
    [sym_statement] = STATE(108),
    [sym_assembly_statement] = STATE(120),
    [sym_block_statement] = STATE(120),
    [sym_variable_declaration_statement] = STATE(120),
    [sym_variable_declaration] = STATE(756),
    [sym_variable_declaration_tuple] = STATE(951),
    [sym_expression_statement] = STATE(120),
    [sym_if_statement] = STATE(120),
    [sym_for_statement] = STATE(120),
    [sym_while_statement] = STATE(120),
    [sym_do_while_statement] = STATE(120),
    [sym_continue_statement] = STATE(120),
    [sym_break_statement] = STATE(120),
    [sym_revert_statement] = STATE(120),
    [sym_try_statement] = STATE(120),
    [sym_return_statement] = STATE(120),
    [sym_emit_statement] = STATE(120),
    [sym_expression] = STATE(479),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_type_name] = STATE(578),
    [sym__array_type] = STATE(380),
    [sym__function_type] = STATE(379),
    [sym_user_defined_type] = STATE(459),
    [sym__identifier_path] = STATE(367),
    [sym__mapping] = STATE(381),
    [sym_primitive_type] = STATE(457),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_LBRACE] = ACTIONS(47),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(53),
    [anon_sym_for] = ACTIONS(55),
    [anon_sym_assembly] = ACTIONS(57),
    [anon_sym_break] = ACTIONS(59),
    [anon_sym_continue] = ACTIONS(61),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_if] = ACTIONS(73),
    [anon_sym_function] = ACTIONS(75),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_return] = ACTIONS(77),
    [anon_sym_revert] = ACTIONS(79),
    [sym_unchecked] = ACTIONS(81),
    [anon_sym_var] = ACTIONS(83),
    [anon_sym_while] = ACTIONS(85),
    [anon_sym_do] = ACTIONS(87),
    [anon_sym_try] = ACTIONS(89),
    [anon_sym_emit] = ACTIONS(91),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_mapping] = ACTIONS(39),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(16)] = {
    [sym_statement] = STATE(109),
    [sym_assembly_statement] = STATE(120),
    [sym_block_statement] = STATE(120),
    [sym_variable_declaration_statement] = STATE(120),
    [sym_variable_declaration] = STATE(756),
    [sym_variable_declaration_tuple] = STATE(951),
    [sym_expression_statement] = STATE(120),
    [sym_if_statement] = STATE(120),
    [sym_for_statement] = STATE(120),
    [sym_while_statement] = STATE(120),
    [sym_do_while_statement] = STATE(120),
    [sym_continue_statement] = STATE(120),
    [sym_break_statement] = STATE(120),
    [sym_revert_statement] = STATE(120),
    [sym_try_statement] = STATE(120),
    [sym_return_statement] = STATE(120),
    [sym_emit_statement] = STATE(120),
    [sym_expression] = STATE(479),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_type_name] = STATE(578),
    [sym__array_type] = STATE(380),
    [sym__function_type] = STATE(379),
    [sym_user_defined_type] = STATE(459),
    [sym__identifier_path] = STATE(367),
    [sym__mapping] = STATE(381),
    [sym_primitive_type] = STATE(457),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_LBRACE] = ACTIONS(47),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(53),
    [anon_sym_for] = ACTIONS(55),
    [anon_sym_assembly] = ACTIONS(57),
    [anon_sym_break] = ACTIONS(59),
    [anon_sym_continue] = ACTIONS(61),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_if] = ACTIONS(73),
    [anon_sym_function] = ACTIONS(75),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_return] = ACTIONS(77),
    [anon_sym_revert] = ACTIONS(79),
    [sym_unchecked] = ACTIONS(81),
    [anon_sym_var] = ACTIONS(83),
    [anon_sym_while] = ACTIONS(85),
    [anon_sym_do] = ACTIONS(87),
    [anon_sym_try] = ACTIONS(89),
    [anon_sym_emit] = ACTIONS(91),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_mapping] = ACTIONS(39),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(17)] = {
    [sym_statement] = STATE(882),
    [sym_assembly_statement] = STATE(120),
    [sym_block_statement] = STATE(120),
    [sym_variable_declaration_statement] = STATE(120),
    [sym_variable_declaration] = STATE(722),
    [sym_variable_declaration_tuple] = STATE(955),
    [sym_expression_statement] = STATE(120),
    [sym_if_statement] = STATE(120),
    [sym_for_statement] = STATE(120),
    [sym_while_statement] = STATE(120),
    [sym_do_while_statement] = STATE(120),
    [sym_continue_statement] = STATE(120),
    [sym_break_statement] = STATE(120),
    [sym_revert_statement] = STATE(120),
    [sym_try_statement] = STATE(120),
    [sym_return_statement] = STATE(120),
    [sym_emit_statement] = STATE(120),
    [sym_expression] = STATE(472),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_type_name] = STATE(578),
    [sym__array_type] = STATE(380),
    [sym__function_type] = STATE(379),
    [sym_user_defined_type] = STATE(459),
    [sym__identifier_path] = STATE(367),
    [sym__mapping] = STATE(381),
    [sym_primitive_type] = STATE(457),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_LBRACE] = ACTIONS(47),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(53),
    [anon_sym_for] = ACTIONS(230),
    [anon_sym_assembly] = ACTIONS(57),
    [anon_sym_break] = ACTIONS(232),
    [anon_sym_continue] = ACTIONS(234),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_if] = ACTIONS(236),
    [anon_sym_function] = ACTIONS(75),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_return] = ACTIONS(238),
    [anon_sym_revert] = ACTIONS(240),
    [sym_unchecked] = ACTIONS(81),
    [anon_sym_var] = ACTIONS(83),
    [anon_sym_while] = ACTIONS(242),
    [anon_sym_do] = ACTIONS(244),
    [anon_sym_try] = ACTIONS(89),
    [anon_sym_emit] = ACTIONS(246),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_mapping] = ACTIONS(39),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(18)] = {
    [sym_statement] = STATE(122),
    [sym_assembly_statement] = STATE(120),
    [sym_block_statement] = STATE(120),
    [sym_variable_declaration_statement] = STATE(120),
    [sym_variable_declaration] = STATE(722),
    [sym_variable_declaration_tuple] = STATE(955),
    [sym_expression_statement] = STATE(120),
    [sym_if_statement] = STATE(120),
    [sym_for_statement] = STATE(120),
    [sym_while_statement] = STATE(120),
    [sym_do_while_statement] = STATE(120),
    [sym_continue_statement] = STATE(120),
    [sym_break_statement] = STATE(120),
    [sym_revert_statement] = STATE(120),
    [sym_try_statement] = STATE(120),
    [sym_return_statement] = STATE(120),
    [sym_emit_statement] = STATE(120),
    [sym_expression] = STATE(472),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_type_name] = STATE(578),
    [sym__array_type] = STATE(380),
    [sym__function_type] = STATE(379),
    [sym_user_defined_type] = STATE(459),
    [sym__identifier_path] = STATE(367),
    [sym__mapping] = STATE(381),
    [sym_primitive_type] = STATE(457),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_LBRACE] = ACTIONS(47),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(53),
    [anon_sym_for] = ACTIONS(230),
    [anon_sym_assembly] = ACTIONS(57),
    [anon_sym_break] = ACTIONS(232),
    [anon_sym_continue] = ACTIONS(234),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_if] = ACTIONS(236),
    [anon_sym_function] = ACTIONS(75),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_return] = ACTIONS(238),
    [anon_sym_revert] = ACTIONS(240),
    [sym_unchecked] = ACTIONS(81),
    [anon_sym_var] = ACTIONS(83),
    [anon_sym_while] = ACTIONS(242),
    [anon_sym_do] = ACTIONS(244),
    [anon_sym_try] = ACTIONS(89),
    [anon_sym_emit] = ACTIONS(246),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_mapping] = ACTIONS(39),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(19)] = {
    [sym_statement] = STATE(112),
    [sym_assembly_statement] = STATE(120),
    [sym_block_statement] = STATE(120),
    [sym_variable_declaration_statement] = STATE(120),
    [sym_variable_declaration] = STATE(756),
    [sym_variable_declaration_tuple] = STATE(951),
    [sym_expression_statement] = STATE(120),
    [sym_if_statement] = STATE(120),
    [sym_for_statement] = STATE(120),
    [sym_while_statement] = STATE(120),
    [sym_do_while_statement] = STATE(120),
    [sym_continue_statement] = STATE(120),
    [sym_break_statement] = STATE(120),
    [sym_revert_statement] = STATE(120),
    [sym_try_statement] = STATE(120),
    [sym_return_statement] = STATE(120),
    [sym_emit_statement] = STATE(120),
    [sym_expression] = STATE(479),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_type_name] = STATE(578),
    [sym__array_type] = STATE(380),
    [sym__function_type] = STATE(379),
    [sym_user_defined_type] = STATE(459),
    [sym__identifier_path] = STATE(367),
    [sym__mapping] = STATE(381),
    [sym_primitive_type] = STATE(457),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_LBRACE] = ACTIONS(47),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(53),
    [anon_sym_for] = ACTIONS(55),
    [anon_sym_assembly] = ACTIONS(57),
    [anon_sym_break] = ACTIONS(59),
    [anon_sym_continue] = ACTIONS(61),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_if] = ACTIONS(73),
    [anon_sym_function] = ACTIONS(75),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_return] = ACTIONS(77),
    [anon_sym_revert] = ACTIONS(79),
    [sym_unchecked] = ACTIONS(81),
    [anon_sym_var] = ACTIONS(83),
    [anon_sym_while] = ACTIONS(85),
    [anon_sym_do] = ACTIONS(87),
    [anon_sym_try] = ACTIONS(89),
    [anon_sym_emit] = ACTIONS(91),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_mapping] = ACTIONS(39),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(20)] = {
    [sym_statement] = STATE(108),
    [sym_assembly_statement] = STATE(120),
    [sym_block_statement] = STATE(120),
    [sym_variable_declaration_statement] = STATE(120),
    [sym_variable_declaration] = STATE(722),
    [sym_variable_declaration_tuple] = STATE(955),
    [sym_expression_statement] = STATE(120),
    [sym_if_statement] = STATE(120),
    [sym_for_statement] = STATE(120),
    [sym_while_statement] = STATE(120),
    [sym_do_while_statement] = STATE(120),
    [sym_continue_statement] = STATE(120),
    [sym_break_statement] = STATE(120),
    [sym_revert_statement] = STATE(120),
    [sym_try_statement] = STATE(120),
    [sym_return_statement] = STATE(120),
    [sym_emit_statement] = STATE(120),
    [sym_expression] = STATE(472),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_type_name] = STATE(578),
    [sym__array_type] = STATE(380),
    [sym__function_type] = STATE(379),
    [sym_user_defined_type] = STATE(459),
    [sym__identifier_path] = STATE(367),
    [sym__mapping] = STATE(381),
    [sym_primitive_type] = STATE(457),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_LBRACE] = ACTIONS(47),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(53),
    [anon_sym_for] = ACTIONS(230),
    [anon_sym_assembly] = ACTIONS(57),
    [anon_sym_break] = ACTIONS(232),
    [anon_sym_continue] = ACTIONS(234),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_if] = ACTIONS(236),
    [anon_sym_function] = ACTIONS(75),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_return] = ACTIONS(238),
    [anon_sym_revert] = ACTIONS(240),
    [sym_unchecked] = ACTIONS(81),
    [anon_sym_var] = ACTIONS(83),
    [anon_sym_while] = ACTIONS(242),
    [anon_sym_do] = ACTIONS(244),
    [anon_sym_try] = ACTIONS(89),
    [anon_sym_emit] = ACTIONS(246),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_mapping] = ACTIONS(39),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(21)] = {
    [sym_statement] = STATE(109),
    [sym_assembly_statement] = STATE(120),
    [sym_block_statement] = STATE(120),
    [sym_variable_declaration_statement] = STATE(120),
    [sym_variable_declaration] = STATE(722),
    [sym_variable_declaration_tuple] = STATE(955),
    [sym_expression_statement] = STATE(120),
    [sym_if_statement] = STATE(120),
    [sym_for_statement] = STATE(120),
    [sym_while_statement] = STATE(120),
    [sym_do_while_statement] = STATE(120),
    [sym_continue_statement] = STATE(120),
    [sym_break_statement] = STATE(120),
    [sym_revert_statement] = STATE(120),
    [sym_try_statement] = STATE(120),
    [sym_return_statement] = STATE(120),
    [sym_emit_statement] = STATE(120),
    [sym_expression] = STATE(472),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_type_name] = STATE(578),
    [sym__array_type] = STATE(380),
    [sym__function_type] = STATE(379),
    [sym_user_defined_type] = STATE(459),
    [sym__identifier_path] = STATE(367),
    [sym__mapping] = STATE(381),
    [sym_primitive_type] = STATE(457),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_LBRACE] = ACTIONS(47),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(53),
    [anon_sym_for] = ACTIONS(230),
    [anon_sym_assembly] = ACTIONS(57),
    [anon_sym_break] = ACTIONS(232),
    [anon_sym_continue] = ACTIONS(234),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_if] = ACTIONS(236),
    [anon_sym_function] = ACTIONS(75),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_return] = ACTIONS(238),
    [anon_sym_revert] = ACTIONS(240),
    [sym_unchecked] = ACTIONS(81),
    [anon_sym_var] = ACTIONS(83),
    [anon_sym_while] = ACTIONS(242),
    [anon_sym_do] = ACTIONS(244),
    [anon_sym_try] = ACTIONS(89),
    [anon_sym_emit] = ACTIONS(246),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_mapping] = ACTIONS(39),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(22)] = {
    [sym_statement] = STATE(112),
    [sym_assembly_statement] = STATE(120),
    [sym_block_statement] = STATE(120),
    [sym_variable_declaration_statement] = STATE(120),
    [sym_variable_declaration] = STATE(722),
    [sym_variable_declaration_tuple] = STATE(955),
    [sym_expression_statement] = STATE(120),
    [sym_if_statement] = STATE(120),
    [sym_for_statement] = STATE(120),
    [sym_while_statement] = STATE(120),
    [sym_do_while_statement] = STATE(120),
    [sym_continue_statement] = STATE(120),
    [sym_break_statement] = STATE(120),
    [sym_revert_statement] = STATE(120),
    [sym_try_statement] = STATE(120),
    [sym_return_statement] = STATE(120),
    [sym_emit_statement] = STATE(120),
    [sym_expression] = STATE(472),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_type_name] = STATE(578),
    [sym__array_type] = STATE(380),
    [sym__function_type] = STATE(379),
    [sym_user_defined_type] = STATE(459),
    [sym__identifier_path] = STATE(367),
    [sym__mapping] = STATE(381),
    [sym_primitive_type] = STATE(457),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_LBRACE] = ACTIONS(47),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(53),
    [anon_sym_for] = ACTIONS(230),
    [anon_sym_assembly] = ACTIONS(57),
    [anon_sym_break] = ACTIONS(232),
    [anon_sym_continue] = ACTIONS(234),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_if] = ACTIONS(236),
    [anon_sym_function] = ACTIONS(75),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_return] = ACTIONS(238),
    [anon_sym_revert] = ACTIONS(240),
    [sym_unchecked] = ACTIONS(81),
    [anon_sym_var] = ACTIONS(83),
    [anon_sym_while] = ACTIONS(242),
    [anon_sym_do] = ACTIONS(244),
    [anon_sym_try] = ACTIONS(89),
    [anon_sym_emit] = ACTIONS(246),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_mapping] = ACTIONS(39),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(23)] = {
    [sym_statement] = STATE(974),
    [sym_assembly_statement] = STATE(120),
    [sym_block_statement] = STATE(120),
    [sym_variable_declaration_statement] = STATE(120),
    [sym_variable_declaration] = STATE(722),
    [sym_variable_declaration_tuple] = STATE(955),
    [sym_expression_statement] = STATE(120),
    [sym_if_statement] = STATE(120),
    [sym_for_statement] = STATE(120),
    [sym_while_statement] = STATE(120),
    [sym_do_while_statement] = STATE(120),
    [sym_continue_statement] = STATE(120),
    [sym_break_statement] = STATE(120),
    [sym_revert_statement] = STATE(120),
    [sym_try_statement] = STATE(120),
    [sym_return_statement] = STATE(120),
    [sym_emit_statement] = STATE(120),
    [sym_expression] = STATE(472),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_type_name] = STATE(578),
    [sym__array_type] = STATE(380),
    [sym__function_type] = STATE(379),
    [sym_user_defined_type] = STATE(459),
    [sym__identifier_path] = STATE(367),
    [sym__mapping] = STATE(381),
    [sym_primitive_type] = STATE(457),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_LBRACE] = ACTIONS(47),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(53),
    [anon_sym_for] = ACTIONS(230),
    [anon_sym_assembly] = ACTIONS(57),
    [anon_sym_break] = ACTIONS(232),
    [anon_sym_continue] = ACTIONS(234),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_if] = ACTIONS(236),
    [anon_sym_function] = ACTIONS(75),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_return] = ACTIONS(238),
    [anon_sym_revert] = ACTIONS(240),
    [sym_unchecked] = ACTIONS(81),
    [anon_sym_var] = ACTIONS(83),
    [anon_sym_while] = ACTIONS(242),
    [anon_sym_do] = ACTIONS(244),
    [anon_sym_try] = ACTIONS(89),
    [anon_sym_emit] = ACTIONS(246),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_mapping] = ACTIONS(39),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(24)] = {
    [sym_variable_declaration_statement] = STATE(35),
    [sym_variable_declaration] = STATE(756),
    [sym_variable_declaration_tuple] = STATE(951),
    [sym_expression_statement] = STATE(35),
    [sym_expression] = STATE(479),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_type_name] = STATE(578),
    [sym__array_type] = STATE(380),
    [sym__function_type] = STATE(379),
    [sym_user_defined_type] = STATE(459),
    [sym__identifier_path] = STATE(367),
    [sym__mapping] = STATE(381),
    [sym_primitive_type] = STATE(457),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__semicolon] = STATE(35),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(53),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_function] = ACTIONS(75),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(83),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_mapping] = ACTIONS(39),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [anon_sym_SEMI] = ACTIONS(248),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(25)] = {
    [sym_variable_declaration_statement] = STATE(36),
    [sym_variable_declaration] = STATE(756),
    [sym_variable_declaration_tuple] = STATE(951),
    [sym_expression_statement] = STATE(36),
    [sym_expression] = STATE(479),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_type_name] = STATE(578),
    [sym__array_type] = STATE(380),
    [sym__function_type] = STATE(379),
    [sym_user_defined_type] = STATE(459),
    [sym__identifier_path] = STATE(367),
    [sym__mapping] = STATE(381),
    [sym_primitive_type] = STATE(457),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__semicolon] = STATE(36),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(53),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_function] = ACTIONS(75),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(83),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_mapping] = ACTIONS(39),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [anon_sym_SEMI] = ACTIONS(250),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(26)] = {
    [sym_variable_declaration] = STATE(649),
    [sym_expression] = STATE(462),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_type_name] = STATE(578),
    [sym__array_type] = STATE(380),
    [sym__function_type] = STATE(379),
    [sym_user_defined_type] = STATE(459),
    [sym__identifier_path] = STATE(367),
    [sym__mapping] = STATE(381),
    [sym_primitive_type] = STATE(457),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_variable_declaration_tuple_repeat1] = STATE(651),
    [aux_sym_tuple_expression_repeat1] = STATE(701),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_COMMA] = ACTIONS(252),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(254),
    [anon_sym_RPAREN] = ACTIONS(256),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_function] = ACTIONS(75),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_mapping] = ACTIONS(39),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(27)] = {
    [sym_variable_declaration] = STATE(859),
    [sym_expression] = STATE(468),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_type_name] = STATE(578),
    [sym__array_type] = STATE(380),
    [sym__function_type] = STATE(379),
    [sym_user_defined_type] = STATE(459),
    [sym__identifier_path] = STATE(367),
    [sym__mapping] = STATE(381),
    [sym_primitive_type] = STATE(457),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_COMMA] = ACTIONS(258),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(254),
    [anon_sym_RPAREN] = ACTIONS(261),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_function] = ACTIONS(75),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_mapping] = ACTIONS(39),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(28)] = {
    [sym_call_argument] = STATE(763),
    [sym_expression] = STATE(461),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_user_defined_type] = STATE(436),
    [sym__identifier_path] = STATE(367),
    [sym_primitive_type] = STATE(420),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_tuple_expression_repeat1] = STATE(701),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_LBRACE] = ACTIONS(263),
    [anon_sym_COMMA] = ACTIONS(265),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(254),
    [anon_sym_RPAREN] = ACTIONS(267),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(29)] = {
    [sym_call_argument] = STATE(819),
    [sym_expression] = STATE(471),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_user_defined_type] = STATE(436),
    [sym__identifier_path] = STATE(367),
    [sym_primitive_type] = STATE(420),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_LBRACE] = ACTIONS(263),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(254),
    [anon_sym_RPAREN] = ACTIONS(269),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(30)] = {
    [sym_expression] = STATE(462),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_user_defined_type] = STATE(436),
    [sym__identifier_path] = STATE(367),
    [sym_primitive_type] = STATE(420),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_tuple_expression_repeat1] = STATE(701),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_COMMA] = ACTIONS(265),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(254),
    [anon_sym_RPAREN] = ACTIONS(271),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(31)] = {
    [sym_call_argument] = STATE(819),
    [sym_expression] = STATE(471),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_user_defined_type] = STATE(436),
    [sym__identifier_path] = STATE(367),
    [sym_primitive_type] = STATE(420),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_LBRACE] = ACTIONS(263),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(254),
    [anon_sym_RPAREN] = ACTIONS(273),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(32)] = {
    [sym_call_argument] = STATE(763),
    [sym_expression] = STATE(471),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_user_defined_type] = STATE(436),
    [sym__identifier_path] = STATE(367),
    [sym_primitive_type] = STATE(420),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_LBRACE] = ACTIONS(263),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(254),
    [anon_sym_RPAREN] = ACTIONS(275),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(33)] = {
    [sym__call_arguments] = STATE(879),
    [sym_expression] = STATE(478),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_user_defined_type] = STATE(436),
    [sym__identifier_path] = STATE(367),
    [sym_primitive_type] = STATE(420),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__semicolon] = STATE(123),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(277),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [anon_sym_SEMI] = ACTIONS(279),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(34)] = {
    [sym__call_arguments] = STATE(839),
    [sym_expression] = STATE(477),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_user_defined_type] = STATE(436),
    [sym__identifier_path] = STATE(367),
    [sym_primitive_type] = STATE(420),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__semicolon] = STATE(123),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(277),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [anon_sym_SEMI] = ACTIONS(279),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(35)] = {
    [sym_expression_statement] = STATE(45),
    [sym_expression] = STATE(479),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_user_defined_type] = STATE(436),
    [sym__identifier_path] = STATE(367),
    [sym_primitive_type] = STATE(420),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__semicolon] = STATE(45),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(254),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [anon_sym_SEMI] = ACTIONS(281),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(36)] = {
    [sym_expression_statement] = STATE(50),
    [sym_expression] = STATE(479),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_user_defined_type] = STATE(436),
    [sym__identifier_path] = STATE(367),
    [sym_primitive_type] = STATE(420),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__semicolon] = STATE(50),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(254),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [anon_sym_SEMI] = ACTIONS(283),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(37)] = {
    [sym_call_argument] = STATE(819),
    [sym_expression] = STATE(471),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_user_defined_type] = STATE(436),
    [sym__identifier_path] = STATE(367),
    [sym_primitive_type] = STATE(420),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_LBRACE] = ACTIONS(263),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(254),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(38)] = {
    [sym_expression] = STATE(468),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_user_defined_type] = STATE(436),
    [sym__identifier_path] = STATE(367),
    [sym_primitive_type] = STATE(420),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_COMMA] = ACTIONS(285),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(254),
    [anon_sym_RPAREN] = ACTIONS(287),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(39)] = {
    [sym_expression] = STATE(474),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_user_defined_type] = STATE(436),
    [sym__identifier_path] = STATE(367),
    [sym_primitive_type] = STATE(420),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__semicolon] = STATE(124),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(254),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [anon_sym_SEMI] = ACTIONS(289),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(40)] = {
    [sym_expression] = STATE(476),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_user_defined_type] = STATE(436),
    [sym__identifier_path] = STATE(367),
    [sym_primitive_type] = STATE(420),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__semicolon] = STATE(124),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(254),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [anon_sym_SEMI] = ACTIONS(289),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(41)] = {
    [sym_expression] = STATE(469),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_user_defined_type] = STATE(436),
    [sym__identifier_path] = STATE(367),
    [sym_primitive_type] = STATE(420),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(254),
    [anon_sym_COLON] = ACTIONS(291),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_RBRACK] = ACTIONS(293),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(42)] = {
    [sym_expression] = STATE(468),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_user_defined_type] = STATE(436),
    [sym__identifier_path] = STATE(367),
    [sym_primitive_type] = STATE(420),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_COMMA] = ACTIONS(285),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(254),
    [anon_sym_RPAREN] = ACTIONS(285),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(43)] = {
    [sym_expression] = STATE(468),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_user_defined_type] = STATE(436),
    [sym__identifier_path] = STATE(367),
    [sym_primitive_type] = STATE(420),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_COMMA] = ACTIONS(285),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(254),
    [anon_sym_RPAREN] = ACTIONS(295),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(44)] = {
    [sym_expression] = STATE(468),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_user_defined_type] = STATE(436),
    [sym__identifier_path] = STATE(367),
    [sym_primitive_type] = STATE(420),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_COMMA] = ACTIONS(285),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(254),
    [anon_sym_RPAREN] = ACTIONS(297),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(45)] = {
    [sym_expression] = STATE(494),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_user_defined_type] = STATE(436),
    [sym__identifier_path] = STATE(367),
    [sym_primitive_type] = STATE(420),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(254),
    [anon_sym_RPAREN] = ACTIONS(299),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(46)] = {
    [sym_expression] = STATE(464),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_user_defined_type] = STATE(436),
    [sym__identifier_path] = STATE(367),
    [sym_primitive_type] = STATE(420),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(254),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_RBRACK] = ACTIONS(301),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(47)] = {
    [sym_expression] = STATE(487),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_user_defined_type] = STATE(436),
    [sym__identifier_path] = STATE(367),
    [sym_primitive_type] = STATE(420),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(254),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_RBRACK] = ACTIONS(303),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(48)] = {
    [sym_expression] = STATE(491),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_user_defined_type] = STATE(436),
    [sym__identifier_path] = STATE(367),
    [sym_primitive_type] = STATE(420),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(254),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_RBRACK] = ACTIONS(305),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(49)] = {
    [sym_expression] = STATE(483),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_user_defined_type] = STATE(436),
    [sym__identifier_path] = STATE(367),
    [sym_primitive_type] = STATE(420),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(254),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_RBRACK] = ACTIONS(307),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(50)] = {
    [sym_expression] = STATE(498),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_user_defined_type] = STATE(436),
    [sym__identifier_path] = STATE(367),
    [sym_primitive_type] = STATE(420),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(254),
    [anon_sym_RPAREN] = ACTIONS(309),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(51)] = {
    [sym_expression] = STATE(483),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_user_defined_type] = STATE(436),
    [sym__identifier_path] = STATE(367),
    [sym_primitive_type] = STATE(420),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(254),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_RBRACK] = ACTIONS(311),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(52)] = {
    [sym_expression] = STATE(485),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_user_defined_type] = STATE(436),
    [sym__identifier_path] = STATE(367),
    [sym_primitive_type] = STATE(420),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(254),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_RBRACK] = ACTIONS(313),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(53)] = {
    [sym_expression] = STATE(496),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_user_defined_type] = STATE(436),
    [sym__identifier_path] = STATE(367),
    [sym_primitive_type] = STATE(420),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(254),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(54)] = {
    [sym_expression] = STATE(470),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_user_defined_type] = STATE(436),
    [sym__identifier_path] = STATE(367),
    [sym_primitive_type] = STATE(420),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(254),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(55)] = {
    [sym_expression] = STATE(416),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_user_defined_type] = STATE(436),
    [sym__identifier_path] = STATE(367),
    [sym_primitive_type] = STATE(420),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(254),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(56)] = {
    [sym_expression] = STATE(418),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_user_defined_type] = STATE(436),
    [sym__identifier_path] = STATE(367),
    [sym_primitive_type] = STATE(420),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(254),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(57)] = {
    [sym_expression] = STATE(493),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_user_defined_type] = STATE(436),
    [sym__identifier_path] = STATE(367),
    [sym_primitive_type] = STATE(420),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(254),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(58)] = {
    [sym_expression] = STATE(415),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_user_defined_type] = STATE(436),
    [sym__identifier_path] = STATE(367),
    [sym_primitive_type] = STATE(420),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(254),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(59)] = {
    [sym_expression] = STATE(408),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_user_defined_type] = STATE(436),
    [sym__identifier_path] = STATE(367),
    [sym_primitive_type] = STATE(420),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(254),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(60)] = {
    [sym_expression] = STATE(481),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_user_defined_type] = STATE(436),
    [sym__identifier_path] = STATE(367),
    [sym_primitive_type] = STATE(420),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(254),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(61)] = {
    [sym_expression] = STATE(402),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_user_defined_type] = STATE(436),
    [sym__identifier_path] = STATE(367),
    [sym_primitive_type] = STATE(420),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(254),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(62)] = {
    [sym_expression] = STATE(409),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_user_defined_type] = STATE(436),
    [sym__identifier_path] = STATE(367),
    [sym_primitive_type] = STATE(420),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(254),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(63)] = {
    [sym_expression] = STATE(466),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_user_defined_type] = STATE(436),
    [sym__identifier_path] = STATE(367),
    [sym_primitive_type] = STATE(420),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(254),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(64)] = {
    [sym_expression] = STATE(410),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_user_defined_type] = STATE(436),
    [sym__identifier_path] = STATE(367),
    [sym_primitive_type] = STATE(420),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(254),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(65)] = {
    [sym_expression] = STATE(411),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_user_defined_type] = STATE(436),
    [sym__identifier_path] = STATE(367),
    [sym_primitive_type] = STATE(420),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(254),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(66)] = {
    [sym_expression] = STATE(482),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_user_defined_type] = STATE(436),
    [sym__identifier_path] = STATE(367),
    [sym_primitive_type] = STATE(420),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(254),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(67)] = {
    [sym_expression] = STATE(483),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_user_defined_type] = STATE(436),
    [sym__identifier_path] = STATE(367),
    [sym_primitive_type] = STATE(420),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(254),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(68)] = {
    [sym_expression] = STATE(480),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_user_defined_type] = STATE(436),
    [sym__identifier_path] = STATE(367),
    [sym_primitive_type] = STATE(420),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(254),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(69)] = {
    [sym_expression] = STATE(486),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_user_defined_type] = STATE(436),
    [sym__identifier_path] = STATE(367),
    [sym_primitive_type] = STATE(420),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(254),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(70)] = {
    [sym_expression] = STATE(495),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_user_defined_type] = STATE(436),
    [sym__identifier_path] = STATE(367),
    [sym_primitive_type] = STATE(420),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(254),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(71)] = {
    [sym_expression] = STATE(467),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_user_defined_type] = STATE(436),
    [sym__identifier_path] = STATE(367),
    [sym_primitive_type] = STATE(420),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(254),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(72)] = {
    [sym_expression] = STATE(463),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_user_defined_type] = STATE(436),
    [sym__identifier_path] = STATE(367),
    [sym_primitive_type] = STATE(420),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(254),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(73)] = {
    [sym_expression] = STATE(501),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_user_defined_type] = STATE(436),
    [sym__identifier_path] = STATE(367),
    [sym_primitive_type] = STATE(420),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(254),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(74)] = {
    [sym_expression] = STATE(423),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_user_defined_type] = STATE(436),
    [sym__identifier_path] = STATE(367),
    [sym_primitive_type] = STATE(420),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(254),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(75)] = {
    [sym_expression] = STATE(404),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_user_defined_type] = STATE(436),
    [sym__identifier_path] = STATE(367),
    [sym_primitive_type] = STATE(420),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(254),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(76)] = {
    [sym_expression] = STATE(475),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_user_defined_type] = STATE(436),
    [sym__identifier_path] = STATE(367),
    [sym_primitive_type] = STATE(420),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(254),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(77)] = {
    [sym_expression] = STATE(405),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_user_defined_type] = STATE(436),
    [sym__identifier_path] = STATE(367),
    [sym_primitive_type] = STATE(420),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(254),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(78)] = {
    [sym_expression] = STATE(406),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_user_defined_type] = STATE(436),
    [sym__identifier_path] = STATE(367),
    [sym_primitive_type] = STATE(420),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(254),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(79)] = {
    [sym_expression] = STATE(407),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_user_defined_type] = STATE(436),
    [sym__identifier_path] = STATE(367),
    [sym_primitive_type] = STATE(420),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(254),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(80)] = {
    [sym_expression] = STATE(465),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_user_defined_type] = STATE(436),
    [sym__identifier_path] = STATE(367),
    [sym_primitive_type] = STATE(420),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(254),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(81)] = {
    [sym_expression] = STATE(503),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_user_defined_type] = STATE(436),
    [sym__identifier_path] = STATE(367),
    [sym_primitive_type] = STATE(420),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(254),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(82)] = {
    [sym_expression] = STATE(413),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_user_defined_type] = STATE(436),
    [sym__identifier_path] = STATE(367),
    [sym_primitive_type] = STATE(420),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(254),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(83)] = {
    [sym_expression] = STATE(497),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_user_defined_type] = STATE(436),
    [sym__identifier_path] = STATE(367),
    [sym_primitive_type] = STATE(420),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(254),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(84)] = {
    [sym_expression] = STATE(492),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_user_defined_type] = STATE(436),
    [sym__identifier_path] = STATE(367),
    [sym_primitive_type] = STATE(420),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(254),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(85)] = {
    [sym_expression] = STATE(499),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_user_defined_type] = STATE(436),
    [sym__identifier_path] = STATE(367),
    [sym_primitive_type] = STATE(420),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(254),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(86)] = {
    [sym_expression] = STATE(412),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_user_defined_type] = STATE(436),
    [sym__identifier_path] = STATE(367),
    [sym_primitive_type] = STATE(420),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(254),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(87)] = {
    [sym_expression] = STATE(419),
    [sym__primary_expression] = STATE(436),
    [sym_type_cast_expression] = STATE(436),
    [sym_ternary_expression] = STATE(436),
    [sym_new_expression] = STATE(436),
    [sym_tuple_expression] = STATE(436),
    [sym_inline_array_expression] = STATE(436),
    [sym_binary_expression] = STATE(436),
    [sym_unary_expression] = STATE(436),
    [sym_update_expression] = STATE(436),
    [sym_member_expression] = STATE(436),
    [sym_array_access] = STATE(436),
    [sym_slice_access] = STATE(436),
    [sym_struct_expression] = STATE(436),
    [sym_parenthesized_expression] = STATE(436),
    [sym_assignment_expression] = STATE(436),
    [sym_augmented_assignment_expression] = STATE(436),
    [sym_call_expression] = STATE(436),
    [sym_payable_conversion_expression] = STATE(436),
    [sym_meta_type_expression] = STATE(436),
    [sym_user_defined_type] = STATE(436),
    [sym__identifier_path] = STATE(367),
    [sym_primitive_type] = STATE(420),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym__literal] = STATE(436),
    [sym_string_literal] = STATE(436),
    [sym_number_literal] = STATE(436),
    [sym__decimal_number] = STATE(386),
    [sym__hex_number] = STATE(386),
    [sym_true] = STATE(425),
    [sym_false] = STATE(425),
    [sym_boolean_literal] = STATE(436),
    [sym_hex_string_literal] = STATE(436),
    [sym_unicode_string_literal] = STATE(436),
    [sym_string] = STATE(397),
    [aux_sym_string_literal_repeat1] = STATE(397),
    [aux_sym_hex_string_literal_repeat1] = STATE(401),
    [aux_sym_unicode_string_literal_repeat3] = STATE(398),
    [sym_identifier] = ACTIONS(107),
    [anon_sym_DASH] = ACTIONS(43),
    [anon_sym_TILDE] = ACTIONS(45),
    [anon_sym_type] = ACTIONS(51),
    [anon_sym_LPAREN] = ACTIONS(254),
    [anon_sym_true] = ACTIONS(63),
    [anon_sym_false] = ACTIONS(65),
    [anon_sym_hex] = ACTIONS(67),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_payable] = ACTIONS(93),
    [anon_sym_new] = ACTIONS(95),
    [anon_sym_LBRACK] = ACTIONS(97),
    [anon_sym_delete] = ACTIONS(43),
    [anon_sym_BANG] = ACTIONS(45),
    [anon_sym_PLUS_PLUS] = ACTIONS(99),
    [anon_sym_DASH_DASH] = ACTIONS(99),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [aux_sym__decimal_number_token1] = ACTIONS(101),
    [aux_sym__decimal_number_token2] = ACTIONS(103),
    [aux_sym__hex_number_token1] = ACTIONS(103),
    [anon_sym_unicode] = ACTIONS(105),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(88)] = {
    [sym__source_unit] = STATE(89),
    [sym__directive] = STATE(89),
    [sym_pragma_directive] = STATE(89),
    [sym_import_directive] = STATE(89),
    [sym__declaration] = STATE(89),
    [sym_user_defined_type_definition] = STATE(89),
    [sym_constant_variable_declaration] = STATE(89),
    [sym_contract_declaration] = STATE(89),
    [sym_error_declaration] = STATE(89),
    [sym_interface_declaration] = STATE(89),
    [sym_library_declaration] = STATE(89),
    [sym_struct_declaration] = STATE(89),
    [sym_enum_declaration] = STATE(89),
    [sym_event_definition] = STATE(89),
    [sym_using_directive] = STATE(89),
    [sym_function_definition] = STATE(89),
    [sym_type_name] = STATE(769),
    [sym__array_type] = STATE(380),
    [sym__function_type] = STATE(379),
    [sym_user_defined_type] = STATE(380),
    [sym__identifier_path] = STATE(367),
    [sym__mapping] = STATE(381),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [aux_sym_source_file_repeat1] = STATE(89),
    [ts_builtin_sym_end] = ACTIONS(315),
    [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_event] = ACTIONS(29),
    [anon_sym_using] = ACTIONS(31),
    [anon_sym_function] = ACTIONS(33),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_mapping] = ACTIONS(39),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(89)] = {
    [sym__source_unit] = STATE(89),
    [sym__directive] = STATE(89),
    [sym_pragma_directive] = STATE(89),
    [sym_import_directive] = STATE(89),
    [sym__declaration] = STATE(89),
    [sym_user_defined_type_definition] = STATE(89),
    [sym_constant_variable_declaration] = STATE(89),
    [sym_contract_declaration] = STATE(89),
    [sym_error_declaration] = STATE(89),
    [sym_interface_declaration] = STATE(89),
    [sym_library_declaration] = STATE(89),
    [sym_struct_declaration] = STATE(89),
    [sym_enum_declaration] = STATE(89),
    [sym_event_definition] = STATE(89),
    [sym_using_directive] = STATE(89),
    [sym_function_definition] = STATE(89),
    [sym_type_name] = STATE(769),
    [sym__array_type] = STATE(380),
    [sym__function_type] = STATE(379),
    [sym_user_defined_type] = STATE(380),
    [sym__identifier_path] = STATE(367),
    [sym__mapping] = STATE(381),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [aux_sym_source_file_repeat1] = STATE(89),
    [ts_builtin_sym_end] = ACTIONS(317),
    [sym_identifier] = ACTIONS(319),
    [anon_sym_pragma] = ACTIONS(322),
    [anon_sym_import] = ACTIONS(325),
    [anon_sym_type] = ACTIONS(328),
    [anon_sym_abstract] = ACTIONS(331),
    [anon_sym_contract] = ACTIONS(334),
    [anon_sym_error] = ACTIONS(337),
    [anon_sym_interface] = ACTIONS(340),
    [anon_sym_library] = ACTIONS(343),
    [anon_sym_struct] = ACTIONS(346),
    [anon_sym_enum] = ACTIONS(349),
    [anon_sym_event] = ACTIONS(352),
    [anon_sym_using] = ACTIONS(355),
    [anon_sym_function] = ACTIONS(358),
    [anon_sym_byte] = ACTIONS(361),
    [anon_sym_address] = ACTIONS(364),
    [anon_sym_var] = ACTIONS(361),
    [anon_sym_mapping] = ACTIONS(367),
    [anon_sym_bool] = ACTIONS(361),
    [anon_sym_string] = ACTIONS(361),
    [anon_sym_int] = ACTIONS(361),
    [anon_sym_int8] = ACTIONS(361),
    [anon_sym_int16] = ACTIONS(361),
    [anon_sym_int24] = ACTIONS(361),
    [anon_sym_int32] = ACTIONS(361),
    [anon_sym_int40] = ACTIONS(361),
    [anon_sym_int48] = ACTIONS(361),
    [anon_sym_int56] = ACTIONS(361),
    [anon_sym_int64] = ACTIONS(361),
    [anon_sym_int72] = ACTIONS(361),
    [anon_sym_int80] = ACTIONS(361),
    [anon_sym_int88] = ACTIONS(361),
    [anon_sym_int96] = ACTIONS(361),
    [anon_sym_int104] = ACTIONS(361),
    [anon_sym_int112] = ACTIONS(361),
    [anon_sym_int120] = ACTIONS(361),
    [anon_sym_int128] = ACTIONS(361),
    [anon_sym_int136] = ACTIONS(361),
    [anon_sym_int144] = ACTIONS(361),
    [anon_sym_int152] = ACTIONS(361),
    [anon_sym_int160] = ACTIONS(361),
    [anon_sym_int168] = ACTIONS(361),
    [anon_sym_int176] = ACTIONS(361),
    [anon_sym_int184] = ACTIONS(361),
    [anon_sym_int192] = ACTIONS(361),
    [anon_sym_int200] = ACTIONS(361),
    [anon_sym_int208] = ACTIONS(361),
    [anon_sym_int216] = ACTIONS(361),
    [anon_sym_int224] = ACTIONS(361),
    [anon_sym_int232] = ACTIONS(361),
    [anon_sym_int240] = ACTIONS(361),
    [anon_sym_int248] = ACTIONS(361),
    [anon_sym_int256] = ACTIONS(361),
    [anon_sym_uint] = ACTIONS(361),
    [anon_sym_uint8] = ACTIONS(361),
    [anon_sym_uint16] = ACTIONS(361),
    [anon_sym_uint24] = ACTIONS(361),
    [anon_sym_uint32] = ACTIONS(361),
    [anon_sym_uint40] = ACTIONS(361),
    [anon_sym_uint48] = ACTIONS(361),
    [anon_sym_uint56] = ACTIONS(361),
    [anon_sym_uint64] = ACTIONS(361),
    [anon_sym_uint72] = ACTIONS(361),
    [anon_sym_uint80] = ACTIONS(361),
    [anon_sym_uint88] = ACTIONS(361),
    [anon_sym_uint96] = ACTIONS(361),
    [anon_sym_uint104] = ACTIONS(361),
    [anon_sym_uint112] = ACTIONS(361),
    [anon_sym_uint120] = ACTIONS(361),
    [anon_sym_uint128] = ACTIONS(361),
    [anon_sym_uint136] = ACTIONS(361),
    [anon_sym_uint144] = ACTIONS(361),
    [anon_sym_uint152] = ACTIONS(361),
    [anon_sym_uint160] = ACTIONS(361),
    [anon_sym_uint168] = ACTIONS(361),
    [anon_sym_uint176] = ACTIONS(361),
    [anon_sym_uint184] = ACTIONS(361),
    [anon_sym_uint192] = ACTIONS(361),
    [anon_sym_uint200] = ACTIONS(361),
    [anon_sym_uint208] = ACTIONS(361),
    [anon_sym_uint216] = ACTIONS(361),
    [anon_sym_uint224] = ACTIONS(361),
    [anon_sym_uint232] = ACTIONS(361),
    [anon_sym_uint240] = ACTIONS(361),
    [anon_sym_uint248] = ACTIONS(361),
    [anon_sym_uint256] = ACTIONS(361),
    [anon_sym_bytes] = ACTIONS(361),
    [anon_sym_bytes1] = ACTIONS(361),
    [anon_sym_bytes2] = ACTIONS(361),
    [anon_sym_bytes3] = ACTIONS(361),
    [anon_sym_bytes4] = ACTIONS(361),
    [anon_sym_bytes5] = ACTIONS(361),
    [anon_sym_bytes6] = ACTIONS(361),
    [anon_sym_bytes7] = ACTIONS(361),
    [anon_sym_bytes8] = ACTIONS(361),
    [anon_sym_bytes9] = ACTIONS(361),
    [anon_sym_bytes10] = ACTIONS(361),
    [anon_sym_bytes11] = ACTIONS(361),
    [anon_sym_bytes12] = ACTIONS(361),
    [anon_sym_bytes13] = ACTIONS(361),
    [anon_sym_bytes14] = ACTIONS(361),
    [anon_sym_bytes15] = ACTIONS(361),
    [anon_sym_bytes16] = ACTIONS(361),
    [anon_sym_bytes17] = ACTIONS(361),
    [anon_sym_bytes18] = ACTIONS(361),
    [anon_sym_bytes19] = ACTIONS(361),
    [anon_sym_bytes20] = ACTIONS(361),
    [anon_sym_bytes21] = ACTIONS(361),
    [anon_sym_bytes22] = ACTIONS(361),
    [anon_sym_bytes23] = ACTIONS(361),
    [anon_sym_bytes24] = ACTIONS(361),
    [anon_sym_bytes25] = ACTIONS(361),
    [anon_sym_bytes26] = ACTIONS(361),
    [anon_sym_bytes27] = ACTIONS(361),
    [anon_sym_bytes28] = ACTIONS(361),
    [anon_sym_bytes29] = ACTIONS(361),
    [anon_sym_bytes30] = ACTIONS(361),
    [anon_sym_bytes31] = ACTIONS(361),
    [anon_sym_bytes32] = ACTIONS(361),
    [anon_sym_fixed] = ACTIONS(361),
    [aux_sym__fixed_token1] = ACTIONS(361),
    [anon_sym_ufixed] = ACTIONS(361),
    [aux_sym__ufixed_token1] = ACTIONS(361),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(90)] = {
    [sym_catch_clause] = STATE(92),
    [aux_sym_try_statement_repeat1] = STATE(92),
    [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_hex] = ACTIONS(370),
    [anon_sym_DQUOTE] = ACTIONS(372),
    [anon_sym_SQUOTE] = ACTIONS(372),
    [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(374),
    [anon_sym_emit] = ACTIONS(370),
    [anon_sym_payable] = ACTIONS(370),
    [anon_sym_new] = ACTIONS(370),
    [anon_sym_LBRACK] = ACTIONS(372),
    [anon_sym_delete] = ACTIONS(370),
    [anon_sym_BANG] = ACTIONS(372),
    [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_unicode] = ACTIONS(370),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(91)] = {
    [sym_catch_clause] = STATE(92),
    [aux_sym_try_statement_repeat1] = STATE(92),
    [sym_identifier] = ACTIONS(376),
    [anon_sym_DASH] = ACTIONS(376),
    [anon_sym_TILDE] = ACTIONS(378),
    [anon_sym_LBRACE] = ACTIONS(378),
    [anon_sym_RBRACE] = ACTIONS(378),
    [anon_sym_type] = ACTIONS(376),
    [anon_sym_LPAREN] = ACTIONS(378),
    [anon_sym_for] = ACTIONS(376),
    [anon_sym_assembly] = ACTIONS(376),
    [anon_sym_break] = ACTIONS(376),
    [anon_sym_continue] = ACTIONS(376),
    [anon_sym_true] = ACTIONS(376),
    [anon_sym_false] = ACTIONS(376),
    [anon_sym_hex] = ACTIONS(376),
    [anon_sym_DQUOTE] = ACTIONS(378),
    [anon_sym_SQUOTE] = ACTIONS(378),
    [anon_sym_if] = ACTIONS(376),
    [anon_sym_function] = ACTIONS(376),
    [anon_sym_byte] = ACTIONS(376),
    [anon_sym_address] = ACTIONS(376),
    [anon_sym_return] = ACTIONS(376),
    [anon_sym_revert] = ACTIONS(376),
    [sym_unchecked] = ACTIONS(376),
    [anon_sym_var] = ACTIONS(376),
    [anon_sym_else] = ACTIONS(376),
    [anon_sym_while] = ACTIONS(376),
    [anon_sym_do] = ACTIONS(376),
    [anon_sym_try] = ACTIONS(376),
    [anon_sym_catch] = ACTIONS(374),
    [anon_sym_emit] = ACTIONS(376),
    [anon_sym_payable] = ACTIONS(376),
    [anon_sym_new] = ACTIONS(376),
    [anon_sym_LBRACK] = ACTIONS(378),
    [anon_sym_delete] = ACTIONS(376),
    [anon_sym_BANG] = ACTIONS(378),
    [anon_sym_PLUS_PLUS] = ACTIONS(378),
    [anon_sym_DASH_DASH] = ACTIONS(378),
    [anon_sym_mapping] = ACTIONS(376),
    [anon_sym_bool] = ACTIONS(376),
    [anon_sym_string] = ACTIONS(376),
    [anon_sym_int] = ACTIONS(376),
    [anon_sym_int8] = ACTIONS(376),
    [anon_sym_int16] = ACTIONS(376),
    [anon_sym_int24] = ACTIONS(376),
    [anon_sym_int32] = ACTIONS(376),
    [anon_sym_int40] = ACTIONS(376),
    [anon_sym_int48] = ACTIONS(376),
    [anon_sym_int56] = ACTIONS(376),
    [anon_sym_int64] = ACTIONS(376),
    [anon_sym_int72] = ACTIONS(376),
    [anon_sym_int80] = ACTIONS(376),
    [anon_sym_int88] = ACTIONS(376),
    [anon_sym_int96] = ACTIONS(376),
    [anon_sym_int104] = ACTIONS(376),
    [anon_sym_int112] = ACTIONS(376),
    [anon_sym_int120] = ACTIONS(376),
    [anon_sym_int128] = ACTIONS(376),
    [anon_sym_int136] = ACTIONS(376),
    [anon_sym_int144] = ACTIONS(376),
    [anon_sym_int152] = ACTIONS(376),
    [anon_sym_int160] = ACTIONS(376),
    [anon_sym_int168] = ACTIONS(376),
    [anon_sym_int176] = ACTIONS(376),
    [anon_sym_int184] = ACTIONS(376),
    [anon_sym_int192] = ACTIONS(376),
    [anon_sym_int200] = ACTIONS(376),
    [anon_sym_int208] = ACTIONS(376),
    [anon_sym_int216] = ACTIONS(376),
    [anon_sym_int224] = ACTIONS(376),
    [anon_sym_int232] = ACTIONS(376),
    [anon_sym_int240] = ACTIONS(376),
    [anon_sym_int248] = ACTIONS(376),
    [anon_sym_int256] = ACTIONS(376),
    [anon_sym_uint] = ACTIONS(376),
    [anon_sym_uint8] = ACTIONS(376),
    [anon_sym_uint16] = ACTIONS(376),
    [anon_sym_uint24] = ACTIONS(376),
    [anon_sym_uint32] = ACTIONS(376),
    [anon_sym_uint40] = ACTIONS(376),
    [anon_sym_uint48] = ACTIONS(376),
    [anon_sym_uint56] = ACTIONS(376),
    [anon_sym_uint64] = ACTIONS(376),
    [anon_sym_uint72] = ACTIONS(376),
    [anon_sym_uint80] = ACTIONS(376),
    [anon_sym_uint88] = ACTIONS(376),
    [anon_sym_uint96] = ACTIONS(376),
    [anon_sym_uint104] = ACTIONS(376),
    [anon_sym_uint112] = ACTIONS(376),
    [anon_sym_uint120] = ACTIONS(376),
    [anon_sym_uint128] = ACTIONS(376),
    [anon_sym_uint136] = ACTIONS(376),
    [anon_sym_uint144] = ACTIONS(376),
    [anon_sym_uint152] = ACTIONS(376),
    [anon_sym_uint160] = ACTIONS(376),
    [anon_sym_uint168] = ACTIONS(376),
    [anon_sym_uint176] = ACTIONS(376),
    [anon_sym_uint184] = ACTIONS(376),
    [anon_sym_uint192] = ACTIONS(376),
    [anon_sym_uint200] = ACTIONS(376),
    [anon_sym_uint208] = ACTIONS(376),
    [anon_sym_uint216] = ACTIONS(376),
    [anon_sym_uint224] = ACTIONS(376),
    [anon_sym_uint232] = ACTIONS(376),
    [anon_sym_uint240] = ACTIONS(376),
    [anon_sym_uint248] = ACTIONS(376),
    [anon_sym_uint256] = ACTIONS(376),
    [anon_sym_bytes] = ACTIONS(376),
    [anon_sym_bytes1] = ACTIONS(376),
    [anon_sym_bytes2] = ACTIONS(376),
    [anon_sym_bytes3] = ACTIONS(376),
    [anon_sym_bytes4] = ACTIONS(376),
    [anon_sym_bytes5] = ACTIONS(376),
    [anon_sym_bytes6] = ACTIONS(376),
    [anon_sym_bytes7] = ACTIONS(376),
    [anon_sym_bytes8] = ACTIONS(376),
    [anon_sym_bytes9] = ACTIONS(376),
    [anon_sym_bytes10] = ACTIONS(376),
    [anon_sym_bytes11] = ACTIONS(376),
    [anon_sym_bytes12] = ACTIONS(376),
    [anon_sym_bytes13] = ACTIONS(376),
    [anon_sym_bytes14] = ACTIONS(376),
    [anon_sym_bytes15] = ACTIONS(376),
    [anon_sym_bytes16] = ACTIONS(376),
    [anon_sym_bytes17] = ACTIONS(376),
    [anon_sym_bytes18] = ACTIONS(376),
    [anon_sym_bytes19] = ACTIONS(376),
    [anon_sym_bytes20] = ACTIONS(376),
    [anon_sym_bytes21] = ACTIONS(376),
    [anon_sym_bytes22] = ACTIONS(376),
    [anon_sym_bytes23] = ACTIONS(376),
    [anon_sym_bytes24] = ACTIONS(376),
    [anon_sym_bytes25] = ACTIONS(376),
    [anon_sym_bytes26] = ACTIONS(376),
    [anon_sym_bytes27] = ACTIONS(376),
    [anon_sym_bytes28] = ACTIONS(376),
    [anon_sym_bytes29] = ACTIONS(376),
    [anon_sym_bytes30] = ACTIONS(376),
    [anon_sym_bytes31] = ACTIONS(376),
    [anon_sym_bytes32] = ACTIONS(376),
    [anon_sym_fixed] = ACTIONS(376),
    [aux_sym__fixed_token1] = ACTIONS(376),
    [anon_sym_ufixed] = ACTIONS(376),
    [aux_sym__ufixed_token1] = ACTIONS(376),
    [aux_sym__decimal_number_token1] = ACTIONS(376),
    [aux_sym__decimal_number_token2] = ACTIONS(378),
    [aux_sym__hex_number_token1] = ACTIONS(378),
    [anon_sym_unicode] = ACTIONS(376),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(92)] = {
    [sym_catch_clause] = STATE(92),
    [aux_sym_try_statement_repeat1] = STATE(92),
    [sym_identifier] = ACTIONS(380),
    [anon_sym_DASH] = ACTIONS(380),
    [anon_sym_TILDE] = ACTIONS(382),
    [anon_sym_LBRACE] = ACTIONS(382),
    [anon_sym_RBRACE] = ACTIONS(382),
    [anon_sym_type] = ACTIONS(380),
    [anon_sym_LPAREN] = ACTIONS(382),
    [anon_sym_for] = ACTIONS(380),
    [anon_sym_assembly] = ACTIONS(380),
    [anon_sym_break] = ACTIONS(380),
    [anon_sym_continue] = ACTIONS(380),
    [anon_sym_true] = ACTIONS(380),
    [anon_sym_false] = ACTIONS(380),
    [anon_sym_hex] = ACTIONS(380),
    [anon_sym_DQUOTE] = ACTIONS(382),
    [anon_sym_SQUOTE] = ACTIONS(382),
    [anon_sym_if] = ACTIONS(380),
    [anon_sym_function] = ACTIONS(380),
    [anon_sym_byte] = ACTIONS(380),
    [anon_sym_address] = ACTIONS(380),
    [anon_sym_return] = ACTIONS(380),
    [anon_sym_revert] = ACTIONS(380),
    [sym_unchecked] = ACTIONS(380),
    [anon_sym_var] = ACTIONS(380),
    [anon_sym_else] = ACTIONS(380),
    [anon_sym_while] = ACTIONS(380),
    [anon_sym_do] = ACTIONS(380),
    [anon_sym_try] = ACTIONS(380),
    [anon_sym_catch] = ACTIONS(384),
    [anon_sym_emit] = ACTIONS(380),
    [anon_sym_payable] = ACTIONS(380),
    [anon_sym_new] = ACTIONS(380),
    [anon_sym_LBRACK] = ACTIONS(382),
    [anon_sym_delete] = ACTIONS(380),
    [anon_sym_BANG] = ACTIONS(382),
    [anon_sym_PLUS_PLUS] = ACTIONS(382),
    [anon_sym_DASH_DASH] = ACTIONS(382),
    [anon_sym_mapping] = ACTIONS(380),
    [anon_sym_bool] = ACTIONS(380),
    [anon_sym_string] = ACTIONS(380),
    [anon_sym_int] = ACTIONS(380),
    [anon_sym_int8] = ACTIONS(380),
    [anon_sym_int16] = ACTIONS(380),
    [anon_sym_int24] = ACTIONS(380),
    [anon_sym_int32] = ACTIONS(380),
    [anon_sym_int40] = ACTIONS(380),
    [anon_sym_int48] = ACTIONS(380),
    [anon_sym_int56] = ACTIONS(380),
    [anon_sym_int64] = ACTIONS(380),
    [anon_sym_int72] = ACTIONS(380),
    [anon_sym_int80] = ACTIONS(380),
    [anon_sym_int88] = ACTIONS(380),
    [anon_sym_int96] = ACTIONS(380),
    [anon_sym_int104] = ACTIONS(380),
    [anon_sym_int112] = ACTIONS(380),
    [anon_sym_int120] = ACTIONS(380),
    [anon_sym_int128] = ACTIONS(380),
    [anon_sym_int136] = ACTIONS(380),
    [anon_sym_int144] = ACTIONS(380),
    [anon_sym_int152] = ACTIONS(380),
    [anon_sym_int160] = ACTIONS(380),
    [anon_sym_int168] = ACTIONS(380),
    [anon_sym_int176] = ACTIONS(380),
    [anon_sym_int184] = ACTIONS(380),
    [anon_sym_int192] = ACTIONS(380),
    [anon_sym_int200] = ACTIONS(380),
    [anon_sym_int208] = ACTIONS(380),
    [anon_sym_int216] = ACTIONS(380),
    [anon_sym_int224] = ACTIONS(380),
    [anon_sym_int232] = ACTIONS(380),
    [anon_sym_int240] = ACTIONS(380),
    [anon_sym_int248] = ACTIONS(380),
    [anon_sym_int256] = ACTIONS(380),
    [anon_sym_uint] = ACTIONS(380),
    [anon_sym_uint8] = ACTIONS(380),
    [anon_sym_uint16] = ACTIONS(380),
    [anon_sym_uint24] = ACTIONS(380),
    [anon_sym_uint32] = ACTIONS(380),
    [anon_sym_uint40] = ACTIONS(380),
    [anon_sym_uint48] = ACTIONS(380),
    [anon_sym_uint56] = ACTIONS(380),
    [anon_sym_uint64] = ACTIONS(380),
    [anon_sym_uint72] = ACTIONS(380),
    [anon_sym_uint80] = ACTIONS(380),
    [anon_sym_uint88] = ACTIONS(380),
    [anon_sym_uint96] = ACTIONS(380),
    [anon_sym_uint104] = ACTIONS(380),
    [anon_sym_uint112] = ACTIONS(380),
    [anon_sym_uint120] = ACTIONS(380),
    [anon_sym_uint128] = ACTIONS(380),
    [anon_sym_uint136] = ACTIONS(380),
    [anon_sym_uint144] = ACTIONS(380),
    [anon_sym_uint152] = ACTIONS(380),
    [anon_sym_uint160] = ACTIONS(380),
    [anon_sym_uint168] = ACTIONS(380),
    [anon_sym_uint176] = ACTIONS(380),
    [anon_sym_uint184] = ACTIONS(380),
    [anon_sym_uint192] = ACTIONS(380),
    [anon_sym_uint200] = ACTIONS(380),
    [anon_sym_uint208] = ACTIONS(380),
    [anon_sym_uint216] = ACTIONS(380),
    [anon_sym_uint224] = ACTIONS(380),
    [anon_sym_uint232] = ACTIONS(380),
    [anon_sym_uint240] = ACTIONS(380),
    [anon_sym_uint248] = ACTIONS(380),
    [anon_sym_uint256] = ACTIONS(380),
    [anon_sym_bytes] = ACTIONS(380),
    [anon_sym_bytes1] = ACTIONS(380),
    [anon_sym_bytes2] = ACTIONS(380),
    [anon_sym_bytes3] = ACTIONS(380),
    [anon_sym_bytes4] = ACTIONS(380),
    [anon_sym_bytes5] = ACTIONS(380),
    [anon_sym_bytes6] = ACTIONS(380),
    [anon_sym_bytes7] = ACTIONS(380),
    [anon_sym_bytes8] = ACTIONS(380),
    [anon_sym_bytes9] = ACTIONS(380),
    [anon_sym_bytes10] = ACTIONS(380),
    [anon_sym_bytes11] = ACTIONS(380),
    [anon_sym_bytes12] = ACTIONS(380),
    [anon_sym_bytes13] = ACTIONS(380),
    [anon_sym_bytes14] = ACTIONS(380),
    [anon_sym_bytes15] = ACTIONS(380),
    [anon_sym_bytes16] = ACTIONS(380),
    [anon_sym_bytes17] = ACTIONS(380),
    [anon_sym_bytes18] = ACTIONS(380),
    [anon_sym_bytes19] = ACTIONS(380),
    [anon_sym_bytes20] = ACTIONS(380),
    [anon_sym_bytes21] = ACTIONS(380),
    [anon_sym_bytes22] = ACTIONS(380),
    [anon_sym_bytes23] = ACTIONS(380),
    [anon_sym_bytes24] = ACTIONS(380),
    [anon_sym_bytes25] = ACTIONS(380),
    [anon_sym_bytes26] = ACTIONS(380),
    [anon_sym_bytes27] = ACTIONS(380),
    [anon_sym_bytes28] = ACTIONS(380),
    [anon_sym_bytes29] = ACTIONS(380),
    [anon_sym_bytes30] = ACTIONS(380),
    [anon_sym_bytes31] = ACTIONS(380),
    [anon_sym_bytes32] = ACTIONS(380),
    [anon_sym_fixed] = ACTIONS(380),
    [aux_sym__fixed_token1] = ACTIONS(380),
    [anon_sym_ufixed] = ACTIONS(380),
    [aux_sym__ufixed_token1] = ACTIONS(380),
    [aux_sym__decimal_number_token1] = ACTIONS(380),
    [aux_sym__decimal_number_token2] = ACTIONS(382),
    [aux_sym__hex_number_token1] = ACTIONS(382),
    [anon_sym_unicode] = ACTIONS(380),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(93)] = {
    [sym_identifier] = ACTIONS(387),
    [anon_sym_DASH] = ACTIONS(387),
    [anon_sym_TILDE] = ACTIONS(389),
    [anon_sym_LBRACE] = ACTIONS(389),
    [anon_sym_RBRACE] = ACTIONS(389),
    [anon_sym_type] = ACTIONS(387),
    [anon_sym_LPAREN] = ACTIONS(389),
    [anon_sym_RPAREN] = ACTIONS(389),
    [anon_sym_for] = ACTIONS(387),
    [anon_sym_assembly] = ACTIONS(387),
    [anon_sym_break] = ACTIONS(387),
    [anon_sym_continue] = ACTIONS(387),
    [anon_sym_true] = ACTIONS(387),
    [anon_sym_false] = ACTIONS(387),
    [anon_sym_hex] = ACTIONS(387),
    [anon_sym_DQUOTE] = ACTIONS(389),
    [anon_sym_SQUOTE] = ACTIONS(389),
    [anon_sym_if] = ACTIONS(387),
    [anon_sym_function] = ACTIONS(387),
    [anon_sym_byte] = ACTIONS(387),
    [anon_sym_address] = ACTIONS(387),
    [anon_sym_return] = ACTIONS(387),
    [anon_sym_revert] = ACTIONS(387),
    [sym_unchecked] = ACTIONS(387),
    [anon_sym_var] = ACTIONS(387),
    [anon_sym_else] = ACTIONS(387),
    [anon_sym_while] = ACTIONS(387),
    [anon_sym_do] = ACTIONS(387),
    [anon_sym_try] = ACTIONS(387),
    [anon_sym_emit] = ACTIONS(387),
    [anon_sym_payable] = ACTIONS(387),
    [anon_sym_new] = ACTIONS(387),
    [anon_sym_LBRACK] = ACTIONS(389),
    [anon_sym_delete] = ACTIONS(387),
    [anon_sym_BANG] = ACTIONS(389),
    [anon_sym_PLUS_PLUS] = ACTIONS(389),
    [anon_sym_DASH_DASH] = ACTIONS(389),
    [anon_sym_mapping] = ACTIONS(387),
    [anon_sym_bool] = ACTIONS(387),
    [anon_sym_string] = ACTIONS(387),
    [anon_sym_int] = ACTIONS(387),
    [anon_sym_int8] = ACTIONS(387),
    [anon_sym_int16] = ACTIONS(387),
    [anon_sym_int24] = ACTIONS(387),
    [anon_sym_int32] = ACTIONS(387),
    [anon_sym_int40] = ACTIONS(387),
    [anon_sym_int48] = ACTIONS(387),
    [anon_sym_int56] = ACTIONS(387),
    [anon_sym_int64] = ACTIONS(387),
    [anon_sym_int72] = ACTIONS(387),
    [anon_sym_int80] = ACTIONS(387),
    [anon_sym_int88] = ACTIONS(387),
    [anon_sym_int96] = ACTIONS(387),
    [anon_sym_int104] = ACTIONS(387),
    [anon_sym_int112] = ACTIONS(387),
    [anon_sym_int120] = ACTIONS(387),
    [anon_sym_int128] = ACTIONS(387),
    [anon_sym_int136] = ACTIONS(387),
    [anon_sym_int144] = ACTIONS(387),
    [anon_sym_int152] = ACTIONS(387),
    [anon_sym_int160] = ACTIONS(387),
    [anon_sym_int168] = ACTIONS(387),
    [anon_sym_int176] = ACTIONS(387),
    [anon_sym_int184] = ACTIONS(387),
    [anon_sym_int192] = ACTIONS(387),
    [anon_sym_int200] = ACTIONS(387),
    [anon_sym_int208] = ACTIONS(387),
    [anon_sym_int216] = ACTIONS(387),
    [anon_sym_int224] = ACTIONS(387),
    [anon_sym_int232] = ACTIONS(387),
    [anon_sym_int240] = ACTIONS(387),
    [anon_sym_int248] = ACTIONS(387),
    [anon_sym_int256] = ACTIONS(387),
    [anon_sym_uint] = ACTIONS(387),
    [anon_sym_uint8] = ACTIONS(387),
    [anon_sym_uint16] = ACTIONS(387),
    [anon_sym_uint24] = ACTIONS(387),
    [anon_sym_uint32] = ACTIONS(387),
    [anon_sym_uint40] = ACTIONS(387),
    [anon_sym_uint48] = ACTIONS(387),
    [anon_sym_uint56] = ACTIONS(387),
    [anon_sym_uint64] = ACTIONS(387),
    [anon_sym_uint72] = ACTIONS(387),
    [anon_sym_uint80] = ACTIONS(387),
    [anon_sym_uint88] = ACTIONS(387),
    [anon_sym_uint96] = ACTIONS(387),
    [anon_sym_uint104] = ACTIONS(387),
    [anon_sym_uint112] = ACTIONS(387),
    [anon_sym_uint120] = ACTIONS(387),
    [anon_sym_uint128] = ACTIONS(387),
    [anon_sym_uint136] = ACTIONS(387),
    [anon_sym_uint144] = ACTIONS(387),
    [anon_sym_uint152] = ACTIONS(387),
    [anon_sym_uint160] = ACTIONS(387),
    [anon_sym_uint168] = ACTIONS(387),
    [anon_sym_uint176] = ACTIONS(387),
    [anon_sym_uint184] = ACTIONS(387),
    [anon_sym_uint192] = ACTIONS(387),
    [anon_sym_uint200] = ACTIONS(387),
    [anon_sym_uint208] = ACTIONS(387),
    [anon_sym_uint216] = ACTIONS(387),
    [anon_sym_uint224] = ACTIONS(387),
    [anon_sym_uint232] = ACTIONS(387),
    [anon_sym_uint240] = ACTIONS(387),
    [anon_sym_uint248] = ACTIONS(387),
    [anon_sym_uint256] = ACTIONS(387),
    [anon_sym_bytes] = ACTIONS(387),
    [anon_sym_bytes1] = ACTIONS(387),
    [anon_sym_bytes2] = ACTIONS(387),
    [anon_sym_bytes3] = ACTIONS(387),
    [anon_sym_bytes4] = ACTIONS(387),
    [anon_sym_bytes5] = ACTIONS(387),
    [anon_sym_bytes6] = ACTIONS(387),
    [anon_sym_bytes7] = ACTIONS(387),
    [anon_sym_bytes8] = ACTIONS(387),
    [anon_sym_bytes9] = ACTIONS(387),
    [anon_sym_bytes10] = ACTIONS(387),
    [anon_sym_bytes11] = ACTIONS(387),
    [anon_sym_bytes12] = ACTIONS(387),
    [anon_sym_bytes13] = ACTIONS(387),
    [anon_sym_bytes14] = ACTIONS(387),
    [anon_sym_bytes15] = ACTIONS(387),
    [anon_sym_bytes16] = ACTIONS(387),
    [anon_sym_bytes17] = ACTIONS(387),
    [anon_sym_bytes18] = ACTIONS(387),
    [anon_sym_bytes19] = ACTIONS(387),
    [anon_sym_bytes20] = ACTIONS(387),
    [anon_sym_bytes21] = ACTIONS(387),
    [anon_sym_bytes22] = ACTIONS(387),
    [anon_sym_bytes23] = ACTIONS(387),
    [anon_sym_bytes24] = ACTIONS(387),
    [anon_sym_bytes25] = ACTIONS(387),
    [anon_sym_bytes26] = ACTIONS(387),
    [anon_sym_bytes27] = ACTIONS(387),
    [anon_sym_bytes28] = ACTIONS(387),
    [anon_sym_bytes29] = ACTIONS(387),
    [anon_sym_bytes30] = ACTIONS(387),
    [anon_sym_bytes31] = ACTIONS(387),
    [anon_sym_bytes32] = ACTIONS(387),
    [anon_sym_fixed] = ACTIONS(387),
    [aux_sym__fixed_token1] = ACTIONS(387),
    [anon_sym_ufixed] = ACTIONS(387),
    [aux_sym__ufixed_token1] = ACTIONS(387),
    [anon_sym_SEMI] = ACTIONS(389),
    [aux_sym__decimal_number_token1] = ACTIONS(387),
    [aux_sym__decimal_number_token2] = ACTIONS(389),
    [aux_sym__hex_number_token1] = ACTIONS(389),
    [anon_sym_unicode] = ACTIONS(387),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(94)] = {
    [sym_identifier] = ACTIONS(391),
    [anon_sym_DASH] = ACTIONS(391),
    [anon_sym_TILDE] = ACTIONS(393),
    [anon_sym_LBRACE] = ACTIONS(393),
    [anon_sym_RBRACE] = ACTIONS(393),
    [anon_sym_type] = ACTIONS(391),
    [anon_sym_LPAREN] = ACTIONS(393),
    [anon_sym_for] = ACTIONS(391),
    [anon_sym_assembly] = ACTIONS(391),
    [anon_sym_break] = ACTIONS(391),
    [anon_sym_continue] = ACTIONS(391),
    [anon_sym_true] = ACTIONS(391),
    [anon_sym_false] = ACTIONS(391),
    [anon_sym_hex] = ACTIONS(391),
    [anon_sym_DQUOTE] = ACTIONS(393),
    [anon_sym_SQUOTE] = ACTIONS(393),
    [anon_sym_if] = ACTIONS(391),
    [anon_sym_function] = ACTIONS(391),
    [anon_sym_byte] = ACTIONS(391),
    [anon_sym_address] = ACTIONS(391),
    [anon_sym_return] = ACTIONS(391),
    [anon_sym_revert] = ACTIONS(391),
    [sym_unchecked] = ACTIONS(391),
    [anon_sym_var] = ACTIONS(391),
    [anon_sym_else] = ACTIONS(391),
    [anon_sym_while] = ACTIONS(391),
    [anon_sym_do] = ACTIONS(391),
    [anon_sym_try] = ACTIONS(391),
    [anon_sym_emit] = ACTIONS(391),
    [anon_sym_payable] = ACTIONS(391),
    [anon_sym_new] = ACTIONS(391),
    [anon_sym_LBRACK] = ACTIONS(393),
    [anon_sym_delete] = ACTIONS(391),
    [anon_sym_BANG] = ACTIONS(393),
    [anon_sym_PLUS_PLUS] = ACTIONS(393),
    [anon_sym_DASH_DASH] = ACTIONS(393),
    [anon_sym_mapping] = ACTIONS(391),
    [anon_sym_bool] = ACTIONS(391),
    [anon_sym_string] = ACTIONS(391),
    [anon_sym_int] = ACTIONS(391),
    [anon_sym_int8] = ACTIONS(391),
    [anon_sym_int16] = ACTIONS(391),
    [anon_sym_int24] = ACTIONS(391),
    [anon_sym_int32] = ACTIONS(391),
    [anon_sym_int40] = ACTIONS(391),
    [anon_sym_int48] = ACTIONS(391),
    [anon_sym_int56] = ACTIONS(391),
    [anon_sym_int64] = ACTIONS(391),
    [anon_sym_int72] = ACTIONS(391),
    [anon_sym_int80] = ACTIONS(391),
    [anon_sym_int88] = ACTIONS(391),
    [anon_sym_int96] = ACTIONS(391),
    [anon_sym_int104] = ACTIONS(391),
    [anon_sym_int112] = ACTIONS(391),
    [anon_sym_int120] = ACTIONS(391),
    [anon_sym_int128] = ACTIONS(391),
    [anon_sym_int136] = ACTIONS(391),
    [anon_sym_int144] = ACTIONS(391),
    [anon_sym_int152] = ACTIONS(391),
    [anon_sym_int160] = ACTIONS(391),
    [anon_sym_int168] = ACTIONS(391),
    [anon_sym_int176] = ACTIONS(391),
    [anon_sym_int184] = ACTIONS(391),
    [anon_sym_int192] = ACTIONS(391),
    [anon_sym_int200] = ACTIONS(391),
    [anon_sym_int208] = ACTIONS(391),
    [anon_sym_int216] = ACTIONS(391),
    [anon_sym_int224] = ACTIONS(391),
    [anon_sym_int232] = ACTIONS(391),
    [anon_sym_int240] = ACTIONS(391),
    [anon_sym_int248] = ACTIONS(391),
    [anon_sym_int256] = ACTIONS(391),
    [anon_sym_uint] = ACTIONS(391),
    [anon_sym_uint8] = ACTIONS(391),
    [anon_sym_uint16] = ACTIONS(391),
    [anon_sym_uint24] = ACTIONS(391),
    [anon_sym_uint32] = ACTIONS(391),
    [anon_sym_uint40] = ACTIONS(391),
    [anon_sym_uint48] = ACTIONS(391),
    [anon_sym_uint56] = ACTIONS(391),
    [anon_sym_uint64] = ACTIONS(391),
    [anon_sym_uint72] = ACTIONS(391),
    [anon_sym_uint80] = ACTIONS(391),
    [anon_sym_uint88] = ACTIONS(391),
    [anon_sym_uint96] = ACTIONS(391),
    [anon_sym_uint104] = ACTIONS(391),
    [anon_sym_uint112] = ACTIONS(391),
    [anon_sym_uint120] = ACTIONS(391),
    [anon_sym_uint128] = ACTIONS(391),
    [anon_sym_uint136] = ACTIONS(391),
    [anon_sym_uint144] = ACTIONS(391),
    [anon_sym_uint152] = ACTIONS(391),
    [anon_sym_uint160] = ACTIONS(391),
    [anon_sym_uint168] = ACTIONS(391),
    [anon_sym_uint176] = ACTIONS(391),
    [anon_sym_uint184] = ACTIONS(391),
    [anon_sym_uint192] = ACTIONS(391),
    [anon_sym_uint200] = ACTIONS(391),
    [anon_sym_uint208] = ACTIONS(391),
    [anon_sym_uint216] = ACTIONS(391),
    [anon_sym_uint224] = ACTIONS(391),
    [anon_sym_uint232] = ACTIONS(391),
    [anon_sym_uint240] = ACTIONS(391),
    [anon_sym_uint248] = ACTIONS(391),
    [anon_sym_uint256] = ACTIONS(391),
    [anon_sym_bytes] = ACTIONS(391),
    [anon_sym_bytes1] = ACTIONS(391),
    [anon_sym_bytes2] = ACTIONS(391),
    [anon_sym_bytes3] = ACTIONS(391),
    [anon_sym_bytes4] = ACTIONS(391),
    [anon_sym_bytes5] = ACTIONS(391),
    [anon_sym_bytes6] = ACTIONS(391),
    [anon_sym_bytes7] = ACTIONS(391),
    [anon_sym_bytes8] = ACTIONS(391),
    [anon_sym_bytes9] = ACTIONS(391),
    [anon_sym_bytes10] = ACTIONS(391),
    [anon_sym_bytes11] = ACTIONS(391),
    [anon_sym_bytes12] = ACTIONS(391),
    [anon_sym_bytes13] = ACTIONS(391),
    [anon_sym_bytes14] = ACTIONS(391),
    [anon_sym_bytes15] = ACTIONS(391),
    [anon_sym_bytes16] = ACTIONS(391),
    [anon_sym_bytes17] = ACTIONS(391),
    [anon_sym_bytes18] = ACTIONS(391),
    [anon_sym_bytes19] = ACTIONS(391),
    [anon_sym_bytes20] = ACTIONS(391),
    [anon_sym_bytes21] = ACTIONS(391),
    [anon_sym_bytes22] = ACTIONS(391),
    [anon_sym_bytes23] = ACTIONS(391),
    [anon_sym_bytes24] = ACTIONS(391),
    [anon_sym_bytes25] = ACTIONS(391),
    [anon_sym_bytes26] = ACTIONS(391),
    [anon_sym_bytes27] = ACTIONS(391),
    [anon_sym_bytes28] = ACTIONS(391),
    [anon_sym_bytes29] = ACTIONS(391),
    [anon_sym_bytes30] = ACTIONS(391),
    [anon_sym_bytes31] = ACTIONS(391),
    [anon_sym_bytes32] = ACTIONS(391),
    [anon_sym_fixed] = ACTIONS(391),
    [aux_sym__fixed_token1] = ACTIONS(391),
    [anon_sym_ufixed] = ACTIONS(391),
    [aux_sym__ufixed_token1] = ACTIONS(391),
    [anon_sym_SEMI] = ACTIONS(393),
    [aux_sym__decimal_number_token1] = ACTIONS(391),
    [aux_sym__decimal_number_token2] = ACTIONS(393),
    [aux_sym__hex_number_token1] = ACTIONS(393),
    [anon_sym_unicode] = ACTIONS(391),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(95)] = {
    [sym_identifier] = ACTIONS(395),
    [anon_sym_DASH] = ACTIONS(395),
    [anon_sym_TILDE] = ACTIONS(397),
    [anon_sym_LBRACE] = ACTIONS(397),
    [anon_sym_RBRACE] = ACTIONS(397),
    [anon_sym_type] = ACTIONS(395),
    [anon_sym_LPAREN] = ACTIONS(397),
    [anon_sym_for] = ACTIONS(395),
    [anon_sym_assembly] = ACTIONS(395),
    [anon_sym_break] = ACTIONS(395),
    [anon_sym_continue] = ACTIONS(395),
    [anon_sym_true] = ACTIONS(395),
    [anon_sym_false] = ACTIONS(395),
    [anon_sym_hex] = ACTIONS(395),
    [anon_sym_DQUOTE] = ACTIONS(397),
    [anon_sym_SQUOTE] = ACTIONS(397),
    [anon_sym_if] = ACTIONS(395),
    [anon_sym_function] = ACTIONS(395),
    [anon_sym_byte] = ACTIONS(395),
    [anon_sym_address] = ACTIONS(395),
    [anon_sym_return] = ACTIONS(395),
    [anon_sym_revert] = ACTIONS(395),
    [sym_unchecked] = ACTIONS(395),
    [anon_sym_var] = ACTIONS(395),
    [anon_sym_else] = ACTIONS(395),
    [anon_sym_while] = ACTIONS(395),
    [anon_sym_do] = ACTIONS(395),
    [anon_sym_try] = ACTIONS(395),
    [anon_sym_emit] = ACTIONS(395),
    [anon_sym_payable] = ACTIONS(395),
    [anon_sym_new] = ACTIONS(395),
    [anon_sym_LBRACK] = ACTIONS(397),
    [anon_sym_delete] = ACTIONS(395),
    [anon_sym_BANG] = ACTIONS(397),
    [anon_sym_PLUS_PLUS] = ACTIONS(397),
    [anon_sym_DASH_DASH] = ACTIONS(397),
    [anon_sym_mapping] = ACTIONS(395),
    [anon_sym_bool] = ACTIONS(395),
    [anon_sym_string] = ACTIONS(395),
    [anon_sym_int] = ACTIONS(395),
    [anon_sym_int8] = ACTIONS(395),
    [anon_sym_int16] = ACTIONS(395),
    [anon_sym_int24] = ACTIONS(395),
    [anon_sym_int32] = ACTIONS(395),
    [anon_sym_int40] = ACTIONS(395),
    [anon_sym_int48] = ACTIONS(395),
    [anon_sym_int56] = ACTIONS(395),
    [anon_sym_int64] = ACTIONS(395),
    [anon_sym_int72] = ACTIONS(395),
    [anon_sym_int80] = ACTIONS(395),
    [anon_sym_int88] = ACTIONS(395),
    [anon_sym_int96] = ACTIONS(395),
    [anon_sym_int104] = ACTIONS(395),
    [anon_sym_int112] = ACTIONS(395),
    [anon_sym_int120] = ACTIONS(395),
    [anon_sym_int128] = ACTIONS(395),
    [anon_sym_int136] = ACTIONS(395),
    [anon_sym_int144] = ACTIONS(395),
    [anon_sym_int152] = ACTIONS(395),
    [anon_sym_int160] = ACTIONS(395),
    [anon_sym_int168] = ACTIONS(395),
    [anon_sym_int176] = ACTIONS(395),
    [anon_sym_int184] = ACTIONS(395),
    [anon_sym_int192] = ACTIONS(395),
    [anon_sym_int200] = ACTIONS(395),
    [anon_sym_int208] = ACTIONS(395),
    [anon_sym_int216] = ACTIONS(395),
    [anon_sym_int224] = ACTIONS(395),
    [anon_sym_int232] = ACTIONS(395),
    [anon_sym_int240] = ACTIONS(395),
    [anon_sym_int248] = ACTIONS(395),
    [anon_sym_int256] = ACTIONS(395),
    [anon_sym_uint] = ACTIONS(395),
    [anon_sym_uint8] = ACTIONS(395),
    [anon_sym_uint16] = ACTIONS(395),
    [anon_sym_uint24] = ACTIONS(395),
    [anon_sym_uint32] = ACTIONS(395),
    [anon_sym_uint40] = ACTIONS(395),
    [anon_sym_uint48] = ACTIONS(395),
    [anon_sym_uint56] = ACTIONS(395),
    [anon_sym_uint64] = ACTIONS(395),
    [anon_sym_uint72] = ACTIONS(395),
    [anon_sym_uint80] = ACTIONS(395),
    [anon_sym_uint88] = ACTIONS(395),
    [anon_sym_uint96] = ACTIONS(395),
    [anon_sym_uint104] = ACTIONS(395),
    [anon_sym_uint112] = ACTIONS(395),
    [anon_sym_uint120] = ACTIONS(395),
    [anon_sym_uint128] = ACTIONS(395),
    [anon_sym_uint136] = ACTIONS(395),
    [anon_sym_uint144] = ACTIONS(395),
    [anon_sym_uint152] = ACTIONS(395),
    [anon_sym_uint160] = ACTIONS(395),
    [anon_sym_uint168] = ACTIONS(395),
    [anon_sym_uint176] = ACTIONS(395),
    [anon_sym_uint184] = ACTIONS(395),
    [anon_sym_uint192] = ACTIONS(395),
    [anon_sym_uint200] = ACTIONS(395),
    [anon_sym_uint208] = ACTIONS(395),
    [anon_sym_uint216] = ACTIONS(395),
    [anon_sym_uint224] = ACTIONS(395),
    [anon_sym_uint232] = ACTIONS(395),
    [anon_sym_uint240] = ACTIONS(395),
    [anon_sym_uint248] = ACTIONS(395),
    [anon_sym_uint256] = ACTIONS(395),
    [anon_sym_bytes] = ACTIONS(395),
    [anon_sym_bytes1] = ACTIONS(395),
    [anon_sym_bytes2] = ACTIONS(395),
    [anon_sym_bytes3] = ACTIONS(395),
    [anon_sym_bytes4] = ACTIONS(395),
    [anon_sym_bytes5] = ACTIONS(395),
    [anon_sym_bytes6] = ACTIONS(395),
    [anon_sym_bytes7] = ACTIONS(395),
    [anon_sym_bytes8] = ACTIONS(395),
    [anon_sym_bytes9] = ACTIONS(395),
    [anon_sym_bytes10] = ACTIONS(395),
    [anon_sym_bytes11] = ACTIONS(395),
    [anon_sym_bytes12] = ACTIONS(395),
    [anon_sym_bytes13] = ACTIONS(395),
    [anon_sym_bytes14] = ACTIONS(395),
    [anon_sym_bytes15] = ACTIONS(395),
    [anon_sym_bytes16] = ACTIONS(395),
    [anon_sym_bytes17] = ACTIONS(395),
    [anon_sym_bytes18] = ACTIONS(395),
    [anon_sym_bytes19] = ACTIONS(395),
    [anon_sym_bytes20] = ACTIONS(395),
    [anon_sym_bytes21] = ACTIONS(395),
    [anon_sym_bytes22] = ACTIONS(395),
    [anon_sym_bytes23] = ACTIONS(395),
    [anon_sym_bytes24] = ACTIONS(395),
    [anon_sym_bytes25] = ACTIONS(395),
    [anon_sym_bytes26] = ACTIONS(395),
    [anon_sym_bytes27] = ACTIONS(395),
    [anon_sym_bytes28] = ACTIONS(395),
    [anon_sym_bytes29] = ACTIONS(395),
    [anon_sym_bytes30] = ACTIONS(395),
    [anon_sym_bytes31] = ACTIONS(395),
    [anon_sym_bytes32] = ACTIONS(395),
    [anon_sym_fixed] = ACTIONS(395),
    [aux_sym__fixed_token1] = ACTIONS(395),
    [anon_sym_ufixed] = ACTIONS(395),
    [aux_sym__ufixed_token1] = ACTIONS(395),
    [anon_sym_SEMI] = ACTIONS(397),
    [aux_sym__decimal_number_token1] = ACTIONS(395),
    [aux_sym__decimal_number_token2] = ACTIONS(397),
    [aux_sym__hex_number_token1] = ACTIONS(397),
    [anon_sym_unicode] = ACTIONS(395),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(96)] = {
    [sym_identifier] = ACTIONS(399),
    [anon_sym_DASH] = ACTIONS(399),
    [anon_sym_TILDE] = ACTIONS(401),
    [anon_sym_LBRACE] = ACTIONS(401),
    [anon_sym_RBRACE] = ACTIONS(401),
    [anon_sym_type] = ACTIONS(399),
    [anon_sym_LPAREN] = ACTIONS(401),
    [anon_sym_for] = ACTIONS(399),
    [anon_sym_assembly] = ACTIONS(399),
    [anon_sym_break] = ACTIONS(399),
    [anon_sym_continue] = ACTIONS(399),
    [anon_sym_true] = ACTIONS(399),
    [anon_sym_false] = ACTIONS(399),
    [anon_sym_hex] = ACTIONS(399),
    [anon_sym_DQUOTE] = ACTIONS(401),
    [anon_sym_SQUOTE] = ACTIONS(401),
    [anon_sym_if] = ACTIONS(399),
    [anon_sym_function] = ACTIONS(399),
    [anon_sym_byte] = ACTIONS(399),
    [anon_sym_address] = ACTIONS(399),
    [anon_sym_return] = ACTIONS(399),
    [anon_sym_revert] = ACTIONS(399),
    [sym_unchecked] = ACTIONS(399),
    [anon_sym_var] = ACTIONS(399),
    [anon_sym_else] = ACTIONS(399),
    [anon_sym_while] = ACTIONS(399),
    [anon_sym_do] = ACTIONS(399),
    [anon_sym_try] = ACTIONS(399),
    [anon_sym_catch] = ACTIONS(399),
    [anon_sym_emit] = ACTIONS(399),
    [anon_sym_payable] = ACTIONS(399),
    [anon_sym_new] = ACTIONS(399),
    [anon_sym_LBRACK] = ACTIONS(401),
    [anon_sym_delete] = ACTIONS(399),
    [anon_sym_BANG] = ACTIONS(401),
    [anon_sym_PLUS_PLUS] = ACTIONS(401),
    [anon_sym_DASH_DASH] = ACTIONS(401),
    [anon_sym_mapping] = ACTIONS(399),
    [anon_sym_bool] = ACTIONS(399),
    [anon_sym_string] = ACTIONS(399),
    [anon_sym_int] = ACTIONS(399),
    [anon_sym_int8] = ACTIONS(399),
    [anon_sym_int16] = ACTIONS(399),
    [anon_sym_int24] = ACTIONS(399),
    [anon_sym_int32] = ACTIONS(399),
    [anon_sym_int40] = ACTIONS(399),
    [anon_sym_int48] = ACTIONS(399),
    [anon_sym_int56] = ACTIONS(399),
    [anon_sym_int64] = ACTIONS(399),
    [anon_sym_int72] = ACTIONS(399),
    [anon_sym_int80] = ACTIONS(399),
    [anon_sym_int88] = ACTIONS(399),
    [anon_sym_int96] = ACTIONS(399),
    [anon_sym_int104] = ACTIONS(399),
    [anon_sym_int112] = ACTIONS(399),
    [anon_sym_int120] = ACTIONS(399),
    [anon_sym_int128] = ACTIONS(399),
    [anon_sym_int136] = ACTIONS(399),
    [anon_sym_int144] = ACTIONS(399),
    [anon_sym_int152] = ACTIONS(399),
    [anon_sym_int160] = ACTIONS(399),
    [anon_sym_int168] = ACTIONS(399),
    [anon_sym_int176] = ACTIONS(399),
    [anon_sym_int184] = ACTIONS(399),
    [anon_sym_int192] = ACTIONS(399),
    [anon_sym_int200] = ACTIONS(399),
    [anon_sym_int208] = ACTIONS(399),
    [anon_sym_int216] = ACTIONS(399),
    [anon_sym_int224] = ACTIONS(399),
    [anon_sym_int232] = ACTIONS(399),
    [anon_sym_int240] = ACTIONS(399),
    [anon_sym_int248] = ACTIONS(399),
    [anon_sym_int256] = ACTIONS(399),
    [anon_sym_uint] = ACTIONS(399),
    [anon_sym_uint8] = ACTIONS(399),
    [anon_sym_uint16] = ACTIONS(399),
    [anon_sym_uint24] = ACTIONS(399),
    [anon_sym_uint32] = ACTIONS(399),
    [anon_sym_uint40] = ACTIONS(399),
    [anon_sym_uint48] = ACTIONS(399),
    [anon_sym_uint56] = ACTIONS(399),
    [anon_sym_uint64] = ACTIONS(399),
    [anon_sym_uint72] = ACTIONS(399),
    [anon_sym_uint80] = ACTIONS(399),
    [anon_sym_uint88] = ACTIONS(399),
    [anon_sym_uint96] = ACTIONS(399),
    [anon_sym_uint104] = ACTIONS(399),
    [anon_sym_uint112] = ACTIONS(399),
    [anon_sym_uint120] = ACTIONS(399),
    [anon_sym_uint128] = ACTIONS(399),
    [anon_sym_uint136] = ACTIONS(399),
    [anon_sym_uint144] = ACTIONS(399),
    [anon_sym_uint152] = ACTIONS(399),
    [anon_sym_uint160] = ACTIONS(399),
    [anon_sym_uint168] = ACTIONS(399),
    [anon_sym_uint176] = ACTIONS(399),
    [anon_sym_uint184] = ACTIONS(399),
    [anon_sym_uint192] = ACTIONS(399),
    [anon_sym_uint200] = ACTIONS(399),
    [anon_sym_uint208] = ACTIONS(399),
    [anon_sym_uint216] = ACTIONS(399),
    [anon_sym_uint224] = ACTIONS(399),
    [anon_sym_uint232] = ACTIONS(399),
    [anon_sym_uint240] = ACTIONS(399),
    [anon_sym_uint248] = ACTIONS(399),
    [anon_sym_uint256] = ACTIONS(399),
    [anon_sym_bytes] = ACTIONS(399),
    [anon_sym_bytes1] = ACTIONS(399),
    [anon_sym_bytes2] = ACTIONS(399),
    [anon_sym_bytes3] = ACTIONS(399),
    [anon_sym_bytes4] = ACTIONS(399),
    [anon_sym_bytes5] = ACTIONS(399),
    [anon_sym_bytes6] = ACTIONS(399),
    [anon_sym_bytes7] = ACTIONS(399),
    [anon_sym_bytes8] = ACTIONS(399),
    [anon_sym_bytes9] = ACTIONS(399),
    [anon_sym_bytes10] = ACTIONS(399),
    [anon_sym_bytes11] = ACTIONS(399),
    [anon_sym_bytes12] = ACTIONS(399),
    [anon_sym_bytes13] = ACTIONS(399),
    [anon_sym_bytes14] = ACTIONS(399),
    [anon_sym_bytes15] = ACTIONS(399),
    [anon_sym_bytes16] = ACTIONS(399),
    [anon_sym_bytes17] = ACTIONS(399),
    [anon_sym_bytes18] = ACTIONS(399),
    [anon_sym_bytes19] = ACTIONS(399),
    [anon_sym_bytes20] = ACTIONS(399),
    [anon_sym_bytes21] = ACTIONS(399),
    [anon_sym_bytes22] = ACTIONS(399),
    [anon_sym_bytes23] = ACTIONS(399),
    [anon_sym_bytes24] = ACTIONS(399),
    [anon_sym_bytes25] = ACTIONS(399),
    [anon_sym_bytes26] = ACTIONS(399),
    [anon_sym_bytes27] = ACTIONS(399),
    [anon_sym_bytes28] = ACTIONS(399),
    [anon_sym_bytes29] = ACTIONS(399),
    [anon_sym_bytes30] = ACTIONS(399),
    [anon_sym_bytes31] = ACTIONS(399),
    [anon_sym_bytes32] = ACTIONS(399),
    [anon_sym_fixed] = ACTIONS(399),
    [aux_sym__fixed_token1] = ACTIONS(399),
    [anon_sym_ufixed] = ACTIONS(399),
    [aux_sym__ufixed_token1] = ACTIONS(399),
    [aux_sym__decimal_number_token1] = ACTIONS(399),
    [aux_sym__decimal_number_token2] = ACTIONS(401),
    [aux_sym__hex_number_token1] = ACTIONS(401),
    [anon_sym_unicode] = ACTIONS(399),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(97)] = {
    [sym_user_defined_type_definition] = STATE(97),
    [sym_error_declaration] = STATE(97),
    [sym__contract_member] = STATE(97),
    [sym_struct_declaration] = STATE(97),
    [sym_enum_declaration] = STATE(97),
    [sym_event_definition] = STATE(97),
    [sym_using_directive] = STATE(97),
    [sym_state_variable_declaration] = STATE(97),
    [sym_modifier_definition] = STATE(97),
    [sym_constructor_definition] = STATE(97),
    [sym_fallback_receive_definition] = STATE(97),
    [sym_function_definition] = STATE(97),
    [sym_type_name] = STATE(523),
    [sym__array_type] = STATE(380),
    [sym__function_type] = STATE(379),
    [sym_user_defined_type] = STATE(380),
    [sym__identifier_path] = STATE(367),
    [sym__mapping] = STATE(381),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [aux_sym_contract_body_repeat1] = STATE(97),
    [sym_identifier] = ACTIONS(403),
    [anon_sym_RBRACE] = ACTIONS(406),
    [anon_sym_type] = ACTIONS(408),
    [anon_sym_error] = ACTIONS(411),
    [anon_sym_struct] = ACTIONS(414),
    [anon_sym_enum] = ACTIONS(417),
    [anon_sym_event] = ACTIONS(420),
    [anon_sym_using] = ACTIONS(423),
    [anon_sym_function] = ACTIONS(426),
    [anon_sym_byte] = ACTIONS(429),
    [anon_sym_address] = ACTIONS(432),
    [anon_sym_var] = ACTIONS(429),
    [anon_sym_modifier] = ACTIONS(435),
    [anon_sym_constructor] = ACTIONS(438),
    [anon_sym_fallback] = ACTIONS(441),
    [anon_sym_receive] = ACTIONS(441),
    [anon_sym_mapping] = ACTIONS(444),
    [anon_sym_bool] = ACTIONS(429),
    [anon_sym_string] = ACTIONS(429),
    [anon_sym_int] = ACTIONS(429),
    [anon_sym_int8] = ACTIONS(429),
    [anon_sym_int16] = ACTIONS(429),
    [anon_sym_int24] = ACTIONS(429),
    [anon_sym_int32] = ACTIONS(429),
    [anon_sym_int40] = ACTIONS(429),
    [anon_sym_int48] = ACTIONS(429),
    [anon_sym_int56] = ACTIONS(429),
    [anon_sym_int64] = ACTIONS(429),
    [anon_sym_int72] = ACTIONS(429),
    [anon_sym_int80] = ACTIONS(429),
    [anon_sym_int88] = ACTIONS(429),
    [anon_sym_int96] = ACTIONS(429),
    [anon_sym_int104] = ACTIONS(429),
    [anon_sym_int112] = ACTIONS(429),
    [anon_sym_int120] = ACTIONS(429),
    [anon_sym_int128] = ACTIONS(429),
    [anon_sym_int136] = ACTIONS(429),
    [anon_sym_int144] = ACTIONS(429),
    [anon_sym_int152] = ACTIONS(429),
    [anon_sym_int160] = ACTIONS(429),
    [anon_sym_int168] = ACTIONS(429),
    [anon_sym_int176] = ACTIONS(429),
    [anon_sym_int184] = ACTIONS(429),
    [anon_sym_int192] = ACTIONS(429),
    [anon_sym_int200] = ACTIONS(429),
    [anon_sym_int208] = ACTIONS(429),
    [anon_sym_int216] = ACTIONS(429),
    [anon_sym_int224] = ACTIONS(429),
    [anon_sym_int232] = ACTIONS(429),
    [anon_sym_int240] = ACTIONS(429),
    [anon_sym_int248] = ACTIONS(429),
    [anon_sym_int256] = ACTIONS(429),
    [anon_sym_uint] = ACTIONS(429),
    [anon_sym_uint8] = ACTIONS(429),
    [anon_sym_uint16] = ACTIONS(429),
    [anon_sym_uint24] = ACTIONS(429),
    [anon_sym_uint32] = ACTIONS(429),
    [anon_sym_uint40] = ACTIONS(429),
    [anon_sym_uint48] = ACTIONS(429),
    [anon_sym_uint56] = ACTIONS(429),
    [anon_sym_uint64] = ACTIONS(429),
    [anon_sym_uint72] = ACTIONS(429),
    [anon_sym_uint80] = ACTIONS(429),
    [anon_sym_uint88] = ACTIONS(429),
    [anon_sym_uint96] = ACTIONS(429),
    [anon_sym_uint104] = ACTIONS(429),
    [anon_sym_uint112] = ACTIONS(429),
    [anon_sym_uint120] = ACTIONS(429),
    [anon_sym_uint128] = ACTIONS(429),
    [anon_sym_uint136] = ACTIONS(429),
    [anon_sym_uint144] = ACTIONS(429),
    [anon_sym_uint152] = ACTIONS(429),
    [anon_sym_uint160] = ACTIONS(429),
    [anon_sym_uint168] = ACTIONS(429),
    [anon_sym_uint176] = ACTIONS(429),
    [anon_sym_uint184] = ACTIONS(429),
    [anon_sym_uint192] = ACTIONS(429),
    [anon_sym_uint200] = ACTIONS(429),
    [anon_sym_uint208] = ACTIONS(429),
    [anon_sym_uint216] = ACTIONS(429),
    [anon_sym_uint224] = ACTIONS(429),
    [anon_sym_uint232] = ACTIONS(429),
    [anon_sym_uint240] = ACTIONS(429),
    [anon_sym_uint248] = ACTIONS(429),
    [anon_sym_uint256] = ACTIONS(429),
    [anon_sym_bytes] = ACTIONS(429),
    [anon_sym_bytes1] = ACTIONS(429),
    [anon_sym_bytes2] = ACTIONS(429),
    [anon_sym_bytes3] = ACTIONS(429),
    [anon_sym_bytes4] = ACTIONS(429),
    [anon_sym_bytes5] = ACTIONS(429),
    [anon_sym_bytes6] = ACTIONS(429),
    [anon_sym_bytes7] = ACTIONS(429),
    [anon_sym_bytes8] = ACTIONS(429),
    [anon_sym_bytes9] = ACTIONS(429),
    [anon_sym_bytes10] = ACTIONS(429),
    [anon_sym_bytes11] = ACTIONS(429),
    [anon_sym_bytes12] = ACTIONS(429),
    [anon_sym_bytes13] = ACTIONS(429),
    [anon_sym_bytes14] = ACTIONS(429),
    [anon_sym_bytes15] = ACTIONS(429),
    [anon_sym_bytes16] = ACTIONS(429),
    [anon_sym_bytes17] = ACTIONS(429),
    [anon_sym_bytes18] = ACTIONS(429),
    [anon_sym_bytes19] = ACTIONS(429),
    [anon_sym_bytes20] = ACTIONS(429),
    [anon_sym_bytes21] = ACTIONS(429),
    [anon_sym_bytes22] = ACTIONS(429),
    [anon_sym_bytes23] = ACTIONS(429),
    [anon_sym_bytes24] = ACTIONS(429),
    [anon_sym_bytes25] = ACTIONS(429),
    [anon_sym_bytes26] = ACTIONS(429),
    [anon_sym_bytes27] = ACTIONS(429),
    [anon_sym_bytes28] = ACTIONS(429),
    [anon_sym_bytes29] = ACTIONS(429),
    [anon_sym_bytes30] = ACTIONS(429),
    [anon_sym_bytes31] = ACTIONS(429),
    [anon_sym_bytes32] = ACTIONS(429),
    [anon_sym_fixed] = ACTIONS(429),
    [aux_sym__fixed_token1] = ACTIONS(429),
    [anon_sym_ufixed] = ACTIONS(429),
    [aux_sym__ufixed_token1] = ACTIONS(429),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(98)] = {
    [sym_identifier] = ACTIONS(447),
    [anon_sym_DASH] = ACTIONS(447),
    [anon_sym_TILDE] = ACTIONS(449),
    [anon_sym_LBRACE] = ACTIONS(449),
    [anon_sym_RBRACE] = ACTIONS(449),
    [anon_sym_type] = ACTIONS(447),
    [anon_sym_LPAREN] = ACTIONS(449),
    [anon_sym_for] = ACTIONS(447),
    [anon_sym_assembly] = ACTIONS(447),
    [anon_sym_break] = ACTIONS(447),
    [anon_sym_continue] = ACTIONS(447),
    [anon_sym_true] = ACTIONS(447),
    [anon_sym_false] = ACTIONS(447),
    [anon_sym_hex] = ACTIONS(447),
    [anon_sym_DQUOTE] = ACTIONS(449),
    [anon_sym_SQUOTE] = ACTIONS(449),
    [anon_sym_if] = ACTIONS(447),
    [anon_sym_function] = ACTIONS(447),
    [anon_sym_byte] = ACTIONS(447),
    [anon_sym_address] = ACTIONS(447),
    [anon_sym_return] = ACTIONS(447),
    [anon_sym_revert] = ACTIONS(447),
    [sym_unchecked] = ACTIONS(447),
    [anon_sym_var] = ACTIONS(447),
    [anon_sym_else] = ACTIONS(447),
    [anon_sym_while] = ACTIONS(447),
    [anon_sym_do] = ACTIONS(447),
    [anon_sym_try] = ACTIONS(447),
    [anon_sym_catch] = ACTIONS(447),
    [anon_sym_emit] = ACTIONS(447),
    [anon_sym_payable] = ACTIONS(447),
    [anon_sym_new] = ACTIONS(447),
    [anon_sym_LBRACK] = ACTIONS(449),
    [anon_sym_delete] = ACTIONS(447),
    [anon_sym_BANG] = ACTIONS(449),
    [anon_sym_PLUS_PLUS] = ACTIONS(449),
    [anon_sym_DASH_DASH] = ACTIONS(449),
    [anon_sym_mapping] = ACTIONS(447),
    [anon_sym_bool] = ACTIONS(447),
    [anon_sym_string] = ACTIONS(447),
    [anon_sym_int] = ACTIONS(447),
    [anon_sym_int8] = ACTIONS(447),
    [anon_sym_int16] = ACTIONS(447),
    [anon_sym_int24] = ACTIONS(447),
    [anon_sym_int32] = ACTIONS(447),
    [anon_sym_int40] = ACTIONS(447),
    [anon_sym_int48] = ACTIONS(447),
    [anon_sym_int56] = ACTIONS(447),
    [anon_sym_int64] = ACTIONS(447),
    [anon_sym_int72] = ACTIONS(447),
    [anon_sym_int80] = ACTIONS(447),
    [anon_sym_int88] = ACTIONS(447),
    [anon_sym_int96] = ACTIONS(447),
    [anon_sym_int104] = ACTIONS(447),
    [anon_sym_int112] = ACTIONS(447),
    [anon_sym_int120] = ACTIONS(447),
    [anon_sym_int128] = ACTIONS(447),
    [anon_sym_int136] = ACTIONS(447),
    [anon_sym_int144] = ACTIONS(447),
    [anon_sym_int152] = ACTIONS(447),
    [anon_sym_int160] = ACTIONS(447),
    [anon_sym_int168] = ACTIONS(447),
    [anon_sym_int176] = ACTIONS(447),
    [anon_sym_int184] = ACTIONS(447),
    [anon_sym_int192] = ACTIONS(447),
    [anon_sym_int200] = ACTIONS(447),
    [anon_sym_int208] = ACTIONS(447),
    [anon_sym_int216] = ACTIONS(447),
    [anon_sym_int224] = ACTIONS(447),
    [anon_sym_int232] = ACTIONS(447),
    [anon_sym_int240] = ACTIONS(447),
    [anon_sym_int248] = ACTIONS(447),
    [anon_sym_int256] = ACTIONS(447),
    [anon_sym_uint] = ACTIONS(447),
    [anon_sym_uint8] = ACTIONS(447),
    [anon_sym_uint16] = ACTIONS(447),
    [anon_sym_uint24] = ACTIONS(447),
    [anon_sym_uint32] = ACTIONS(447),
    [anon_sym_uint40] = ACTIONS(447),
    [anon_sym_uint48] = ACTIONS(447),
    [anon_sym_uint56] = ACTIONS(447),
    [anon_sym_uint64] = ACTIONS(447),
    [anon_sym_uint72] = ACTIONS(447),
    [anon_sym_uint80] = ACTIONS(447),
    [anon_sym_uint88] = ACTIONS(447),
    [anon_sym_uint96] = ACTIONS(447),
    [anon_sym_uint104] = ACTIONS(447),
    [anon_sym_uint112] = ACTIONS(447),
    [anon_sym_uint120] = ACTIONS(447),
    [anon_sym_uint128] = ACTIONS(447),
    [anon_sym_uint136] = ACTIONS(447),
    [anon_sym_uint144] = ACTIONS(447),
    [anon_sym_uint152] = ACTIONS(447),
    [anon_sym_uint160] = ACTIONS(447),
    [anon_sym_uint168] = ACTIONS(447),
    [anon_sym_uint176] = ACTIONS(447),
    [anon_sym_uint184] = ACTIONS(447),
    [anon_sym_uint192] = ACTIONS(447),
    [anon_sym_uint200] = ACTIONS(447),
    [anon_sym_uint208] = ACTIONS(447),
    [anon_sym_uint216] = ACTIONS(447),
    [anon_sym_uint224] = ACTIONS(447),
    [anon_sym_uint232] = ACTIONS(447),
    [anon_sym_uint240] = ACTIONS(447),
    [anon_sym_uint248] = ACTIONS(447),
    [anon_sym_uint256] = ACTIONS(447),
    [anon_sym_bytes] = ACTIONS(447),
    [anon_sym_bytes1] = ACTIONS(447),
    [anon_sym_bytes2] = ACTIONS(447),
    [anon_sym_bytes3] = ACTIONS(447),
    [anon_sym_bytes4] = ACTIONS(447),
    [anon_sym_bytes5] = ACTIONS(447),
    [anon_sym_bytes6] = ACTIONS(447),
    [anon_sym_bytes7] = ACTIONS(447),
    [anon_sym_bytes8] = ACTIONS(447),
    [anon_sym_bytes9] = ACTIONS(447),
    [anon_sym_bytes10] = ACTIONS(447),
    [anon_sym_bytes11] = ACTIONS(447),
    [anon_sym_bytes12] = ACTIONS(447),
    [anon_sym_bytes13] = ACTIONS(447),
    [anon_sym_bytes14] = ACTIONS(447),
    [anon_sym_bytes15] = ACTIONS(447),
    [anon_sym_bytes16] = ACTIONS(447),
    [anon_sym_bytes17] = ACTIONS(447),
    [anon_sym_bytes18] = ACTIONS(447),
    [anon_sym_bytes19] = ACTIONS(447),
    [anon_sym_bytes20] = ACTIONS(447),
    [anon_sym_bytes21] = ACTIONS(447),
    [anon_sym_bytes22] = ACTIONS(447),
    [anon_sym_bytes23] = ACTIONS(447),
    [anon_sym_bytes24] = ACTIONS(447),
    [anon_sym_bytes25] = ACTIONS(447),
    [anon_sym_bytes26] = ACTIONS(447),
    [anon_sym_bytes27] = ACTIONS(447),
    [anon_sym_bytes28] = ACTIONS(447),
    [anon_sym_bytes29] = ACTIONS(447),
    [anon_sym_bytes30] = ACTIONS(447),
    [anon_sym_bytes31] = ACTIONS(447),
    [anon_sym_bytes32] = ACTIONS(447),
    [anon_sym_fixed] = ACTIONS(447),
    [aux_sym__fixed_token1] = ACTIONS(447),
    [anon_sym_ufixed] = ACTIONS(447),
    [aux_sym__ufixed_token1] = ACTIONS(447),
    [aux_sym__decimal_number_token1] = ACTIONS(447),
    [aux_sym__decimal_number_token2] = ACTIONS(449),
    [aux_sym__hex_number_token1] = ACTIONS(449),
    [anon_sym_unicode] = ACTIONS(447),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(99)] = {
    [sym_identifier] = ACTIONS(451),
    [anon_sym_DASH] = ACTIONS(451),
    [anon_sym_TILDE] = ACTIONS(453),
    [anon_sym_LBRACE] = ACTIONS(453),
    [anon_sym_RBRACE] = ACTIONS(453),
    [anon_sym_type] = ACTIONS(451),
    [anon_sym_LPAREN] = ACTIONS(453),
    [anon_sym_for] = ACTIONS(451),
    [anon_sym_assembly] = ACTIONS(451),
    [anon_sym_break] = ACTIONS(451),
    [anon_sym_continue] = ACTIONS(451),
    [anon_sym_true] = ACTIONS(451),
    [anon_sym_false] = ACTIONS(451),
    [anon_sym_hex] = ACTIONS(451),
    [anon_sym_DQUOTE] = ACTIONS(453),
    [anon_sym_SQUOTE] = ACTIONS(453),
    [anon_sym_if] = ACTIONS(451),
    [anon_sym_function] = ACTIONS(451),
    [anon_sym_byte] = ACTIONS(451),
    [anon_sym_address] = ACTIONS(451),
    [anon_sym_return] = ACTIONS(451),
    [anon_sym_revert] = ACTIONS(451),
    [sym_unchecked] = ACTIONS(451),
    [anon_sym_var] = ACTIONS(451),
    [anon_sym_else] = ACTIONS(451),
    [anon_sym_while] = ACTIONS(451),
    [anon_sym_do] = ACTIONS(451),
    [anon_sym_try] = ACTIONS(451),
    [anon_sym_catch] = ACTIONS(451),
    [anon_sym_emit] = ACTIONS(451),
    [anon_sym_payable] = ACTIONS(451),
    [anon_sym_new] = ACTIONS(451),
    [anon_sym_LBRACK] = ACTIONS(453),
    [anon_sym_delete] = ACTIONS(451),
    [anon_sym_BANG] = ACTIONS(453),
    [anon_sym_PLUS_PLUS] = ACTIONS(453),
    [anon_sym_DASH_DASH] = ACTIONS(453),
    [anon_sym_mapping] = ACTIONS(451),
    [anon_sym_bool] = ACTIONS(451),
    [anon_sym_string] = ACTIONS(451),
    [anon_sym_int] = ACTIONS(451),
    [anon_sym_int8] = ACTIONS(451),
    [anon_sym_int16] = ACTIONS(451),
    [anon_sym_int24] = ACTIONS(451),
    [anon_sym_int32] = ACTIONS(451),
    [anon_sym_int40] = ACTIONS(451),
    [anon_sym_int48] = ACTIONS(451),
    [anon_sym_int56] = ACTIONS(451),
    [anon_sym_int64] = ACTIONS(451),
    [anon_sym_int72] = ACTIONS(451),
    [anon_sym_int80] = ACTIONS(451),
    [anon_sym_int88] = ACTIONS(451),
    [anon_sym_int96] = ACTIONS(451),
    [anon_sym_int104] = ACTIONS(451),
    [anon_sym_int112] = ACTIONS(451),
    [anon_sym_int120] = ACTIONS(451),
    [anon_sym_int128] = ACTIONS(451),
    [anon_sym_int136] = ACTIONS(451),
    [anon_sym_int144] = ACTIONS(451),
    [anon_sym_int152] = ACTIONS(451),
    [anon_sym_int160] = ACTIONS(451),
    [anon_sym_int168] = ACTIONS(451),
    [anon_sym_int176] = ACTIONS(451),
    [anon_sym_int184] = ACTIONS(451),
    [anon_sym_int192] = ACTIONS(451),
    [anon_sym_int200] = ACTIONS(451),
    [anon_sym_int208] = ACTIONS(451),
    [anon_sym_int216] = ACTIONS(451),
    [anon_sym_int224] = ACTIONS(451),
    [anon_sym_int232] = ACTIONS(451),
    [anon_sym_int240] = ACTIONS(451),
    [anon_sym_int248] = ACTIONS(451),
    [anon_sym_int256] = ACTIONS(451),
    [anon_sym_uint] = ACTIONS(451),
    [anon_sym_uint8] = ACTIONS(451),
    [anon_sym_uint16] = ACTIONS(451),
    [anon_sym_uint24] = ACTIONS(451),
    [anon_sym_uint32] = ACTIONS(451),
    [anon_sym_uint40] = ACTIONS(451),
    [anon_sym_uint48] = ACTIONS(451),
    [anon_sym_uint56] = ACTIONS(451),
    [anon_sym_uint64] = ACTIONS(451),
    [anon_sym_uint72] = ACTIONS(451),
    [anon_sym_uint80] = ACTIONS(451),
    [anon_sym_uint88] = ACTIONS(451),
    [anon_sym_uint96] = ACTIONS(451),
    [anon_sym_uint104] = ACTIONS(451),
    [anon_sym_uint112] = ACTIONS(451),
    [anon_sym_uint120] = ACTIONS(451),
    [anon_sym_uint128] = ACTIONS(451),
    [anon_sym_uint136] = ACTIONS(451),
    [anon_sym_uint144] = ACTIONS(451),
    [anon_sym_uint152] = ACTIONS(451),
    [anon_sym_uint160] = ACTIONS(451),
    [anon_sym_uint168] = ACTIONS(451),
    [anon_sym_uint176] = ACTIONS(451),
    [anon_sym_uint184] = ACTIONS(451),
    [anon_sym_uint192] = ACTIONS(451),
    [anon_sym_uint200] = ACTIONS(451),
    [anon_sym_uint208] = ACTIONS(451),
    [anon_sym_uint216] = ACTIONS(451),
    [anon_sym_uint224] = ACTIONS(451),
    [anon_sym_uint232] = ACTIONS(451),
    [anon_sym_uint240] = ACTIONS(451),
    [anon_sym_uint248] = ACTIONS(451),
    [anon_sym_uint256] = ACTIONS(451),
    [anon_sym_bytes] = ACTIONS(451),
    [anon_sym_bytes1] = ACTIONS(451),
    [anon_sym_bytes2] = ACTIONS(451),
    [anon_sym_bytes3] = ACTIONS(451),
    [anon_sym_bytes4] = ACTIONS(451),
    [anon_sym_bytes5] = ACTIONS(451),
    [anon_sym_bytes6] = ACTIONS(451),
    [anon_sym_bytes7] = ACTIONS(451),
    [anon_sym_bytes8] = ACTIONS(451),
    [anon_sym_bytes9] = ACTIONS(451),
    [anon_sym_bytes10] = ACTIONS(451),
    [anon_sym_bytes11] = ACTIONS(451),
    [anon_sym_bytes12] = ACTIONS(451),
    [anon_sym_bytes13] = ACTIONS(451),
    [anon_sym_bytes14] = ACTIONS(451),
    [anon_sym_bytes15] = ACTIONS(451),
    [anon_sym_bytes16] = ACTIONS(451),
    [anon_sym_bytes17] = ACTIONS(451),
    [anon_sym_bytes18] = ACTIONS(451),
    [anon_sym_bytes19] = ACTIONS(451),
    [anon_sym_bytes20] = ACTIONS(451),
    [anon_sym_bytes21] = ACTIONS(451),
    [anon_sym_bytes22] = ACTIONS(451),
    [anon_sym_bytes23] = ACTIONS(451),
    [anon_sym_bytes24] = ACTIONS(451),
    [anon_sym_bytes25] = ACTIONS(451),
    [anon_sym_bytes26] = ACTIONS(451),
    [anon_sym_bytes27] = ACTIONS(451),
    [anon_sym_bytes28] = ACTIONS(451),
    [anon_sym_bytes29] = ACTIONS(451),
    [anon_sym_bytes30] = ACTIONS(451),
    [anon_sym_bytes31] = ACTIONS(451),
    [anon_sym_bytes32] = ACTIONS(451),
    [anon_sym_fixed] = ACTIONS(451),
    [aux_sym__fixed_token1] = ACTIONS(451),
    [anon_sym_ufixed] = ACTIONS(451),
    [aux_sym__ufixed_token1] = ACTIONS(451),
    [aux_sym__decimal_number_token1] = ACTIONS(451),
    [aux_sym__decimal_number_token2] = ACTIONS(453),
    [aux_sym__hex_number_token1] = ACTIONS(453),
    [anon_sym_unicode] = ACTIONS(451),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(100)] = {
    [sym_identifier] = ACTIONS(455),
    [anon_sym_DASH] = ACTIONS(455),
    [anon_sym_TILDE] = ACTIONS(457),
    [anon_sym_LBRACE] = ACTIONS(457),
    [anon_sym_RBRACE] = ACTIONS(457),
    [anon_sym_type] = ACTIONS(455),
    [anon_sym_LPAREN] = ACTIONS(457),
    [anon_sym_for] = ACTIONS(455),
    [anon_sym_assembly] = ACTIONS(455),
    [anon_sym_break] = ACTIONS(455),
    [anon_sym_continue] = ACTIONS(455),
    [anon_sym_true] = ACTIONS(455),
    [anon_sym_false] = ACTIONS(455),
    [anon_sym_hex] = ACTIONS(455),
    [anon_sym_DQUOTE] = ACTIONS(457),
    [anon_sym_SQUOTE] = ACTIONS(457),
    [anon_sym_if] = ACTIONS(455),
    [anon_sym_function] = ACTIONS(455),
    [anon_sym_byte] = ACTIONS(455),
    [anon_sym_address] = ACTIONS(455),
    [anon_sym_return] = ACTIONS(455),
    [anon_sym_revert] = ACTIONS(455),
    [sym_unchecked] = ACTIONS(455),
    [anon_sym_var] = ACTIONS(455),
    [anon_sym_else] = ACTIONS(455),
    [anon_sym_while] = ACTIONS(455),
    [anon_sym_do] = ACTIONS(455),
    [anon_sym_try] = ACTIONS(455),
    [anon_sym_catch] = ACTIONS(455),
    [anon_sym_emit] = ACTIONS(455),
    [anon_sym_payable] = ACTIONS(455),
    [anon_sym_new] = ACTIONS(455),
    [anon_sym_LBRACK] = ACTIONS(457),
    [anon_sym_delete] = ACTIONS(455),
    [anon_sym_BANG] = ACTIONS(457),
    [anon_sym_PLUS_PLUS] = ACTIONS(457),
    [anon_sym_DASH_DASH] = ACTIONS(457),
    [anon_sym_mapping] = ACTIONS(455),
    [anon_sym_bool] = ACTIONS(455),
    [anon_sym_string] = ACTIONS(455),
    [anon_sym_int] = ACTIONS(455),
    [anon_sym_int8] = ACTIONS(455),
    [anon_sym_int16] = ACTIONS(455),
    [anon_sym_int24] = ACTIONS(455),
    [anon_sym_int32] = ACTIONS(455),
    [anon_sym_int40] = ACTIONS(455),
    [anon_sym_int48] = ACTIONS(455),
    [anon_sym_int56] = ACTIONS(455),
    [anon_sym_int64] = ACTIONS(455),
    [anon_sym_int72] = ACTIONS(455),
    [anon_sym_int80] = ACTIONS(455),
    [anon_sym_int88] = ACTIONS(455),
    [anon_sym_int96] = ACTIONS(455),
    [anon_sym_int104] = ACTIONS(455),
    [anon_sym_int112] = ACTIONS(455),
    [anon_sym_int120] = ACTIONS(455),
    [anon_sym_int128] = ACTIONS(455),
    [anon_sym_int136] = ACTIONS(455),
    [anon_sym_int144] = ACTIONS(455),
    [anon_sym_int152] = ACTIONS(455),
    [anon_sym_int160] = ACTIONS(455),
    [anon_sym_int168] = ACTIONS(455),
    [anon_sym_int176] = ACTIONS(455),
    [anon_sym_int184] = ACTIONS(455),
    [anon_sym_int192] = ACTIONS(455),
    [anon_sym_int200] = ACTIONS(455),
    [anon_sym_int208] = ACTIONS(455),
    [anon_sym_int216] = ACTIONS(455),
    [anon_sym_int224] = ACTIONS(455),
    [anon_sym_int232] = ACTIONS(455),
    [anon_sym_int240] = ACTIONS(455),
    [anon_sym_int248] = ACTIONS(455),
    [anon_sym_int256] = ACTIONS(455),
    [anon_sym_uint] = ACTIONS(455),
    [anon_sym_uint8] = ACTIONS(455),
    [anon_sym_uint16] = ACTIONS(455),
    [anon_sym_uint24] = ACTIONS(455),
    [anon_sym_uint32] = ACTIONS(455),
    [anon_sym_uint40] = ACTIONS(455),
    [anon_sym_uint48] = ACTIONS(455),
    [anon_sym_uint56] = ACTIONS(455),
    [anon_sym_uint64] = ACTIONS(455),
    [anon_sym_uint72] = ACTIONS(455),
    [anon_sym_uint80] = ACTIONS(455),
    [anon_sym_uint88] = ACTIONS(455),
    [anon_sym_uint96] = ACTIONS(455),
    [anon_sym_uint104] = ACTIONS(455),
    [anon_sym_uint112] = ACTIONS(455),
    [anon_sym_uint120] = ACTIONS(455),
    [anon_sym_uint128] = ACTIONS(455),
    [anon_sym_uint136] = ACTIONS(455),
    [anon_sym_uint144] = ACTIONS(455),
    [anon_sym_uint152] = ACTIONS(455),
    [anon_sym_uint160] = ACTIONS(455),
    [anon_sym_uint168] = ACTIONS(455),
    [anon_sym_uint176] = ACTIONS(455),
    [anon_sym_uint184] = ACTIONS(455),
    [anon_sym_uint192] = ACTIONS(455),
    [anon_sym_uint200] = ACTIONS(455),
    [anon_sym_uint208] = ACTIONS(455),
    [anon_sym_uint216] = ACTIONS(455),
    [anon_sym_uint224] = ACTIONS(455),
    [anon_sym_uint232] = ACTIONS(455),
    [anon_sym_uint240] = ACTIONS(455),
    [anon_sym_uint248] = ACTIONS(455),
    [anon_sym_uint256] = ACTIONS(455),
    [anon_sym_bytes] = ACTIONS(455),
    [anon_sym_bytes1] = ACTIONS(455),
    [anon_sym_bytes2] = ACTIONS(455),
    [anon_sym_bytes3] = ACTIONS(455),
    [anon_sym_bytes4] = ACTIONS(455),
    [anon_sym_bytes5] = ACTIONS(455),
    [anon_sym_bytes6] = ACTIONS(455),
    [anon_sym_bytes7] = ACTIONS(455),
    [anon_sym_bytes8] = ACTIONS(455),
    [anon_sym_bytes9] = ACTIONS(455),
    [anon_sym_bytes10] = ACTIONS(455),
    [anon_sym_bytes11] = ACTIONS(455),
    [anon_sym_bytes12] = ACTIONS(455),
    [anon_sym_bytes13] = ACTIONS(455),
    [anon_sym_bytes14] = ACTIONS(455),
    [anon_sym_bytes15] = ACTIONS(455),
    [anon_sym_bytes16] = ACTIONS(455),
    [anon_sym_bytes17] = ACTIONS(455),
    [anon_sym_bytes18] = ACTIONS(455),
    [anon_sym_bytes19] = ACTIONS(455),
    [anon_sym_bytes20] = ACTIONS(455),
    [anon_sym_bytes21] = ACTIONS(455),
    [anon_sym_bytes22] = ACTIONS(455),
    [anon_sym_bytes23] = ACTIONS(455),
    [anon_sym_bytes24] = ACTIONS(455),
    [anon_sym_bytes25] = ACTIONS(455),
    [anon_sym_bytes26] = ACTIONS(455),
    [anon_sym_bytes27] = ACTIONS(455),
    [anon_sym_bytes28] = ACTIONS(455),
    [anon_sym_bytes29] = ACTIONS(455),
    [anon_sym_bytes30] = ACTIONS(455),
    [anon_sym_bytes31] = ACTIONS(455),
    [anon_sym_bytes32] = ACTIONS(455),
    [anon_sym_fixed] = ACTIONS(455),
    [aux_sym__fixed_token1] = ACTIONS(455),
    [anon_sym_ufixed] = ACTIONS(455),
    [aux_sym__ufixed_token1] = ACTIONS(455),
    [aux_sym__decimal_number_token1] = ACTIONS(455),
    [aux_sym__decimal_number_token2] = ACTIONS(457),
    [aux_sym__hex_number_token1] = ACTIONS(457),
    [anon_sym_unicode] = ACTIONS(455),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(101)] = {
    [sym_user_defined_type_definition] = STATE(97),
    [sym_error_declaration] = STATE(97),
    [sym__contract_member] = STATE(97),
    [sym_struct_declaration] = STATE(97),
    [sym_enum_declaration] = STATE(97),
    [sym_event_definition] = STATE(97),
    [sym_using_directive] = STATE(97),
    [sym_state_variable_declaration] = STATE(97),
    [sym_modifier_definition] = STATE(97),
    [sym_constructor_definition] = STATE(97),
    [sym_fallback_receive_definition] = STATE(97),
    [sym_function_definition] = STATE(97),
    [sym_type_name] = STATE(523),
    [sym__array_type] = STATE(380),
    [sym__function_type] = STATE(379),
    [sym_user_defined_type] = STATE(380),
    [sym__identifier_path] = STATE(367),
    [sym__mapping] = STATE(381),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [aux_sym_contract_body_repeat1] = STATE(97),
    [sym_identifier] = ACTIONS(7),
    [anon_sym_RBRACE] = ACTIONS(459),
    [anon_sym_type] = ACTIONS(461),
    [anon_sym_error] = ACTIONS(463),
    [anon_sym_struct] = ACTIONS(465),
    [anon_sym_enum] = ACTIONS(467),
    [anon_sym_event] = ACTIONS(469),
    [anon_sym_using] = ACTIONS(471),
    [anon_sym_function] = ACTIONS(473),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_modifier] = ACTIONS(475),
    [anon_sym_constructor] = ACTIONS(477),
    [anon_sym_fallback] = ACTIONS(479),
    [anon_sym_receive] = ACTIONS(479),
    [anon_sym_mapping] = ACTIONS(39),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(102)] = {
    [sym_user_defined_type_definition] = STATE(101),
    [sym_error_declaration] = STATE(101),
    [sym__contract_member] = STATE(101),
    [sym_struct_declaration] = STATE(101),
    [sym_enum_declaration] = STATE(101),
    [sym_event_definition] = STATE(101),
    [sym_using_directive] = STATE(101),
    [sym_state_variable_declaration] = STATE(101),
    [sym_modifier_definition] = STATE(101),
    [sym_constructor_definition] = STATE(101),
    [sym_fallback_receive_definition] = STATE(101),
    [sym_function_definition] = STATE(101),
    [sym_type_name] = STATE(523),
    [sym__array_type] = STATE(380),
    [sym__function_type] = STATE(379),
    [sym_user_defined_type] = STATE(380),
    [sym__identifier_path] = STATE(367),
    [sym__mapping] = STATE(381),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [aux_sym_contract_body_repeat1] = STATE(101),
    [sym_identifier] = ACTIONS(7),
    [anon_sym_RBRACE] = ACTIONS(481),
    [anon_sym_type] = ACTIONS(461),
    [anon_sym_error] = ACTIONS(463),
    [anon_sym_struct] = ACTIONS(465),
    [anon_sym_enum] = ACTIONS(467),
    [anon_sym_event] = ACTIONS(469),
    [anon_sym_using] = ACTIONS(471),
    [anon_sym_function] = ACTIONS(473),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_modifier] = ACTIONS(475),
    [anon_sym_constructor] = ACTIONS(477),
    [anon_sym_fallback] = ACTIONS(479),
    [anon_sym_receive] = ACTIONS(479),
    [anon_sym_mapping] = ACTIONS(39),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(103)] = {
    [sym_identifier] = ACTIONS(483),
    [anon_sym_DASH] = ACTIONS(483),
    [anon_sym_TILDE] = ACTIONS(485),
    [anon_sym_LBRACE] = ACTIONS(485),
    [anon_sym_RBRACE] = ACTIONS(485),
    [anon_sym_type] = ACTIONS(483),
    [anon_sym_LPAREN] = ACTIONS(485),
    [anon_sym_for] = ACTIONS(483),
    [anon_sym_assembly] = ACTIONS(483),
    [anon_sym_break] = ACTIONS(483),
    [anon_sym_continue] = ACTIONS(483),
    [anon_sym_true] = ACTIONS(483),
    [anon_sym_false] = ACTIONS(483),
    [anon_sym_hex] = ACTIONS(483),
    [anon_sym_DQUOTE] = ACTIONS(485),
    [anon_sym_SQUOTE] = ACTIONS(485),
    [anon_sym_if] = ACTIONS(483),
    [anon_sym_function] = ACTIONS(483),
    [anon_sym_byte] = ACTIONS(483),
    [anon_sym_address] = ACTIONS(483),
    [anon_sym_return] = ACTIONS(483),
    [anon_sym_revert] = ACTIONS(483),
    [sym_unchecked] = ACTIONS(483),
    [anon_sym_var] = ACTIONS(483),
    [anon_sym_else] = ACTIONS(483),
    [anon_sym_while] = ACTIONS(483),
    [anon_sym_do] = ACTIONS(483),
    [anon_sym_try] = ACTIONS(483),
    [anon_sym_catch] = ACTIONS(483),
    [anon_sym_emit] = ACTIONS(483),
    [anon_sym_payable] = ACTIONS(483),
    [anon_sym_new] = ACTIONS(483),
    [anon_sym_LBRACK] = ACTIONS(485),
    [anon_sym_delete] = ACTIONS(483),
    [anon_sym_BANG] = ACTIONS(485),
    [anon_sym_PLUS_PLUS] = ACTIONS(485),
    [anon_sym_DASH_DASH] = ACTIONS(485),
    [anon_sym_mapping] = ACTIONS(483),
    [anon_sym_bool] = ACTIONS(483),
    [anon_sym_string] = ACTIONS(483),
    [anon_sym_int] = ACTIONS(483),
    [anon_sym_int8] = ACTIONS(483),
    [anon_sym_int16] = ACTIONS(483),
    [anon_sym_int24] = ACTIONS(483),
    [anon_sym_int32] = ACTIONS(483),
    [anon_sym_int40] = ACTIONS(483),
    [anon_sym_int48] = ACTIONS(483),
    [anon_sym_int56] = ACTIONS(483),
    [anon_sym_int64] = ACTIONS(483),
    [anon_sym_int72] = ACTIONS(483),
    [anon_sym_int80] = ACTIONS(483),
    [anon_sym_int88] = ACTIONS(483),
    [anon_sym_int96] = ACTIONS(483),
    [anon_sym_int104] = ACTIONS(483),
    [anon_sym_int112] = ACTIONS(483),
    [anon_sym_int120] = ACTIONS(483),
    [anon_sym_int128] = ACTIONS(483),
    [anon_sym_int136] = ACTIONS(483),
    [anon_sym_int144] = ACTIONS(483),
    [anon_sym_int152] = ACTIONS(483),
    [anon_sym_int160] = ACTIONS(483),
    [anon_sym_int168] = ACTIONS(483),
    [anon_sym_int176] = ACTIONS(483),
    [anon_sym_int184] = ACTIONS(483),
    [anon_sym_int192] = ACTIONS(483),
    [anon_sym_int200] = ACTIONS(483),
    [anon_sym_int208] = ACTIONS(483),
    [anon_sym_int216] = ACTIONS(483),
    [anon_sym_int224] = ACTIONS(483),
    [anon_sym_int232] = ACTIONS(483),
    [anon_sym_int240] = ACTIONS(483),
    [anon_sym_int248] = ACTIONS(483),
    [anon_sym_int256] = ACTIONS(483),
    [anon_sym_uint] = ACTIONS(483),
    [anon_sym_uint8] = ACTIONS(483),
    [anon_sym_uint16] = ACTIONS(483),
    [anon_sym_uint24] = ACTIONS(483),
    [anon_sym_uint32] = ACTIONS(483),
    [anon_sym_uint40] = ACTIONS(483),
    [anon_sym_uint48] = ACTIONS(483),
    [anon_sym_uint56] = ACTIONS(483),
    [anon_sym_uint64] = ACTIONS(483),
    [anon_sym_uint72] = ACTIONS(483),
    [anon_sym_uint80] = ACTIONS(483),
    [anon_sym_uint88] = ACTIONS(483),
    [anon_sym_uint96] = ACTIONS(483),
    [anon_sym_uint104] = ACTIONS(483),
    [anon_sym_uint112] = ACTIONS(483),
    [anon_sym_uint120] = ACTIONS(483),
    [anon_sym_uint128] = ACTIONS(483),
    [anon_sym_uint136] = ACTIONS(483),
    [anon_sym_uint144] = ACTIONS(483),
    [anon_sym_uint152] = ACTIONS(483),
    [anon_sym_uint160] = ACTIONS(483),
    [anon_sym_uint168] = ACTIONS(483),
    [anon_sym_uint176] = ACTIONS(483),
    [anon_sym_uint184] = ACTIONS(483),
    [anon_sym_uint192] = ACTIONS(483),
    [anon_sym_uint200] = ACTIONS(483),
    [anon_sym_uint208] = ACTIONS(483),
    [anon_sym_uint216] = ACTIONS(483),
    [anon_sym_uint224] = ACTIONS(483),
    [anon_sym_uint232] = ACTIONS(483),
    [anon_sym_uint240] = ACTIONS(483),
    [anon_sym_uint248] = ACTIONS(483),
    [anon_sym_uint256] = ACTIONS(483),
    [anon_sym_bytes] = ACTIONS(483),
    [anon_sym_bytes1] = ACTIONS(483),
    [anon_sym_bytes2] = ACTIONS(483),
    [anon_sym_bytes3] = ACTIONS(483),
    [anon_sym_bytes4] = ACTIONS(483),
    [anon_sym_bytes5] = ACTIONS(483),
    [anon_sym_bytes6] = ACTIONS(483),
    [anon_sym_bytes7] = ACTIONS(483),
    [anon_sym_bytes8] = ACTIONS(483),
    [anon_sym_bytes9] = ACTIONS(483),
    [anon_sym_bytes10] = ACTIONS(483),
    [anon_sym_bytes11] = ACTIONS(483),
    [anon_sym_bytes12] = ACTIONS(483),
    [anon_sym_bytes13] = ACTIONS(483),
    [anon_sym_bytes14] = ACTIONS(483),
    [anon_sym_bytes15] = ACTIONS(483),
    [anon_sym_bytes16] = ACTIONS(483),
    [anon_sym_bytes17] = ACTIONS(483),
    [anon_sym_bytes18] = ACTIONS(483),
    [anon_sym_bytes19] = ACTIONS(483),
    [anon_sym_bytes20] = ACTIONS(483),
    [anon_sym_bytes21] = ACTIONS(483),
    [anon_sym_bytes22] = ACTIONS(483),
    [anon_sym_bytes23] = ACTIONS(483),
    [anon_sym_bytes24] = ACTIONS(483),
    [anon_sym_bytes25] = ACTIONS(483),
    [anon_sym_bytes26] = ACTIONS(483),
    [anon_sym_bytes27] = ACTIONS(483),
    [anon_sym_bytes28] = ACTIONS(483),
    [anon_sym_bytes29] = ACTIONS(483),
    [anon_sym_bytes30] = ACTIONS(483),
    [anon_sym_bytes31] = ACTIONS(483),
    [anon_sym_bytes32] = ACTIONS(483),
    [anon_sym_fixed] = ACTIONS(483),
    [aux_sym__fixed_token1] = ACTIONS(483),
    [anon_sym_ufixed] = ACTIONS(483),
    [aux_sym__ufixed_token1] = ACTIONS(483),
    [aux_sym__decimal_number_token1] = ACTIONS(483),
    [aux_sym__decimal_number_token2] = ACTIONS(485),
    [aux_sym__hex_number_token1] = ACTIONS(485),
    [anon_sym_unicode] = ACTIONS(483),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(104)] = {
    [sym_identifier] = ACTIONS(487),
    [anon_sym_DASH] = ACTIONS(487),
    [anon_sym_TILDE] = ACTIONS(489),
    [anon_sym_LBRACE] = ACTIONS(489),
    [anon_sym_RBRACE] = ACTIONS(489),
    [anon_sym_type] = ACTIONS(487),
    [anon_sym_LPAREN] = ACTIONS(489),
    [anon_sym_for] = ACTIONS(487),
    [anon_sym_assembly] = ACTIONS(487),
    [anon_sym_break] = ACTIONS(487),
    [anon_sym_continue] = ACTIONS(487),
    [anon_sym_true] = ACTIONS(487),
    [anon_sym_false] = ACTIONS(487),
    [anon_sym_hex] = ACTIONS(487),
    [anon_sym_DQUOTE] = ACTIONS(489),
    [anon_sym_SQUOTE] = ACTIONS(489),
    [anon_sym_if] = ACTIONS(487),
    [anon_sym_function] = ACTIONS(487),
    [anon_sym_byte] = ACTIONS(487),
    [anon_sym_address] = ACTIONS(487),
    [anon_sym_return] = ACTIONS(487),
    [anon_sym_revert] = ACTIONS(487),
    [sym_unchecked] = ACTIONS(487),
    [anon_sym_var] = ACTIONS(487),
    [anon_sym_else] = ACTIONS(487),
    [anon_sym_while] = ACTIONS(487),
    [anon_sym_do] = ACTIONS(487),
    [anon_sym_try] = ACTIONS(487),
    [anon_sym_catch] = ACTIONS(487),
    [anon_sym_emit] = ACTIONS(487),
    [anon_sym_payable] = ACTIONS(487),
    [anon_sym_new] = ACTIONS(487),
    [anon_sym_LBRACK] = ACTIONS(489),
    [anon_sym_delete] = ACTIONS(487),
    [anon_sym_BANG] = ACTIONS(489),
    [anon_sym_PLUS_PLUS] = ACTIONS(489),
    [anon_sym_DASH_DASH] = ACTIONS(489),
    [anon_sym_mapping] = ACTIONS(487),
    [anon_sym_bool] = ACTIONS(487),
    [anon_sym_string] = ACTIONS(487),
    [anon_sym_int] = ACTIONS(487),
    [anon_sym_int8] = ACTIONS(487),
    [anon_sym_int16] = ACTIONS(487),
    [anon_sym_int24] = ACTIONS(487),
    [anon_sym_int32] = ACTIONS(487),
    [anon_sym_int40] = ACTIONS(487),
    [anon_sym_int48] = ACTIONS(487),
    [anon_sym_int56] = ACTIONS(487),
    [anon_sym_int64] = ACTIONS(487),
    [anon_sym_int72] = ACTIONS(487),
    [anon_sym_int80] = ACTIONS(487),
    [anon_sym_int88] = ACTIONS(487),
    [anon_sym_int96] = ACTIONS(487),
    [anon_sym_int104] = ACTIONS(487),
    [anon_sym_int112] = ACTIONS(487),
    [anon_sym_int120] = ACTIONS(487),
    [anon_sym_int128] = ACTIONS(487),
    [anon_sym_int136] = ACTIONS(487),
    [anon_sym_int144] = ACTIONS(487),
    [anon_sym_int152] = ACTIONS(487),
    [anon_sym_int160] = ACTIONS(487),
    [anon_sym_int168] = ACTIONS(487),
    [anon_sym_int176] = ACTIONS(487),
    [anon_sym_int184] = ACTIONS(487),
    [anon_sym_int192] = ACTIONS(487),
    [anon_sym_int200] = ACTIONS(487),
    [anon_sym_int208] = ACTIONS(487),
    [anon_sym_int216] = ACTIONS(487),
    [anon_sym_int224] = ACTIONS(487),
    [anon_sym_int232] = ACTIONS(487),
    [anon_sym_int240] = ACTIONS(487),
    [anon_sym_int248] = ACTIONS(487),
    [anon_sym_int256] = ACTIONS(487),
    [anon_sym_uint] = ACTIONS(487),
    [anon_sym_uint8] = ACTIONS(487),
    [anon_sym_uint16] = ACTIONS(487),
    [anon_sym_uint24] = ACTIONS(487),
    [anon_sym_uint32] = ACTIONS(487),
    [anon_sym_uint40] = ACTIONS(487),
    [anon_sym_uint48] = ACTIONS(487),
    [anon_sym_uint56] = ACTIONS(487),
    [anon_sym_uint64] = ACTIONS(487),
    [anon_sym_uint72] = ACTIONS(487),
    [anon_sym_uint80] = ACTIONS(487),
    [anon_sym_uint88] = ACTIONS(487),
    [anon_sym_uint96] = ACTIONS(487),
    [anon_sym_uint104] = ACTIONS(487),
    [anon_sym_uint112] = ACTIONS(487),
    [anon_sym_uint120] = ACTIONS(487),
    [anon_sym_uint128] = ACTIONS(487),
    [anon_sym_uint136] = ACTIONS(487),
    [anon_sym_uint144] = ACTIONS(487),
    [anon_sym_uint152] = ACTIONS(487),
    [anon_sym_uint160] = ACTIONS(487),
    [anon_sym_uint168] = ACTIONS(487),
    [anon_sym_uint176] = ACTIONS(487),
    [anon_sym_uint184] = ACTIONS(487),
    [anon_sym_uint192] = ACTIONS(487),
    [anon_sym_uint200] = ACTIONS(487),
    [anon_sym_uint208] = ACTIONS(487),
    [anon_sym_uint216] = ACTIONS(487),
    [anon_sym_uint224] = ACTIONS(487),
    [anon_sym_uint232] = ACTIONS(487),
    [anon_sym_uint240] = ACTIONS(487),
    [anon_sym_uint248] = ACTIONS(487),
    [anon_sym_uint256] = ACTIONS(487),
    [anon_sym_bytes] = ACTIONS(487),
    [anon_sym_bytes1] = ACTIONS(487),
    [anon_sym_bytes2] = ACTIONS(487),
    [anon_sym_bytes3] = ACTIONS(487),
    [anon_sym_bytes4] = ACTIONS(487),
    [anon_sym_bytes5] = ACTIONS(487),
    [anon_sym_bytes6] = ACTIONS(487),
    [anon_sym_bytes7] = ACTIONS(487),
    [anon_sym_bytes8] = ACTIONS(487),
    [anon_sym_bytes9] = ACTIONS(487),
    [anon_sym_bytes10] = ACTIONS(487),
    [anon_sym_bytes11] = ACTIONS(487),
    [anon_sym_bytes12] = ACTIONS(487),
    [anon_sym_bytes13] = ACTIONS(487),
    [anon_sym_bytes14] = ACTIONS(487),
    [anon_sym_bytes15] = ACTIONS(487),
    [anon_sym_bytes16] = ACTIONS(487),
    [anon_sym_bytes17] = ACTIONS(487),
    [anon_sym_bytes18] = ACTIONS(487),
    [anon_sym_bytes19] = ACTIONS(487),
    [anon_sym_bytes20] = ACTIONS(487),
    [anon_sym_bytes21] = ACTIONS(487),
    [anon_sym_bytes22] = ACTIONS(487),
    [anon_sym_bytes23] = ACTIONS(487),
    [anon_sym_bytes24] = ACTIONS(487),
    [anon_sym_bytes25] = ACTIONS(487),
    [anon_sym_bytes26] = ACTIONS(487),
    [anon_sym_bytes27] = ACTIONS(487),
    [anon_sym_bytes28] = ACTIONS(487),
    [anon_sym_bytes29] = ACTIONS(487),
    [anon_sym_bytes30] = ACTIONS(487),
    [anon_sym_bytes31] = ACTIONS(487),
    [anon_sym_bytes32] = ACTIONS(487),
    [anon_sym_fixed] = ACTIONS(487),
    [aux_sym__fixed_token1] = ACTIONS(487),
    [anon_sym_ufixed] = ACTIONS(487),
    [aux_sym__ufixed_token1] = ACTIONS(487),
    [aux_sym__decimal_number_token1] = ACTIONS(487),
    [aux_sym__decimal_number_token2] = ACTIONS(489),
    [aux_sym__hex_number_token1] = ACTIONS(489),
    [anon_sym_unicode] = ACTIONS(487),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(105)] = {
    [sym_identifier] = ACTIONS(491),
    [anon_sym_DASH] = ACTIONS(491),
    [anon_sym_TILDE] = ACTIONS(493),
    [anon_sym_LBRACE] = ACTIONS(493),
    [anon_sym_RBRACE] = ACTIONS(493),
    [anon_sym_type] = ACTIONS(491),
    [anon_sym_LPAREN] = ACTIONS(493),
    [anon_sym_for] = ACTIONS(491),
    [anon_sym_assembly] = ACTIONS(491),
    [anon_sym_break] = ACTIONS(491),
    [anon_sym_continue] = ACTIONS(491),
    [anon_sym_true] = ACTIONS(491),
    [anon_sym_false] = ACTIONS(491),
    [anon_sym_hex] = ACTIONS(491),
    [anon_sym_DQUOTE] = ACTIONS(493),
    [anon_sym_SQUOTE] = ACTIONS(493),
    [anon_sym_if] = ACTIONS(491),
    [anon_sym_function] = ACTIONS(491),
    [anon_sym_byte] = ACTIONS(491),
    [anon_sym_address] = ACTIONS(491),
    [anon_sym_return] = ACTIONS(491),
    [anon_sym_revert] = ACTIONS(491),
    [sym_unchecked] = ACTIONS(491),
    [anon_sym_var] = ACTIONS(491),
    [anon_sym_else] = ACTIONS(491),
    [anon_sym_while] = ACTIONS(491),
    [anon_sym_do] = ACTIONS(491),
    [anon_sym_try] = ACTIONS(491),
    [anon_sym_emit] = ACTIONS(491),
    [anon_sym_payable] = ACTIONS(491),
    [anon_sym_new] = ACTIONS(491),
    [anon_sym_LBRACK] = ACTIONS(493),
    [anon_sym_delete] = ACTIONS(491),
    [anon_sym_BANG] = ACTIONS(493),
    [anon_sym_PLUS_PLUS] = ACTIONS(493),
    [anon_sym_DASH_DASH] = ACTIONS(493),
    [anon_sym_mapping] = ACTIONS(491),
    [anon_sym_bool] = ACTIONS(491),
    [anon_sym_string] = ACTIONS(491),
    [anon_sym_int] = ACTIONS(491),
    [anon_sym_int8] = ACTIONS(491),
    [anon_sym_int16] = ACTIONS(491),
    [anon_sym_int24] = ACTIONS(491),
    [anon_sym_int32] = ACTIONS(491),
    [anon_sym_int40] = ACTIONS(491),
    [anon_sym_int48] = ACTIONS(491),
    [anon_sym_int56] = ACTIONS(491),
    [anon_sym_int64] = ACTIONS(491),
    [anon_sym_int72] = ACTIONS(491),
    [anon_sym_int80] = ACTIONS(491),
    [anon_sym_int88] = ACTIONS(491),
    [anon_sym_int96] = ACTIONS(491),
    [anon_sym_int104] = ACTIONS(491),
    [anon_sym_int112] = ACTIONS(491),
    [anon_sym_int120] = ACTIONS(491),
    [anon_sym_int128] = ACTIONS(491),
    [anon_sym_int136] = ACTIONS(491),
    [anon_sym_int144] = ACTIONS(491),
    [anon_sym_int152] = ACTIONS(491),
    [anon_sym_int160] = ACTIONS(491),
    [anon_sym_int168] = ACTIONS(491),
    [anon_sym_int176] = ACTIONS(491),
    [anon_sym_int184] = ACTIONS(491),
    [anon_sym_int192] = ACTIONS(491),
    [anon_sym_int200] = ACTIONS(491),
    [anon_sym_int208] = ACTIONS(491),
    [anon_sym_int216] = ACTIONS(491),
    [anon_sym_int224] = ACTIONS(491),
    [anon_sym_int232] = ACTIONS(491),
    [anon_sym_int240] = ACTIONS(491),
    [anon_sym_int248] = ACTIONS(491),
    [anon_sym_int256] = ACTIONS(491),
    [anon_sym_uint] = ACTIONS(491),
    [anon_sym_uint8] = ACTIONS(491),
    [anon_sym_uint16] = ACTIONS(491),
    [anon_sym_uint24] = ACTIONS(491),
    [anon_sym_uint32] = ACTIONS(491),
    [anon_sym_uint40] = ACTIONS(491),
    [anon_sym_uint48] = ACTIONS(491),
    [anon_sym_uint56] = ACTIONS(491),
    [anon_sym_uint64] = ACTIONS(491),
    [anon_sym_uint72] = ACTIONS(491),
    [anon_sym_uint80] = ACTIONS(491),
    [anon_sym_uint88] = ACTIONS(491),
    [anon_sym_uint96] = ACTIONS(491),
    [anon_sym_uint104] = ACTIONS(491),
    [anon_sym_uint112] = ACTIONS(491),
    [anon_sym_uint120] = ACTIONS(491),
    [anon_sym_uint128] = ACTIONS(491),
    [anon_sym_uint136] = ACTIONS(491),
    [anon_sym_uint144] = ACTIONS(491),
    [anon_sym_uint152] = ACTIONS(491),
    [anon_sym_uint160] = ACTIONS(491),
    [anon_sym_uint168] = ACTIONS(491),
    [anon_sym_uint176] = ACTIONS(491),
    [anon_sym_uint184] = ACTIONS(491),
    [anon_sym_uint192] = ACTIONS(491),
    [anon_sym_uint200] = ACTIONS(491),
    [anon_sym_uint208] = ACTIONS(491),
    [anon_sym_uint216] = ACTIONS(491),
    [anon_sym_uint224] = ACTIONS(491),
    [anon_sym_uint232] = ACTIONS(491),
    [anon_sym_uint240] = ACTIONS(491),
    [anon_sym_uint248] = ACTIONS(491),
    [anon_sym_uint256] = ACTIONS(491),
    [anon_sym_bytes] = ACTIONS(491),
    [anon_sym_bytes1] = ACTIONS(491),
    [anon_sym_bytes2] = ACTIONS(491),
    [anon_sym_bytes3] = ACTIONS(491),
    [anon_sym_bytes4] = ACTIONS(491),
    [anon_sym_bytes5] = ACTIONS(491),
    [anon_sym_bytes6] = ACTIONS(491),
    [anon_sym_bytes7] = ACTIONS(491),
    [anon_sym_bytes8] = ACTIONS(491),
    [anon_sym_bytes9] = ACTIONS(491),
    [anon_sym_bytes10] = ACTIONS(491),
    [anon_sym_bytes11] = ACTIONS(491),
    [anon_sym_bytes12] = ACTIONS(491),
    [anon_sym_bytes13] = ACTIONS(491),
    [anon_sym_bytes14] = ACTIONS(491),
    [anon_sym_bytes15] = ACTIONS(491),
    [anon_sym_bytes16] = ACTIONS(491),
    [anon_sym_bytes17] = ACTIONS(491),
    [anon_sym_bytes18] = ACTIONS(491),
    [anon_sym_bytes19] = ACTIONS(491),
    [anon_sym_bytes20] = ACTIONS(491),
    [anon_sym_bytes21] = ACTIONS(491),
    [anon_sym_bytes22] = ACTIONS(491),
    [anon_sym_bytes23] = ACTIONS(491),
    [anon_sym_bytes24] = ACTIONS(491),
    [anon_sym_bytes25] = ACTIONS(491),
    [anon_sym_bytes26] = ACTIONS(491),
    [anon_sym_bytes27] = ACTIONS(491),
    [anon_sym_bytes28] = ACTIONS(491),
    [anon_sym_bytes29] = ACTIONS(491),
    [anon_sym_bytes30] = ACTIONS(491),
    [anon_sym_bytes31] = ACTIONS(491),
    [anon_sym_bytes32] = ACTIONS(491),
    [anon_sym_fixed] = ACTIONS(491),
    [aux_sym__fixed_token1] = ACTIONS(491),
    [anon_sym_ufixed] = ACTIONS(491),
    [aux_sym__ufixed_token1] = ACTIONS(491),
    [aux_sym__decimal_number_token1] = ACTIONS(491),
    [aux_sym__decimal_number_token2] = ACTIONS(493),
    [aux_sym__hex_number_token1] = ACTIONS(493),
    [anon_sym_unicode] = ACTIONS(491),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(106)] = {
    [sym_identifier] = ACTIONS(495),
    [anon_sym_DASH] = ACTIONS(495),
    [anon_sym_TILDE] = ACTIONS(497),
    [anon_sym_LBRACE] = ACTIONS(497),
    [anon_sym_RBRACE] = ACTIONS(497),
    [anon_sym_type] = ACTIONS(495),
    [anon_sym_LPAREN] = ACTIONS(497),
    [anon_sym_for] = ACTIONS(495),
    [anon_sym_assembly] = ACTIONS(495),
    [anon_sym_break] = ACTIONS(495),
    [anon_sym_continue] = ACTIONS(495),
    [anon_sym_true] = ACTIONS(495),
    [anon_sym_false] = ACTIONS(495),
    [anon_sym_hex] = ACTIONS(495),
    [anon_sym_DQUOTE] = ACTIONS(497),
    [anon_sym_SQUOTE] = ACTIONS(497),
    [anon_sym_if] = ACTIONS(495),
    [anon_sym_function] = ACTIONS(495),
    [anon_sym_byte] = ACTIONS(495),
    [anon_sym_address] = ACTIONS(495),
    [anon_sym_return] = ACTIONS(495),
    [anon_sym_revert] = ACTIONS(495),
    [sym_unchecked] = ACTIONS(495),
    [anon_sym_var] = ACTIONS(495),
    [anon_sym_else] = ACTIONS(495),
    [anon_sym_while] = ACTIONS(495),
    [anon_sym_do] = ACTIONS(495),
    [anon_sym_try] = ACTIONS(495),
    [anon_sym_emit] = ACTIONS(495),
    [anon_sym_payable] = ACTIONS(495),
    [anon_sym_new] = ACTIONS(495),
    [anon_sym_LBRACK] = ACTIONS(497),
    [anon_sym_delete] = ACTIONS(495),
    [anon_sym_BANG] = ACTIONS(497),
    [anon_sym_PLUS_PLUS] = ACTIONS(497),
    [anon_sym_DASH_DASH] = ACTIONS(497),
    [anon_sym_mapping] = ACTIONS(495),
    [anon_sym_bool] = ACTIONS(495),
    [anon_sym_string] = ACTIONS(495),
    [anon_sym_int] = ACTIONS(495),
    [anon_sym_int8] = ACTIONS(495),
    [anon_sym_int16] = ACTIONS(495),
    [anon_sym_int24] = ACTIONS(495),
    [anon_sym_int32] = ACTIONS(495),
    [anon_sym_int40] = ACTIONS(495),
    [anon_sym_int48] = ACTIONS(495),
    [anon_sym_int56] = ACTIONS(495),
    [anon_sym_int64] = ACTIONS(495),
    [anon_sym_int72] = ACTIONS(495),
    [anon_sym_int80] = ACTIONS(495),
    [anon_sym_int88] = ACTIONS(495),
    [anon_sym_int96] = ACTIONS(495),
    [anon_sym_int104] = ACTIONS(495),
    [anon_sym_int112] = ACTIONS(495),
    [anon_sym_int120] = ACTIONS(495),
    [anon_sym_int128] = ACTIONS(495),
    [anon_sym_int136] = ACTIONS(495),
    [anon_sym_int144] = ACTIONS(495),
    [anon_sym_int152] = ACTIONS(495),
    [anon_sym_int160] = ACTIONS(495),
    [anon_sym_int168] = ACTIONS(495),
    [anon_sym_int176] = ACTIONS(495),
    [anon_sym_int184] = ACTIONS(495),
    [anon_sym_int192] = ACTIONS(495),
    [anon_sym_int200] = ACTIONS(495),
    [anon_sym_int208] = ACTIONS(495),
    [anon_sym_int216] = ACTIONS(495),
    [anon_sym_int224] = ACTIONS(495),
    [anon_sym_int232] = ACTIONS(495),
    [anon_sym_int240] = ACTIONS(495),
    [anon_sym_int248] = ACTIONS(495),
    [anon_sym_int256] = ACTIONS(495),
    [anon_sym_uint] = ACTIONS(495),
    [anon_sym_uint8] = ACTIONS(495),
    [anon_sym_uint16] = ACTIONS(495),
    [anon_sym_uint24] = ACTIONS(495),
    [anon_sym_uint32] = ACTIONS(495),
    [anon_sym_uint40] = ACTIONS(495),
    [anon_sym_uint48] = ACTIONS(495),
    [anon_sym_uint56] = ACTIONS(495),
    [anon_sym_uint64] = ACTIONS(495),
    [anon_sym_uint72] = ACTIONS(495),
    [anon_sym_uint80] = ACTIONS(495),
    [anon_sym_uint88] = ACTIONS(495),
    [anon_sym_uint96] = ACTIONS(495),
    [anon_sym_uint104] = ACTIONS(495),
    [anon_sym_uint112] = ACTIONS(495),
    [anon_sym_uint120] = ACTIONS(495),
    [anon_sym_uint128] = ACTIONS(495),
    [anon_sym_uint136] = ACTIONS(495),
    [anon_sym_uint144] = ACTIONS(495),
    [anon_sym_uint152] = ACTIONS(495),
    [anon_sym_uint160] = ACTIONS(495),
    [anon_sym_uint168] = ACTIONS(495),
    [anon_sym_uint176] = ACTIONS(495),
    [anon_sym_uint184] = ACTIONS(495),
    [anon_sym_uint192] = ACTIONS(495),
    [anon_sym_uint200] = ACTIONS(495),
    [anon_sym_uint208] = ACTIONS(495),
    [anon_sym_uint216] = ACTIONS(495),
    [anon_sym_uint224] = ACTIONS(495),
    [anon_sym_uint232] = ACTIONS(495),
    [anon_sym_uint240] = ACTIONS(495),
    [anon_sym_uint248] = ACTIONS(495),
    [anon_sym_uint256] = ACTIONS(495),
    [anon_sym_bytes] = ACTIONS(495),
    [anon_sym_bytes1] = ACTIONS(495),
    [anon_sym_bytes2] = ACTIONS(495),
    [anon_sym_bytes3] = ACTIONS(495),
    [anon_sym_bytes4] = ACTIONS(495),
    [anon_sym_bytes5] = ACTIONS(495),
    [anon_sym_bytes6] = ACTIONS(495),
    [anon_sym_bytes7] = ACTIONS(495),
    [anon_sym_bytes8] = ACTIONS(495),
    [anon_sym_bytes9] = ACTIONS(495),
    [anon_sym_bytes10] = ACTIONS(495),
    [anon_sym_bytes11] = ACTIONS(495),
    [anon_sym_bytes12] = ACTIONS(495),
    [anon_sym_bytes13] = ACTIONS(495),
    [anon_sym_bytes14] = ACTIONS(495),
    [anon_sym_bytes15] = ACTIONS(495),
    [anon_sym_bytes16] = ACTIONS(495),
    [anon_sym_bytes17] = ACTIONS(495),
    [anon_sym_bytes18] = ACTIONS(495),
    [anon_sym_bytes19] = ACTIONS(495),
    [anon_sym_bytes20] = ACTIONS(495),
    [anon_sym_bytes21] = ACTIONS(495),
    [anon_sym_bytes22] = ACTIONS(495),
    [anon_sym_bytes23] = ACTIONS(495),
    [anon_sym_bytes24] = ACTIONS(495),
    [anon_sym_bytes25] = ACTIONS(495),
    [anon_sym_bytes26] = ACTIONS(495),
    [anon_sym_bytes27] = ACTIONS(495),
    [anon_sym_bytes28] = ACTIONS(495),
    [anon_sym_bytes29] = ACTIONS(495),
    [anon_sym_bytes30] = ACTIONS(495),
    [anon_sym_bytes31] = ACTIONS(495),
    [anon_sym_bytes32] = ACTIONS(495),
    [anon_sym_fixed] = ACTIONS(495),
    [aux_sym__fixed_token1] = ACTIONS(495),
    [anon_sym_ufixed] = ACTIONS(495),
    [aux_sym__ufixed_token1] = ACTIONS(495),
    [aux_sym__decimal_number_token1] = ACTIONS(495),
    [aux_sym__decimal_number_token2] = ACTIONS(497),
    [aux_sym__hex_number_token1] = ACTIONS(497),
    [anon_sym_unicode] = ACTIONS(495),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(107)] = {
    [sym_identifier] = ACTIONS(499),
    [anon_sym_DASH] = ACTIONS(499),
    [anon_sym_TILDE] = ACTIONS(501),
    [anon_sym_LBRACE] = ACTIONS(501),
    [anon_sym_RBRACE] = ACTIONS(501),
    [anon_sym_type] = ACTIONS(499),
    [anon_sym_LPAREN] = ACTIONS(501),
    [anon_sym_for] = ACTIONS(499),
    [anon_sym_assembly] = ACTIONS(499),
    [anon_sym_break] = ACTIONS(499),
    [anon_sym_continue] = ACTIONS(499),
    [anon_sym_true] = ACTIONS(499),
    [anon_sym_false] = ACTIONS(499),
    [anon_sym_hex] = ACTIONS(499),
    [anon_sym_DQUOTE] = ACTIONS(501),
    [anon_sym_SQUOTE] = ACTIONS(501),
    [anon_sym_if] = ACTIONS(499),
    [anon_sym_function] = ACTIONS(499),
    [anon_sym_byte] = ACTIONS(499),
    [anon_sym_address] = ACTIONS(499),
    [anon_sym_return] = ACTIONS(499),
    [anon_sym_revert] = ACTIONS(499),
    [sym_unchecked] = ACTIONS(499),
    [anon_sym_var] = ACTIONS(499),
    [anon_sym_else] = ACTIONS(499),
    [anon_sym_while] = ACTIONS(499),
    [anon_sym_do] = ACTIONS(499),
    [anon_sym_try] = ACTIONS(499),
    [anon_sym_emit] = ACTIONS(499),
    [anon_sym_payable] = ACTIONS(499),
    [anon_sym_new] = ACTIONS(499),
    [anon_sym_LBRACK] = ACTIONS(501),
    [anon_sym_delete] = ACTIONS(499),
    [anon_sym_BANG] = ACTIONS(501),
    [anon_sym_PLUS_PLUS] = ACTIONS(501),
    [anon_sym_DASH_DASH] = ACTIONS(501),
    [anon_sym_mapping] = ACTIONS(499),
    [anon_sym_bool] = ACTIONS(499),
    [anon_sym_string] = ACTIONS(499),
    [anon_sym_int] = ACTIONS(499),
    [anon_sym_int8] = ACTIONS(499),
    [anon_sym_int16] = ACTIONS(499),
    [anon_sym_int24] = ACTIONS(499),
    [anon_sym_int32] = ACTIONS(499),
    [anon_sym_int40] = ACTIONS(499),
    [anon_sym_int48] = ACTIONS(499),
    [anon_sym_int56] = ACTIONS(499),
    [anon_sym_int64] = ACTIONS(499),
    [anon_sym_int72] = ACTIONS(499),
    [anon_sym_int80] = ACTIONS(499),
    [anon_sym_int88] = ACTIONS(499),
    [anon_sym_int96] = ACTIONS(499),
    [anon_sym_int104] = ACTIONS(499),
    [anon_sym_int112] = ACTIONS(499),
    [anon_sym_int120] = ACTIONS(499),
    [anon_sym_int128] = ACTIONS(499),
    [anon_sym_int136] = ACTIONS(499),
    [anon_sym_int144] = ACTIONS(499),
    [anon_sym_int152] = ACTIONS(499),
    [anon_sym_int160] = ACTIONS(499),
    [anon_sym_int168] = ACTIONS(499),
    [anon_sym_int176] = ACTIONS(499),
    [anon_sym_int184] = ACTIONS(499),
    [anon_sym_int192] = ACTIONS(499),
    [anon_sym_int200] = ACTIONS(499),
    [anon_sym_int208] = ACTIONS(499),
    [anon_sym_int216] = ACTIONS(499),
    [anon_sym_int224] = ACTIONS(499),
    [anon_sym_int232] = ACTIONS(499),
    [anon_sym_int240] = ACTIONS(499),
    [anon_sym_int248] = ACTIONS(499),
    [anon_sym_int256] = ACTIONS(499),
    [anon_sym_uint] = ACTIONS(499),
    [anon_sym_uint8] = ACTIONS(499),
    [anon_sym_uint16] = ACTIONS(499),
    [anon_sym_uint24] = ACTIONS(499),
    [anon_sym_uint32] = ACTIONS(499),
    [anon_sym_uint40] = ACTIONS(499),
    [anon_sym_uint48] = ACTIONS(499),
    [anon_sym_uint56] = ACTIONS(499),
    [anon_sym_uint64] = ACTIONS(499),
    [anon_sym_uint72] = ACTIONS(499),
    [anon_sym_uint80] = ACTIONS(499),
    [anon_sym_uint88] = ACTIONS(499),
    [anon_sym_uint96] = ACTIONS(499),
    [anon_sym_uint104] = ACTIONS(499),
    [anon_sym_uint112] = ACTIONS(499),
    [anon_sym_uint120] = ACTIONS(499),
    [anon_sym_uint128] = ACTIONS(499),
    [anon_sym_uint136] = ACTIONS(499),
    [anon_sym_uint144] = ACTIONS(499),
    [anon_sym_uint152] = ACTIONS(499),
    [anon_sym_uint160] = ACTIONS(499),
    [anon_sym_uint168] = ACTIONS(499),
    [anon_sym_uint176] = ACTIONS(499),
    [anon_sym_uint184] = ACTIONS(499),
    [anon_sym_uint192] = ACTIONS(499),
    [anon_sym_uint200] = ACTIONS(499),
    [anon_sym_uint208] = ACTIONS(499),
    [anon_sym_uint216] = ACTIONS(499),
    [anon_sym_uint224] = ACTIONS(499),
    [anon_sym_uint232] = ACTIONS(499),
    [anon_sym_uint240] = ACTIONS(499),
    [anon_sym_uint248] = ACTIONS(499),
    [anon_sym_uint256] = ACTIONS(499),
    [anon_sym_bytes] = ACTIONS(499),
    [anon_sym_bytes1] = ACTIONS(499),
    [anon_sym_bytes2] = ACTIONS(499),
    [anon_sym_bytes3] = ACTIONS(499),
    [anon_sym_bytes4] = ACTIONS(499),
    [anon_sym_bytes5] = ACTIONS(499),
    [anon_sym_bytes6] = ACTIONS(499),
    [anon_sym_bytes7] = ACTIONS(499),
    [anon_sym_bytes8] = ACTIONS(499),
    [anon_sym_bytes9] = ACTIONS(499),
    [anon_sym_bytes10] = ACTIONS(499),
    [anon_sym_bytes11] = ACTIONS(499),
    [anon_sym_bytes12] = ACTIONS(499),
    [anon_sym_bytes13] = ACTIONS(499),
    [anon_sym_bytes14] = ACTIONS(499),
    [anon_sym_bytes15] = ACTIONS(499),
    [anon_sym_bytes16] = ACTIONS(499),
    [anon_sym_bytes17] = ACTIONS(499),
    [anon_sym_bytes18] = ACTIONS(499),
    [anon_sym_bytes19] = ACTIONS(499),
    [anon_sym_bytes20] = ACTIONS(499),
    [anon_sym_bytes21] = ACTIONS(499),
    [anon_sym_bytes22] = ACTIONS(499),
    [anon_sym_bytes23] = ACTIONS(499),
    [anon_sym_bytes24] = ACTIONS(499),
    [anon_sym_bytes25] = ACTIONS(499),
    [anon_sym_bytes26] = ACTIONS(499),
    [anon_sym_bytes27] = ACTIONS(499),
    [anon_sym_bytes28] = ACTIONS(499),
    [anon_sym_bytes29] = ACTIONS(499),
    [anon_sym_bytes30] = ACTIONS(499),
    [anon_sym_bytes31] = ACTIONS(499),
    [anon_sym_bytes32] = ACTIONS(499),
    [anon_sym_fixed] = ACTIONS(499),
    [aux_sym__fixed_token1] = ACTIONS(499),
    [anon_sym_ufixed] = ACTIONS(499),
    [aux_sym__ufixed_token1] = ACTIONS(499),
    [aux_sym__decimal_number_token1] = ACTIONS(499),
    [aux_sym__decimal_number_token2] = ACTIONS(501),
    [aux_sym__hex_number_token1] = ACTIONS(501),
    [anon_sym_unicode] = ACTIONS(499),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(108)] = {
    [sym_identifier] = ACTIONS(503),
    [anon_sym_DASH] = ACTIONS(503),
    [anon_sym_TILDE] = ACTIONS(505),
    [anon_sym_LBRACE] = ACTIONS(505),
    [anon_sym_RBRACE] = ACTIONS(505),
    [anon_sym_type] = ACTIONS(503),
    [anon_sym_LPAREN] = ACTIONS(505),
    [anon_sym_for] = ACTIONS(503),
    [anon_sym_assembly] = ACTIONS(503),
    [anon_sym_break] = ACTIONS(503),
    [anon_sym_continue] = ACTIONS(503),
    [anon_sym_true] = ACTIONS(503),
    [anon_sym_false] = ACTIONS(503),
    [anon_sym_hex] = ACTIONS(503),
    [anon_sym_DQUOTE] = ACTIONS(505),
    [anon_sym_SQUOTE] = ACTIONS(505),
    [anon_sym_if] = ACTIONS(503),
    [anon_sym_function] = ACTIONS(503),
    [anon_sym_byte] = ACTIONS(503),
    [anon_sym_address] = ACTIONS(503),
    [anon_sym_return] = ACTIONS(503),
    [anon_sym_revert] = ACTIONS(503),
    [sym_unchecked] = ACTIONS(503),
    [anon_sym_var] = ACTIONS(503),
    [anon_sym_else] = ACTIONS(503),
    [anon_sym_while] = ACTIONS(503),
    [anon_sym_do] = ACTIONS(503),
    [anon_sym_try] = ACTIONS(503),
    [anon_sym_emit] = ACTIONS(503),
    [anon_sym_payable] = ACTIONS(503),
    [anon_sym_new] = ACTIONS(503),
    [anon_sym_LBRACK] = ACTIONS(505),
    [anon_sym_delete] = ACTIONS(503),
    [anon_sym_BANG] = ACTIONS(505),
    [anon_sym_PLUS_PLUS] = ACTIONS(505),
    [anon_sym_DASH_DASH] = ACTIONS(505),
    [anon_sym_mapping] = ACTIONS(503),
    [anon_sym_bool] = ACTIONS(503),
    [anon_sym_string] = ACTIONS(503),
    [anon_sym_int] = ACTIONS(503),
    [anon_sym_int8] = ACTIONS(503),
    [anon_sym_int16] = ACTIONS(503),
    [anon_sym_int24] = ACTIONS(503),
    [anon_sym_int32] = ACTIONS(503),
    [anon_sym_int40] = ACTIONS(503),
    [anon_sym_int48] = ACTIONS(503),
    [anon_sym_int56] = ACTIONS(503),
    [anon_sym_int64] = ACTIONS(503),
    [anon_sym_int72] = ACTIONS(503),
    [anon_sym_int80] = ACTIONS(503),
    [anon_sym_int88] = ACTIONS(503),
    [anon_sym_int96] = ACTIONS(503),
    [anon_sym_int104] = ACTIONS(503),
    [anon_sym_int112] = ACTIONS(503),
    [anon_sym_int120] = ACTIONS(503),
    [anon_sym_int128] = ACTIONS(503),
    [anon_sym_int136] = ACTIONS(503),
    [anon_sym_int144] = ACTIONS(503),
    [anon_sym_int152] = ACTIONS(503),
    [anon_sym_int160] = ACTIONS(503),
    [anon_sym_int168] = ACTIONS(503),
    [anon_sym_int176] = ACTIONS(503),
    [anon_sym_int184] = ACTIONS(503),
    [anon_sym_int192] = ACTIONS(503),
    [anon_sym_int200] = ACTIONS(503),
    [anon_sym_int208] = ACTIONS(503),
    [anon_sym_int216] = ACTIONS(503),
    [anon_sym_int224] = ACTIONS(503),
    [anon_sym_int232] = ACTIONS(503),
    [anon_sym_int240] = ACTIONS(503),
    [anon_sym_int248] = ACTIONS(503),
    [anon_sym_int256] = ACTIONS(503),
    [anon_sym_uint] = ACTIONS(503),
    [anon_sym_uint8] = ACTIONS(503),
    [anon_sym_uint16] = ACTIONS(503),
    [anon_sym_uint24] = ACTIONS(503),
    [anon_sym_uint32] = ACTIONS(503),
    [anon_sym_uint40] = ACTIONS(503),
    [anon_sym_uint48] = ACTIONS(503),
    [anon_sym_uint56] = ACTIONS(503),
    [anon_sym_uint64] = ACTIONS(503),
    [anon_sym_uint72] = ACTIONS(503),
    [anon_sym_uint80] = ACTIONS(503),
    [anon_sym_uint88] = ACTIONS(503),
    [anon_sym_uint96] = ACTIONS(503),
    [anon_sym_uint104] = ACTIONS(503),
    [anon_sym_uint112] = ACTIONS(503),
    [anon_sym_uint120] = ACTIONS(503),
    [anon_sym_uint128] = ACTIONS(503),
    [anon_sym_uint136] = ACTIONS(503),
    [anon_sym_uint144] = ACTIONS(503),
    [anon_sym_uint152] = ACTIONS(503),
    [anon_sym_uint160] = ACTIONS(503),
    [anon_sym_uint168] = ACTIONS(503),
    [anon_sym_uint176] = ACTIONS(503),
    [anon_sym_uint184] = ACTIONS(503),
    [anon_sym_uint192] = ACTIONS(503),
    [anon_sym_uint200] = ACTIONS(503),
    [anon_sym_uint208] = ACTIONS(503),
    [anon_sym_uint216] = ACTIONS(503),
    [anon_sym_uint224] = ACTIONS(503),
    [anon_sym_uint232] = ACTIONS(503),
    [anon_sym_uint240] = ACTIONS(503),
    [anon_sym_uint248] = ACTIONS(503),
    [anon_sym_uint256] = ACTIONS(503),
    [anon_sym_bytes] = ACTIONS(503),
    [anon_sym_bytes1] = ACTIONS(503),
    [anon_sym_bytes2] = ACTIONS(503),
    [anon_sym_bytes3] = ACTIONS(503),
    [anon_sym_bytes4] = ACTIONS(503),
    [anon_sym_bytes5] = ACTIONS(503),
    [anon_sym_bytes6] = ACTIONS(503),
    [anon_sym_bytes7] = ACTIONS(503),
    [anon_sym_bytes8] = ACTIONS(503),
    [anon_sym_bytes9] = ACTIONS(503),
    [anon_sym_bytes10] = ACTIONS(503),
    [anon_sym_bytes11] = ACTIONS(503),
    [anon_sym_bytes12] = ACTIONS(503),
    [anon_sym_bytes13] = ACTIONS(503),
    [anon_sym_bytes14] = ACTIONS(503),
    [anon_sym_bytes15] = ACTIONS(503),
    [anon_sym_bytes16] = ACTIONS(503),
    [anon_sym_bytes17] = ACTIONS(503),
    [anon_sym_bytes18] = ACTIONS(503),
    [anon_sym_bytes19] = ACTIONS(503),
    [anon_sym_bytes20] = ACTIONS(503),
    [anon_sym_bytes21] = ACTIONS(503),
    [anon_sym_bytes22] = ACTIONS(503),
    [anon_sym_bytes23] = ACTIONS(503),
    [anon_sym_bytes24] = ACTIONS(503),
    [anon_sym_bytes25] = ACTIONS(503),
    [anon_sym_bytes26] = ACTIONS(503),
    [anon_sym_bytes27] = ACTIONS(503),
    [anon_sym_bytes28] = ACTIONS(503),
    [anon_sym_bytes29] = ACTIONS(503),
    [anon_sym_bytes30] = ACTIONS(503),
    [anon_sym_bytes31] = ACTIONS(503),
    [anon_sym_bytes32] = ACTIONS(503),
    [anon_sym_fixed] = ACTIONS(503),
    [aux_sym__fixed_token1] = ACTIONS(503),
    [anon_sym_ufixed] = ACTIONS(503),
    [aux_sym__ufixed_token1] = ACTIONS(503),
    [aux_sym__decimal_number_token1] = ACTIONS(503),
    [aux_sym__decimal_number_token2] = ACTIONS(505),
    [aux_sym__hex_number_token1] = ACTIONS(505),
    [anon_sym_unicode] = ACTIONS(503),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(109)] = {
    [sym_identifier] = ACTIONS(507),
    [anon_sym_DASH] = ACTIONS(507),
    [anon_sym_TILDE] = ACTIONS(509),
    [anon_sym_LBRACE] = ACTIONS(509),
    [anon_sym_RBRACE] = ACTIONS(509),
    [anon_sym_type] = ACTIONS(507),
    [anon_sym_LPAREN] = ACTIONS(509),
    [anon_sym_for] = ACTIONS(507),
    [anon_sym_assembly] = ACTIONS(507),
    [anon_sym_break] = ACTIONS(507),
    [anon_sym_continue] = ACTIONS(507),
    [anon_sym_true] = ACTIONS(507),
    [anon_sym_false] = ACTIONS(507),
    [anon_sym_hex] = ACTIONS(507),
    [anon_sym_DQUOTE] = ACTIONS(509),
    [anon_sym_SQUOTE] = ACTIONS(509),
    [anon_sym_if] = ACTIONS(507),
    [anon_sym_function] = ACTIONS(507),
    [anon_sym_byte] = ACTIONS(507),
    [anon_sym_address] = ACTIONS(507),
    [anon_sym_return] = ACTIONS(507),
    [anon_sym_revert] = ACTIONS(507),
    [sym_unchecked] = ACTIONS(507),
    [anon_sym_var] = ACTIONS(507),
    [anon_sym_else] = ACTIONS(507),
    [anon_sym_while] = ACTIONS(507),
    [anon_sym_do] = ACTIONS(507),
    [anon_sym_try] = ACTIONS(507),
    [anon_sym_emit] = ACTIONS(507),
    [anon_sym_payable] = ACTIONS(507),
    [anon_sym_new] = ACTIONS(507),
    [anon_sym_LBRACK] = ACTIONS(509),
    [anon_sym_delete] = ACTIONS(507),
    [anon_sym_BANG] = ACTIONS(509),
    [anon_sym_PLUS_PLUS] = ACTIONS(509),
    [anon_sym_DASH_DASH] = ACTIONS(509),
    [anon_sym_mapping] = ACTIONS(507),
    [anon_sym_bool] = ACTIONS(507),
    [anon_sym_string] = ACTIONS(507),
    [anon_sym_int] = ACTIONS(507),
    [anon_sym_int8] = ACTIONS(507),
    [anon_sym_int16] = ACTIONS(507),
    [anon_sym_int24] = ACTIONS(507),
    [anon_sym_int32] = ACTIONS(507),
    [anon_sym_int40] = ACTIONS(507),
    [anon_sym_int48] = ACTIONS(507),
    [anon_sym_int56] = ACTIONS(507),
    [anon_sym_int64] = ACTIONS(507),
    [anon_sym_int72] = ACTIONS(507),
    [anon_sym_int80] = ACTIONS(507),
    [anon_sym_int88] = ACTIONS(507),
    [anon_sym_int96] = ACTIONS(507),
    [anon_sym_int104] = ACTIONS(507),
    [anon_sym_int112] = ACTIONS(507),
    [anon_sym_int120] = ACTIONS(507),
    [anon_sym_int128] = ACTIONS(507),
    [anon_sym_int136] = ACTIONS(507),
    [anon_sym_int144] = ACTIONS(507),
    [anon_sym_int152] = ACTIONS(507),
    [anon_sym_int160] = ACTIONS(507),
    [anon_sym_int168] = ACTIONS(507),
    [anon_sym_int176] = ACTIONS(507),
    [anon_sym_int184] = ACTIONS(507),
    [anon_sym_int192] = ACTIONS(507),
    [anon_sym_int200] = ACTIONS(507),
    [anon_sym_int208] = ACTIONS(507),
    [anon_sym_int216] = ACTIONS(507),
    [anon_sym_int224] = ACTIONS(507),
    [anon_sym_int232] = ACTIONS(507),
    [anon_sym_int240] = ACTIONS(507),
    [anon_sym_int248] = ACTIONS(507),
    [anon_sym_int256] = ACTIONS(507),
    [anon_sym_uint] = ACTIONS(507),
    [anon_sym_uint8] = ACTIONS(507),
    [anon_sym_uint16] = ACTIONS(507),
    [anon_sym_uint24] = ACTIONS(507),
    [anon_sym_uint32] = ACTIONS(507),
    [anon_sym_uint40] = ACTIONS(507),
    [anon_sym_uint48] = ACTIONS(507),
    [anon_sym_uint56] = ACTIONS(507),
    [anon_sym_uint64] = ACTIONS(507),
    [anon_sym_uint72] = ACTIONS(507),
    [anon_sym_uint80] = ACTIONS(507),
    [anon_sym_uint88] = ACTIONS(507),
    [anon_sym_uint96] = ACTIONS(507),
    [anon_sym_uint104] = ACTIONS(507),
    [anon_sym_uint112] = ACTIONS(507),
    [anon_sym_uint120] = ACTIONS(507),
    [anon_sym_uint128] = ACTIONS(507),
    [anon_sym_uint136] = ACTIONS(507),
    [anon_sym_uint144] = ACTIONS(507),
    [anon_sym_uint152] = ACTIONS(507),
    [anon_sym_uint160] = ACTIONS(507),
    [anon_sym_uint168] = ACTIONS(507),
    [anon_sym_uint176] = ACTIONS(507),
    [anon_sym_uint184] = ACTIONS(507),
    [anon_sym_uint192] = ACTIONS(507),
    [anon_sym_uint200] = ACTIONS(507),
    [anon_sym_uint208] = ACTIONS(507),
    [anon_sym_uint216] = ACTIONS(507),
    [anon_sym_uint224] = ACTIONS(507),
    [anon_sym_uint232] = ACTIONS(507),
    [anon_sym_uint240] = ACTIONS(507),
    [anon_sym_uint248] = ACTIONS(507),
    [anon_sym_uint256] = ACTIONS(507),
    [anon_sym_bytes] = ACTIONS(507),
    [anon_sym_bytes1] = ACTIONS(507),
    [anon_sym_bytes2] = ACTIONS(507),
    [anon_sym_bytes3] = ACTIONS(507),
    [anon_sym_bytes4] = ACTIONS(507),
    [anon_sym_bytes5] = ACTIONS(507),
    [anon_sym_bytes6] = ACTIONS(507),
    [anon_sym_bytes7] = ACTIONS(507),
    [anon_sym_bytes8] = ACTIONS(507),
    [anon_sym_bytes9] = ACTIONS(507),
    [anon_sym_bytes10] = ACTIONS(507),
    [anon_sym_bytes11] = ACTIONS(507),
    [anon_sym_bytes12] = ACTIONS(507),
    [anon_sym_bytes13] = ACTIONS(507),
    [anon_sym_bytes14] = ACTIONS(507),
    [anon_sym_bytes15] = ACTIONS(507),
    [anon_sym_bytes16] = ACTIONS(507),
    [anon_sym_bytes17] = ACTIONS(507),
    [anon_sym_bytes18] = ACTIONS(507),
    [anon_sym_bytes19] = ACTIONS(507),
    [anon_sym_bytes20] = ACTIONS(507),
    [anon_sym_bytes21] = ACTIONS(507),
    [anon_sym_bytes22] = ACTIONS(507),
    [anon_sym_bytes23] = ACTIONS(507),
    [anon_sym_bytes24] = ACTIONS(507),
    [anon_sym_bytes25] = ACTIONS(507),
    [anon_sym_bytes26] = ACTIONS(507),
    [anon_sym_bytes27] = ACTIONS(507),
    [anon_sym_bytes28] = ACTIONS(507),
    [anon_sym_bytes29] = ACTIONS(507),
    [anon_sym_bytes30] = ACTIONS(507),
    [anon_sym_bytes31] = ACTIONS(507),
    [anon_sym_bytes32] = ACTIONS(507),
    [anon_sym_fixed] = ACTIONS(507),
    [aux_sym__fixed_token1] = ACTIONS(507),
    [anon_sym_ufixed] = ACTIONS(507),
    [aux_sym__ufixed_token1] = ACTIONS(507),
    [aux_sym__decimal_number_token1] = ACTIONS(507),
    [aux_sym__decimal_number_token2] = ACTIONS(509),
    [aux_sym__hex_number_token1] = ACTIONS(509),
    [anon_sym_unicode] = ACTIONS(507),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(110)] = {
    [sym_identifier] = ACTIONS(511),
    [anon_sym_DASH] = ACTIONS(511),
    [anon_sym_TILDE] = ACTIONS(513),
    [anon_sym_LBRACE] = ACTIONS(513),
    [anon_sym_RBRACE] = ACTIONS(513),
    [anon_sym_type] = ACTIONS(511),
    [anon_sym_LPAREN] = ACTIONS(513),
    [anon_sym_for] = ACTIONS(511),
    [anon_sym_assembly] = ACTIONS(511),
    [anon_sym_break] = ACTIONS(511),
    [anon_sym_continue] = ACTIONS(511),
    [anon_sym_true] = ACTIONS(511),
    [anon_sym_false] = ACTIONS(511),
    [anon_sym_hex] = ACTIONS(511),
    [anon_sym_DQUOTE] = ACTIONS(513),
    [anon_sym_SQUOTE] = ACTIONS(513),
    [anon_sym_if] = ACTIONS(511),
    [anon_sym_function] = ACTIONS(511),
    [anon_sym_byte] = ACTIONS(511),
    [anon_sym_address] = ACTIONS(511),
    [anon_sym_return] = ACTIONS(511),
    [anon_sym_revert] = ACTIONS(511),
    [sym_unchecked] = ACTIONS(511),
    [anon_sym_var] = ACTIONS(511),
    [anon_sym_else] = ACTIONS(511),
    [anon_sym_while] = ACTIONS(511),
    [anon_sym_do] = ACTIONS(511),
    [anon_sym_try] = ACTIONS(511),
    [anon_sym_emit] = ACTIONS(511),
    [anon_sym_payable] = ACTIONS(511),
    [anon_sym_new] = ACTIONS(511),
    [anon_sym_LBRACK] = ACTIONS(513),
    [anon_sym_delete] = ACTIONS(511),
    [anon_sym_BANG] = ACTIONS(513),
    [anon_sym_PLUS_PLUS] = ACTIONS(513),
    [anon_sym_DASH_DASH] = ACTIONS(513),
    [anon_sym_mapping] = ACTIONS(511),
    [anon_sym_bool] = ACTIONS(511),
    [anon_sym_string] = ACTIONS(511),
    [anon_sym_int] = ACTIONS(511),
    [anon_sym_int8] = ACTIONS(511),
    [anon_sym_int16] = ACTIONS(511),
    [anon_sym_int24] = ACTIONS(511),
    [anon_sym_int32] = ACTIONS(511),
    [anon_sym_int40] = ACTIONS(511),
    [anon_sym_int48] = ACTIONS(511),
    [anon_sym_int56] = ACTIONS(511),
    [anon_sym_int64] = ACTIONS(511),
    [anon_sym_int72] = ACTIONS(511),
    [anon_sym_int80] = ACTIONS(511),
    [anon_sym_int88] = ACTIONS(511),
    [anon_sym_int96] = ACTIONS(511),
    [anon_sym_int104] = ACTIONS(511),
    [anon_sym_int112] = ACTIONS(511),
    [anon_sym_int120] = ACTIONS(511),
    [anon_sym_int128] = ACTIONS(511),
    [anon_sym_int136] = ACTIONS(511),
    [anon_sym_int144] = ACTIONS(511),
    [anon_sym_int152] = ACTIONS(511),
    [anon_sym_int160] = ACTIONS(511),
    [anon_sym_int168] = ACTIONS(511),
    [anon_sym_int176] = ACTIONS(511),
    [anon_sym_int184] = ACTIONS(511),
    [anon_sym_int192] = ACTIONS(511),
    [anon_sym_int200] = ACTIONS(511),
    [anon_sym_int208] = ACTIONS(511),
    [anon_sym_int216] = ACTIONS(511),
    [anon_sym_int224] = ACTIONS(511),
    [anon_sym_int232] = ACTIONS(511),
    [anon_sym_int240] = ACTIONS(511),
    [anon_sym_int248] = ACTIONS(511),
    [anon_sym_int256] = ACTIONS(511),
    [anon_sym_uint] = ACTIONS(511),
    [anon_sym_uint8] = ACTIONS(511),
    [anon_sym_uint16] = ACTIONS(511),
    [anon_sym_uint24] = ACTIONS(511),
    [anon_sym_uint32] = ACTIONS(511),
    [anon_sym_uint40] = ACTIONS(511),
    [anon_sym_uint48] = ACTIONS(511),
    [anon_sym_uint56] = ACTIONS(511),
    [anon_sym_uint64] = ACTIONS(511),
    [anon_sym_uint72] = ACTIONS(511),
    [anon_sym_uint80] = ACTIONS(511),
    [anon_sym_uint88] = ACTIONS(511),
    [anon_sym_uint96] = ACTIONS(511),
    [anon_sym_uint104] = ACTIONS(511),
    [anon_sym_uint112] = ACTIONS(511),
    [anon_sym_uint120] = ACTIONS(511),
    [anon_sym_uint128] = ACTIONS(511),
    [anon_sym_uint136] = ACTIONS(511),
    [anon_sym_uint144] = ACTIONS(511),
    [anon_sym_uint152] = ACTIONS(511),
    [anon_sym_uint160] = ACTIONS(511),
    [anon_sym_uint168] = ACTIONS(511),
    [anon_sym_uint176] = ACTIONS(511),
    [anon_sym_uint184] = ACTIONS(511),
    [anon_sym_uint192] = ACTIONS(511),
    [anon_sym_uint200] = ACTIONS(511),
    [anon_sym_uint208] = ACTIONS(511),
    [anon_sym_uint216] = ACTIONS(511),
    [anon_sym_uint224] = ACTIONS(511),
    [anon_sym_uint232] = ACTIONS(511),
    [anon_sym_uint240] = ACTIONS(511),
    [anon_sym_uint248] = ACTIONS(511),
    [anon_sym_uint256] = ACTIONS(511),
    [anon_sym_bytes] = ACTIONS(511),
    [anon_sym_bytes1] = ACTIONS(511),
    [anon_sym_bytes2] = ACTIONS(511),
    [anon_sym_bytes3] = ACTIONS(511),
    [anon_sym_bytes4] = ACTIONS(511),
    [anon_sym_bytes5] = ACTIONS(511),
    [anon_sym_bytes6] = ACTIONS(511),
    [anon_sym_bytes7] = ACTIONS(511),
    [anon_sym_bytes8] = ACTIONS(511),
    [anon_sym_bytes9] = ACTIONS(511),
    [anon_sym_bytes10] = ACTIONS(511),
    [anon_sym_bytes11] = ACTIONS(511),
    [anon_sym_bytes12] = ACTIONS(511),
    [anon_sym_bytes13] = ACTIONS(511),
    [anon_sym_bytes14] = ACTIONS(511),
    [anon_sym_bytes15] = ACTIONS(511),
    [anon_sym_bytes16] = ACTIONS(511),
    [anon_sym_bytes17] = ACTIONS(511),
    [anon_sym_bytes18] = ACTIONS(511),
    [anon_sym_bytes19] = ACTIONS(511),
    [anon_sym_bytes20] = ACTIONS(511),
    [anon_sym_bytes21] = ACTIONS(511),
    [anon_sym_bytes22] = ACTIONS(511),
    [anon_sym_bytes23] = ACTIONS(511),
    [anon_sym_bytes24] = ACTIONS(511),
    [anon_sym_bytes25] = ACTIONS(511),
    [anon_sym_bytes26] = ACTIONS(511),
    [anon_sym_bytes27] = ACTIONS(511),
    [anon_sym_bytes28] = ACTIONS(511),
    [anon_sym_bytes29] = ACTIONS(511),
    [anon_sym_bytes30] = ACTIONS(511),
    [anon_sym_bytes31] = ACTIONS(511),
    [anon_sym_bytes32] = ACTIONS(511),
    [anon_sym_fixed] = ACTIONS(511),
    [aux_sym__fixed_token1] = ACTIONS(511),
    [anon_sym_ufixed] = ACTIONS(511),
    [aux_sym__ufixed_token1] = ACTIONS(511),
    [aux_sym__decimal_number_token1] = ACTIONS(511),
    [aux_sym__decimal_number_token2] = ACTIONS(513),
    [aux_sym__hex_number_token1] = ACTIONS(513),
    [anon_sym_unicode] = ACTIONS(511),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(111)] = {
    [sym_identifier] = ACTIONS(515),
    [anon_sym_DASH] = ACTIONS(515),
    [anon_sym_TILDE] = ACTIONS(517),
    [anon_sym_LBRACE] = ACTIONS(517),
    [anon_sym_RBRACE] = ACTIONS(517),
    [anon_sym_type] = ACTIONS(515),
    [anon_sym_LPAREN] = ACTIONS(517),
    [anon_sym_for] = ACTIONS(515),
    [anon_sym_assembly] = ACTIONS(515),
    [anon_sym_break] = ACTIONS(515),
    [anon_sym_continue] = ACTIONS(515),
    [anon_sym_true] = ACTIONS(515),
    [anon_sym_false] = ACTIONS(515),
    [anon_sym_hex] = ACTIONS(515),
    [anon_sym_DQUOTE] = ACTIONS(517),
    [anon_sym_SQUOTE] = ACTIONS(517),
    [anon_sym_if] = ACTIONS(515),
    [anon_sym_function] = ACTIONS(515),
    [anon_sym_byte] = ACTIONS(515),
    [anon_sym_address] = ACTIONS(515),
    [anon_sym_return] = ACTIONS(515),
    [anon_sym_revert] = ACTIONS(515),
    [sym_unchecked] = ACTIONS(515),
    [anon_sym_var] = ACTIONS(515),
    [anon_sym_else] = ACTIONS(519),
    [anon_sym_while] = ACTIONS(515),
    [anon_sym_do] = ACTIONS(515),
    [anon_sym_try] = ACTIONS(515),
    [anon_sym_emit] = ACTIONS(515),
    [anon_sym_payable] = ACTIONS(515),
    [anon_sym_new] = ACTIONS(515),
    [anon_sym_LBRACK] = ACTIONS(517),
    [anon_sym_delete] = ACTIONS(515),
    [anon_sym_BANG] = ACTIONS(517),
    [anon_sym_PLUS_PLUS] = ACTIONS(517),
    [anon_sym_DASH_DASH] = ACTIONS(517),
    [anon_sym_mapping] = ACTIONS(515),
    [anon_sym_bool] = ACTIONS(515),
    [anon_sym_string] = ACTIONS(515),
    [anon_sym_int] = ACTIONS(515),
    [anon_sym_int8] = ACTIONS(515),
    [anon_sym_int16] = ACTIONS(515),
    [anon_sym_int24] = ACTIONS(515),
    [anon_sym_int32] = ACTIONS(515),
    [anon_sym_int40] = ACTIONS(515),
    [anon_sym_int48] = ACTIONS(515),
    [anon_sym_int56] = ACTIONS(515),
    [anon_sym_int64] = ACTIONS(515),
    [anon_sym_int72] = ACTIONS(515),
    [anon_sym_int80] = ACTIONS(515),
    [anon_sym_int88] = ACTIONS(515),
    [anon_sym_int96] = ACTIONS(515),
    [anon_sym_int104] = ACTIONS(515),
    [anon_sym_int112] = ACTIONS(515),
    [anon_sym_int120] = ACTIONS(515),
    [anon_sym_int128] = ACTIONS(515),
    [anon_sym_int136] = ACTIONS(515),
    [anon_sym_int144] = ACTIONS(515),
    [anon_sym_int152] = ACTIONS(515),
    [anon_sym_int160] = ACTIONS(515),
    [anon_sym_int168] = ACTIONS(515),
    [anon_sym_int176] = ACTIONS(515),
    [anon_sym_int184] = ACTIONS(515),
    [anon_sym_int192] = ACTIONS(515),
    [anon_sym_int200] = ACTIONS(515),
    [anon_sym_int208] = ACTIONS(515),
    [anon_sym_int216] = ACTIONS(515),
    [anon_sym_int224] = ACTIONS(515),
    [anon_sym_int232] = ACTIONS(515),
    [anon_sym_int240] = ACTIONS(515),
    [anon_sym_int248] = ACTIONS(515),
    [anon_sym_int256] = ACTIONS(515),
    [anon_sym_uint] = ACTIONS(515),
    [anon_sym_uint8] = ACTIONS(515),
    [anon_sym_uint16] = ACTIONS(515),
    [anon_sym_uint24] = ACTIONS(515),
    [anon_sym_uint32] = ACTIONS(515),
    [anon_sym_uint40] = ACTIONS(515),
    [anon_sym_uint48] = ACTIONS(515),
    [anon_sym_uint56] = ACTIONS(515),
    [anon_sym_uint64] = ACTIONS(515),
    [anon_sym_uint72] = ACTIONS(515),
    [anon_sym_uint80] = ACTIONS(515),
    [anon_sym_uint88] = ACTIONS(515),
    [anon_sym_uint96] = ACTIONS(515),
    [anon_sym_uint104] = ACTIONS(515),
    [anon_sym_uint112] = ACTIONS(515),
    [anon_sym_uint120] = ACTIONS(515),
    [anon_sym_uint128] = ACTIONS(515),
    [anon_sym_uint136] = ACTIONS(515),
    [anon_sym_uint144] = ACTIONS(515),
    [anon_sym_uint152] = ACTIONS(515),
    [anon_sym_uint160] = ACTIONS(515),
    [anon_sym_uint168] = ACTIONS(515),
    [anon_sym_uint176] = ACTIONS(515),
    [anon_sym_uint184] = ACTIONS(515),
    [anon_sym_uint192] = ACTIONS(515),
    [anon_sym_uint200] = ACTIONS(515),
    [anon_sym_uint208] = ACTIONS(515),
    [anon_sym_uint216] = ACTIONS(515),
    [anon_sym_uint224] = ACTIONS(515),
    [anon_sym_uint232] = ACTIONS(515),
    [anon_sym_uint240] = ACTIONS(515),
    [anon_sym_uint248] = ACTIONS(515),
    [anon_sym_uint256] = ACTIONS(515),
    [anon_sym_bytes] = ACTIONS(515),
    [anon_sym_bytes1] = ACTIONS(515),
    [anon_sym_bytes2] = ACTIONS(515),
    [anon_sym_bytes3] = ACTIONS(515),
    [anon_sym_bytes4] = ACTIONS(515),
    [anon_sym_bytes5] = ACTIONS(515),
    [anon_sym_bytes6] = ACTIONS(515),
    [anon_sym_bytes7] = ACTIONS(515),
    [anon_sym_bytes8] = ACTIONS(515),
    [anon_sym_bytes9] = ACTIONS(515),
    [anon_sym_bytes10] = ACTIONS(515),
    [anon_sym_bytes11] = ACTIONS(515),
    [anon_sym_bytes12] = ACTIONS(515),
    [anon_sym_bytes13] = ACTIONS(515),
    [anon_sym_bytes14] = ACTIONS(515),
    [anon_sym_bytes15] = ACTIONS(515),
    [anon_sym_bytes16] = ACTIONS(515),
    [anon_sym_bytes17] = ACTIONS(515),
    [anon_sym_bytes18] = ACTIONS(515),
    [anon_sym_bytes19] = ACTIONS(515),
    [anon_sym_bytes20] = ACTIONS(515),
    [anon_sym_bytes21] = ACTIONS(515),
    [anon_sym_bytes22] = ACTIONS(515),
    [anon_sym_bytes23] = ACTIONS(515),
    [anon_sym_bytes24] = ACTIONS(515),
    [anon_sym_bytes25] = ACTIONS(515),
    [anon_sym_bytes26] = ACTIONS(515),
    [anon_sym_bytes27] = ACTIONS(515),
    [anon_sym_bytes28] = ACTIONS(515),
    [anon_sym_bytes29] = ACTIONS(515),
    [anon_sym_bytes30] = ACTIONS(515),
    [anon_sym_bytes31] = ACTIONS(515),
    [anon_sym_bytes32] = ACTIONS(515),
    [anon_sym_fixed] = ACTIONS(515),
    [aux_sym__fixed_token1] = ACTIONS(515),
    [anon_sym_ufixed] = ACTIONS(515),
    [aux_sym__ufixed_token1] = ACTIONS(515),
    [aux_sym__decimal_number_token1] = ACTIONS(515),
    [aux_sym__decimal_number_token2] = ACTIONS(517),
    [aux_sym__hex_number_token1] = ACTIONS(517),
    [anon_sym_unicode] = ACTIONS(515),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(112)] = {
    [sym_identifier] = ACTIONS(521),
    [anon_sym_DASH] = ACTIONS(521),
    [anon_sym_TILDE] = ACTIONS(523),
    [anon_sym_LBRACE] = ACTIONS(523),
    [anon_sym_RBRACE] = ACTIONS(523),
    [anon_sym_type] = ACTIONS(521),
    [anon_sym_LPAREN] = ACTIONS(523),
    [anon_sym_for] = ACTIONS(521),
    [anon_sym_assembly] = ACTIONS(521),
    [anon_sym_break] = ACTIONS(521),
    [anon_sym_continue] = ACTIONS(521),
    [anon_sym_true] = ACTIONS(521),
    [anon_sym_false] = ACTIONS(521),
    [anon_sym_hex] = ACTIONS(521),
    [anon_sym_DQUOTE] = ACTIONS(523),
    [anon_sym_SQUOTE] = ACTIONS(523),
    [anon_sym_if] = ACTIONS(521),
    [anon_sym_function] = ACTIONS(521),
    [anon_sym_byte] = ACTIONS(521),
    [anon_sym_address] = ACTIONS(521),
    [anon_sym_return] = ACTIONS(521),
    [anon_sym_revert] = ACTIONS(521),
    [sym_unchecked] = ACTIONS(521),
    [anon_sym_var] = ACTIONS(521),
    [anon_sym_else] = ACTIONS(521),
    [anon_sym_while] = ACTIONS(521),
    [anon_sym_do] = ACTIONS(521),
    [anon_sym_try] = ACTIONS(521),
    [anon_sym_emit] = ACTIONS(521),
    [anon_sym_payable] = ACTIONS(521),
    [anon_sym_new] = ACTIONS(521),
    [anon_sym_LBRACK] = ACTIONS(523),
    [anon_sym_delete] = ACTIONS(521),
    [anon_sym_BANG] = ACTIONS(523),
    [anon_sym_PLUS_PLUS] = ACTIONS(523),
    [anon_sym_DASH_DASH] = ACTIONS(523),
    [anon_sym_mapping] = ACTIONS(521),
    [anon_sym_bool] = ACTIONS(521),
    [anon_sym_string] = ACTIONS(521),
    [anon_sym_int] = ACTIONS(521),
    [anon_sym_int8] = ACTIONS(521),
    [anon_sym_int16] = ACTIONS(521),
    [anon_sym_int24] = ACTIONS(521),
    [anon_sym_int32] = ACTIONS(521),
    [anon_sym_int40] = ACTIONS(521),
    [anon_sym_int48] = ACTIONS(521),
    [anon_sym_int56] = ACTIONS(521),
    [anon_sym_int64] = ACTIONS(521),
    [anon_sym_int72] = ACTIONS(521),
    [anon_sym_int80] = ACTIONS(521),
    [anon_sym_int88] = ACTIONS(521),
    [anon_sym_int96] = ACTIONS(521),
    [anon_sym_int104] = ACTIONS(521),
    [anon_sym_int112] = ACTIONS(521),
    [anon_sym_int120] = ACTIONS(521),
    [anon_sym_int128] = ACTIONS(521),
    [anon_sym_int136] = ACTIONS(521),
    [anon_sym_int144] = ACTIONS(521),
    [anon_sym_int152] = ACTIONS(521),
    [anon_sym_int160] = ACTIONS(521),
    [anon_sym_int168] = ACTIONS(521),
    [anon_sym_int176] = ACTIONS(521),
    [anon_sym_int184] = ACTIONS(521),
    [anon_sym_int192] = ACTIONS(521),
    [anon_sym_int200] = ACTIONS(521),
    [anon_sym_int208] = ACTIONS(521),
    [anon_sym_int216] = ACTIONS(521),
    [anon_sym_int224] = ACTIONS(521),
    [anon_sym_int232] = ACTIONS(521),
    [anon_sym_int240] = ACTIONS(521),
    [anon_sym_int248] = ACTIONS(521),
    [anon_sym_int256] = ACTIONS(521),
    [anon_sym_uint] = ACTIONS(521),
    [anon_sym_uint8] = ACTIONS(521),
    [anon_sym_uint16] = ACTIONS(521),
    [anon_sym_uint24] = ACTIONS(521),
    [anon_sym_uint32] = ACTIONS(521),
    [anon_sym_uint40] = ACTIONS(521),
    [anon_sym_uint48] = ACTIONS(521),
    [anon_sym_uint56] = ACTIONS(521),
    [anon_sym_uint64] = ACTIONS(521),
    [anon_sym_uint72] = ACTIONS(521),
    [anon_sym_uint80] = ACTIONS(521),
    [anon_sym_uint88] = ACTIONS(521),
    [anon_sym_uint96] = ACTIONS(521),
    [anon_sym_uint104] = ACTIONS(521),
    [anon_sym_uint112] = ACTIONS(521),
    [anon_sym_uint120] = ACTIONS(521),
    [anon_sym_uint128] = ACTIONS(521),
    [anon_sym_uint136] = ACTIONS(521),
    [anon_sym_uint144] = ACTIONS(521),
    [anon_sym_uint152] = ACTIONS(521),
    [anon_sym_uint160] = ACTIONS(521),
    [anon_sym_uint168] = ACTIONS(521),
    [anon_sym_uint176] = ACTIONS(521),
    [anon_sym_uint184] = ACTIONS(521),
    [anon_sym_uint192] = ACTIONS(521),
    [anon_sym_uint200] = ACTIONS(521),
    [anon_sym_uint208] = ACTIONS(521),
    [anon_sym_uint216] = ACTIONS(521),
    [anon_sym_uint224] = ACTIONS(521),
    [anon_sym_uint232] = ACTIONS(521),
    [anon_sym_uint240] = ACTIONS(521),
    [anon_sym_uint248] = ACTIONS(521),
    [anon_sym_uint256] = ACTIONS(521),
    [anon_sym_bytes] = ACTIONS(521),
    [anon_sym_bytes1] = ACTIONS(521),
    [anon_sym_bytes2] = ACTIONS(521),
    [anon_sym_bytes3] = ACTIONS(521),
    [anon_sym_bytes4] = ACTIONS(521),
    [anon_sym_bytes5] = ACTIONS(521),
    [anon_sym_bytes6] = ACTIONS(521),
    [anon_sym_bytes7] = ACTIONS(521),
    [anon_sym_bytes8] = ACTIONS(521),
    [anon_sym_bytes9] = ACTIONS(521),
    [anon_sym_bytes10] = ACTIONS(521),
    [anon_sym_bytes11] = ACTIONS(521),
    [anon_sym_bytes12] = ACTIONS(521),
    [anon_sym_bytes13] = ACTIONS(521),
    [anon_sym_bytes14] = ACTIONS(521),
    [anon_sym_bytes15] = ACTIONS(521),
    [anon_sym_bytes16] = ACTIONS(521),
    [anon_sym_bytes17] = ACTIONS(521),
    [anon_sym_bytes18] = ACTIONS(521),
    [anon_sym_bytes19] = ACTIONS(521),
    [anon_sym_bytes20] = ACTIONS(521),
    [anon_sym_bytes21] = ACTIONS(521),
    [anon_sym_bytes22] = ACTIONS(521),
    [anon_sym_bytes23] = ACTIONS(521),
    [anon_sym_bytes24] = ACTIONS(521),
    [anon_sym_bytes25] = ACTIONS(521),
    [anon_sym_bytes26] = ACTIONS(521),
    [anon_sym_bytes27] = ACTIONS(521),
    [anon_sym_bytes28] = ACTIONS(521),
    [anon_sym_bytes29] = ACTIONS(521),
    [anon_sym_bytes30] = ACTIONS(521),
    [anon_sym_bytes31] = ACTIONS(521),
    [anon_sym_bytes32] = ACTIONS(521),
    [anon_sym_fixed] = ACTIONS(521),
    [aux_sym__fixed_token1] = ACTIONS(521),
    [anon_sym_ufixed] = ACTIONS(521),
    [aux_sym__ufixed_token1] = ACTIONS(521),
    [aux_sym__decimal_number_token1] = ACTIONS(521),
    [aux_sym__decimal_number_token2] = ACTIONS(523),
    [aux_sym__hex_number_token1] = ACTIONS(523),
    [anon_sym_unicode] = ACTIONS(521),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(113)] = {
    [sym_identifier] = ACTIONS(525),
    [anon_sym_DASH] = ACTIONS(525),
    [anon_sym_TILDE] = ACTIONS(527),
    [anon_sym_LBRACE] = ACTIONS(527),
    [anon_sym_RBRACE] = ACTIONS(527),
    [anon_sym_type] = ACTIONS(525),
    [anon_sym_LPAREN] = ACTIONS(527),
    [anon_sym_for] = ACTIONS(525),
    [anon_sym_assembly] = ACTIONS(525),
    [anon_sym_break] = ACTIONS(525),
    [anon_sym_continue] = ACTIONS(525),
    [anon_sym_true] = ACTIONS(525),
    [anon_sym_false] = ACTIONS(525),
    [anon_sym_hex] = ACTIONS(525),
    [anon_sym_DQUOTE] = ACTIONS(527),
    [anon_sym_SQUOTE] = ACTIONS(527),
    [anon_sym_if] = ACTIONS(525),
    [anon_sym_function] = ACTIONS(525),
    [anon_sym_byte] = ACTIONS(525),
    [anon_sym_address] = ACTIONS(525),
    [anon_sym_return] = ACTIONS(525),
    [anon_sym_revert] = ACTIONS(525),
    [sym_unchecked] = ACTIONS(525),
    [anon_sym_var] = ACTIONS(525),
    [anon_sym_else] = ACTIONS(525),
    [anon_sym_while] = ACTIONS(525),
    [anon_sym_do] = ACTIONS(525),
    [anon_sym_try] = ACTIONS(525),
    [anon_sym_emit] = ACTIONS(525),
    [anon_sym_payable] = ACTIONS(525),
    [anon_sym_new] = ACTIONS(525),
    [anon_sym_LBRACK] = ACTIONS(527),
    [anon_sym_delete] = ACTIONS(525),
    [anon_sym_BANG] = ACTIONS(527),
    [anon_sym_PLUS_PLUS] = ACTIONS(527),
    [anon_sym_DASH_DASH] = ACTIONS(527),
    [anon_sym_mapping] = ACTIONS(525),
    [anon_sym_bool] = ACTIONS(525),
    [anon_sym_string] = ACTIONS(525),
    [anon_sym_int] = ACTIONS(525),
    [anon_sym_int8] = ACTIONS(525),
    [anon_sym_int16] = ACTIONS(525),
    [anon_sym_int24] = ACTIONS(525),
    [anon_sym_int32] = ACTIONS(525),
    [anon_sym_int40] = ACTIONS(525),
    [anon_sym_int48] = ACTIONS(525),
    [anon_sym_int56] = ACTIONS(525),
    [anon_sym_int64] = ACTIONS(525),
    [anon_sym_int72] = ACTIONS(525),
    [anon_sym_int80] = ACTIONS(525),
    [anon_sym_int88] = ACTIONS(525),
    [anon_sym_int96] = ACTIONS(525),
    [anon_sym_int104] = ACTIONS(525),
    [anon_sym_int112] = ACTIONS(525),
    [anon_sym_int120] = ACTIONS(525),
    [anon_sym_int128] = ACTIONS(525),
    [anon_sym_int136] = ACTIONS(525),
    [anon_sym_int144] = ACTIONS(525),
    [anon_sym_int152] = ACTIONS(525),
    [anon_sym_int160] = ACTIONS(525),
    [anon_sym_int168] = ACTIONS(525),
    [anon_sym_int176] = ACTIONS(525),
    [anon_sym_int184] = ACTIONS(525),
    [anon_sym_int192] = ACTIONS(525),
    [anon_sym_int200] = ACTIONS(525),
    [anon_sym_int208] = ACTIONS(525),
    [anon_sym_int216] = ACTIONS(525),
    [anon_sym_int224] = ACTIONS(525),
    [anon_sym_int232] = ACTIONS(525),
    [anon_sym_int240] = ACTIONS(525),
    [anon_sym_int248] = ACTIONS(525),
    [anon_sym_int256] = ACTIONS(525),
    [anon_sym_uint] = ACTIONS(525),
    [anon_sym_uint8] = ACTIONS(525),
    [anon_sym_uint16] = ACTIONS(525),
    [anon_sym_uint24] = ACTIONS(525),
    [anon_sym_uint32] = ACTIONS(525),
    [anon_sym_uint40] = ACTIONS(525),
    [anon_sym_uint48] = ACTIONS(525),
    [anon_sym_uint56] = ACTIONS(525),
    [anon_sym_uint64] = ACTIONS(525),
    [anon_sym_uint72] = ACTIONS(525),
    [anon_sym_uint80] = ACTIONS(525),
    [anon_sym_uint88] = ACTIONS(525),
    [anon_sym_uint96] = ACTIONS(525),
    [anon_sym_uint104] = ACTIONS(525),
    [anon_sym_uint112] = ACTIONS(525),
    [anon_sym_uint120] = ACTIONS(525),
    [anon_sym_uint128] = ACTIONS(525),
    [anon_sym_uint136] = ACTIONS(525),
    [anon_sym_uint144] = ACTIONS(525),
    [anon_sym_uint152] = ACTIONS(525),
    [anon_sym_uint160] = ACTIONS(525),
    [anon_sym_uint168] = ACTIONS(525),
    [anon_sym_uint176] = ACTIONS(525),
    [anon_sym_uint184] = ACTIONS(525),
    [anon_sym_uint192] = ACTIONS(525),
    [anon_sym_uint200] = ACTIONS(525),
    [anon_sym_uint208] = ACTIONS(525),
    [anon_sym_uint216] = ACTIONS(525),
    [anon_sym_uint224] = ACTIONS(525),
    [anon_sym_uint232] = ACTIONS(525),
    [anon_sym_uint240] = ACTIONS(525),
    [anon_sym_uint248] = ACTIONS(525),
    [anon_sym_uint256] = ACTIONS(525),
    [anon_sym_bytes] = ACTIONS(525),
    [anon_sym_bytes1] = ACTIONS(525),
    [anon_sym_bytes2] = ACTIONS(525),
    [anon_sym_bytes3] = ACTIONS(525),
    [anon_sym_bytes4] = ACTIONS(525),
    [anon_sym_bytes5] = ACTIONS(525),
    [anon_sym_bytes6] = ACTIONS(525),
    [anon_sym_bytes7] = ACTIONS(525),
    [anon_sym_bytes8] = ACTIONS(525),
    [anon_sym_bytes9] = ACTIONS(525),
    [anon_sym_bytes10] = ACTIONS(525),
    [anon_sym_bytes11] = ACTIONS(525),
    [anon_sym_bytes12] = ACTIONS(525),
    [anon_sym_bytes13] = ACTIONS(525),
    [anon_sym_bytes14] = ACTIONS(525),
    [anon_sym_bytes15] = ACTIONS(525),
    [anon_sym_bytes16] = ACTIONS(525),
    [anon_sym_bytes17] = ACTIONS(525),
    [anon_sym_bytes18] = ACTIONS(525),
    [anon_sym_bytes19] = ACTIONS(525),
    [anon_sym_bytes20] = ACTIONS(525),
    [anon_sym_bytes21] = ACTIONS(525),
    [anon_sym_bytes22] = ACTIONS(525),
    [anon_sym_bytes23] = ACTIONS(525),
    [anon_sym_bytes24] = ACTIONS(525),
    [anon_sym_bytes25] = ACTIONS(525),
    [anon_sym_bytes26] = ACTIONS(525),
    [anon_sym_bytes27] = ACTIONS(525),
    [anon_sym_bytes28] = ACTIONS(525),
    [anon_sym_bytes29] = ACTIONS(525),
    [anon_sym_bytes30] = ACTIONS(525),
    [anon_sym_bytes31] = ACTIONS(525),
    [anon_sym_bytes32] = ACTIONS(525),
    [anon_sym_fixed] = ACTIONS(525),
    [aux_sym__fixed_token1] = ACTIONS(525),
    [anon_sym_ufixed] = ACTIONS(525),
    [aux_sym__ufixed_token1] = ACTIONS(525),
    [aux_sym__decimal_number_token1] = ACTIONS(525),
    [aux_sym__decimal_number_token2] = ACTIONS(527),
    [aux_sym__hex_number_token1] = ACTIONS(527),
    [anon_sym_unicode] = ACTIONS(525),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(114)] = {
    [sym_identifier] = ACTIONS(529),
    [anon_sym_DASH] = ACTIONS(529),
    [anon_sym_TILDE] = ACTIONS(531),
    [anon_sym_LBRACE] = ACTIONS(531),
    [anon_sym_RBRACE] = ACTIONS(531),
    [anon_sym_type] = ACTIONS(529),
    [anon_sym_LPAREN] = ACTIONS(531),
    [anon_sym_for] = ACTIONS(529),
    [anon_sym_assembly] = ACTIONS(529),
    [anon_sym_break] = ACTIONS(529),
    [anon_sym_continue] = ACTIONS(529),
    [anon_sym_true] = ACTIONS(529),
    [anon_sym_false] = ACTIONS(529),
    [anon_sym_hex] = ACTIONS(529),
    [anon_sym_DQUOTE] = ACTIONS(531),
    [anon_sym_SQUOTE] = ACTIONS(531),
    [anon_sym_if] = ACTIONS(529),
    [anon_sym_function] = ACTIONS(529),
    [anon_sym_byte] = ACTIONS(529),
    [anon_sym_address] = ACTIONS(529),
    [anon_sym_return] = ACTIONS(529),
    [anon_sym_revert] = ACTIONS(529),
    [sym_unchecked] = ACTIONS(529),
    [anon_sym_var] = ACTIONS(529),
    [anon_sym_else] = ACTIONS(529),
    [anon_sym_while] = ACTIONS(529),
    [anon_sym_do] = ACTIONS(529),
    [anon_sym_try] = ACTIONS(529),
    [anon_sym_emit] = ACTIONS(529),
    [anon_sym_payable] = ACTIONS(529),
    [anon_sym_new] = ACTIONS(529),
    [anon_sym_LBRACK] = ACTIONS(531),
    [anon_sym_delete] = ACTIONS(529),
    [anon_sym_BANG] = ACTIONS(531),
    [anon_sym_PLUS_PLUS] = ACTIONS(531),
    [anon_sym_DASH_DASH] = ACTIONS(531),
    [anon_sym_mapping] = ACTIONS(529),
    [anon_sym_bool] = ACTIONS(529),
    [anon_sym_string] = ACTIONS(529),
    [anon_sym_int] = ACTIONS(529),
    [anon_sym_int8] = ACTIONS(529),
    [anon_sym_int16] = ACTIONS(529),
    [anon_sym_int24] = ACTIONS(529),
    [anon_sym_int32] = ACTIONS(529),
    [anon_sym_int40] = ACTIONS(529),
    [anon_sym_int48] = ACTIONS(529),
    [anon_sym_int56] = ACTIONS(529),
    [anon_sym_int64] = ACTIONS(529),
    [anon_sym_int72] = ACTIONS(529),
    [anon_sym_int80] = ACTIONS(529),
    [anon_sym_int88] = ACTIONS(529),
    [anon_sym_int96] = ACTIONS(529),
    [anon_sym_int104] = ACTIONS(529),
    [anon_sym_int112] = ACTIONS(529),
    [anon_sym_int120] = ACTIONS(529),
    [anon_sym_int128] = ACTIONS(529),
    [anon_sym_int136] = ACTIONS(529),
    [anon_sym_int144] = ACTIONS(529),
    [anon_sym_int152] = ACTIONS(529),
    [anon_sym_int160] = ACTIONS(529),
    [anon_sym_int168] = ACTIONS(529),
    [anon_sym_int176] = ACTIONS(529),
    [anon_sym_int184] = ACTIONS(529),
    [anon_sym_int192] = ACTIONS(529),
    [anon_sym_int200] = ACTIONS(529),
    [anon_sym_int208] = ACTIONS(529),
    [anon_sym_int216] = ACTIONS(529),
    [anon_sym_int224] = ACTIONS(529),
    [anon_sym_int232] = ACTIONS(529),
    [anon_sym_int240] = ACTIONS(529),
    [anon_sym_int248] = ACTIONS(529),
    [anon_sym_int256] = ACTIONS(529),
    [anon_sym_uint] = ACTIONS(529),
    [anon_sym_uint8] = ACTIONS(529),
    [anon_sym_uint16] = ACTIONS(529),
    [anon_sym_uint24] = ACTIONS(529),
    [anon_sym_uint32] = ACTIONS(529),
    [anon_sym_uint40] = ACTIONS(529),
    [anon_sym_uint48] = ACTIONS(529),
    [anon_sym_uint56] = ACTIONS(529),
    [anon_sym_uint64] = ACTIONS(529),
    [anon_sym_uint72] = ACTIONS(529),
    [anon_sym_uint80] = ACTIONS(529),
    [anon_sym_uint88] = ACTIONS(529),
    [anon_sym_uint96] = ACTIONS(529),
    [anon_sym_uint104] = ACTIONS(529),
    [anon_sym_uint112] = ACTIONS(529),
    [anon_sym_uint120] = ACTIONS(529),
    [anon_sym_uint128] = ACTIONS(529),
    [anon_sym_uint136] = ACTIONS(529),
    [anon_sym_uint144] = ACTIONS(529),
    [anon_sym_uint152] = ACTIONS(529),
    [anon_sym_uint160] = ACTIONS(529),
    [anon_sym_uint168] = ACTIONS(529),
    [anon_sym_uint176] = ACTIONS(529),
    [anon_sym_uint184] = ACTIONS(529),
    [anon_sym_uint192] = ACTIONS(529),
    [anon_sym_uint200] = ACTIONS(529),
    [anon_sym_uint208] = ACTIONS(529),
    [anon_sym_uint216] = ACTIONS(529),
    [anon_sym_uint224] = ACTIONS(529),
    [anon_sym_uint232] = ACTIONS(529),
    [anon_sym_uint240] = ACTIONS(529),
    [anon_sym_uint248] = ACTIONS(529),
    [anon_sym_uint256] = ACTIONS(529),
    [anon_sym_bytes] = ACTIONS(529),
    [anon_sym_bytes1] = ACTIONS(529),
    [anon_sym_bytes2] = ACTIONS(529),
    [anon_sym_bytes3] = ACTIONS(529),
    [anon_sym_bytes4] = ACTIONS(529),
    [anon_sym_bytes5] = ACTIONS(529),
    [anon_sym_bytes6] = ACTIONS(529),
    [anon_sym_bytes7] = ACTIONS(529),
    [anon_sym_bytes8] = ACTIONS(529),
    [anon_sym_bytes9] = ACTIONS(529),
    [anon_sym_bytes10] = ACTIONS(529),
    [anon_sym_bytes11] = ACTIONS(529),
    [anon_sym_bytes12] = ACTIONS(529),
    [anon_sym_bytes13] = ACTIONS(529),
    [anon_sym_bytes14] = ACTIONS(529),
    [anon_sym_bytes15] = ACTIONS(529),
    [anon_sym_bytes16] = ACTIONS(529),
    [anon_sym_bytes17] = ACTIONS(529),
    [anon_sym_bytes18] = ACTIONS(529),
    [anon_sym_bytes19] = ACTIONS(529),
    [anon_sym_bytes20] = ACTIONS(529),
    [anon_sym_bytes21] = ACTIONS(529),
    [anon_sym_bytes22] = ACTIONS(529),
    [anon_sym_bytes23] = ACTIONS(529),
    [anon_sym_bytes24] = ACTIONS(529),
    [anon_sym_bytes25] = ACTIONS(529),
    [anon_sym_bytes26] = ACTIONS(529),
    [anon_sym_bytes27] = ACTIONS(529),
    [anon_sym_bytes28] = ACTIONS(529),
    [anon_sym_bytes29] = ACTIONS(529),
    [anon_sym_bytes30] = ACTIONS(529),
    [anon_sym_bytes31] = ACTIONS(529),
    [anon_sym_bytes32] = ACTIONS(529),
    [anon_sym_fixed] = ACTIONS(529),
    [aux_sym__fixed_token1] = ACTIONS(529),
    [anon_sym_ufixed] = ACTIONS(529),
    [aux_sym__ufixed_token1] = ACTIONS(529),
    [aux_sym__decimal_number_token1] = ACTIONS(529),
    [aux_sym__decimal_number_token2] = ACTIONS(531),
    [aux_sym__hex_number_token1] = ACTIONS(531),
    [anon_sym_unicode] = ACTIONS(529),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(115)] = {
    [sym_identifier] = ACTIONS(533),
    [anon_sym_DASH] = ACTIONS(533),
    [anon_sym_TILDE] = ACTIONS(535),
    [anon_sym_LBRACE] = ACTIONS(535),
    [anon_sym_RBRACE] = ACTIONS(535),
    [anon_sym_type] = ACTIONS(533),
    [anon_sym_LPAREN] = ACTIONS(535),
    [anon_sym_for] = ACTIONS(533),
    [anon_sym_assembly] = ACTIONS(533),
    [anon_sym_break] = ACTIONS(533),
    [anon_sym_continue] = ACTIONS(533),
    [anon_sym_true] = ACTIONS(533),
    [anon_sym_false] = ACTIONS(533),
    [anon_sym_hex] = ACTIONS(533),
    [anon_sym_DQUOTE] = ACTIONS(535),
    [anon_sym_SQUOTE] = ACTIONS(535),
    [anon_sym_if] = ACTIONS(533),
    [anon_sym_function] = ACTIONS(533),
    [anon_sym_byte] = ACTIONS(533),
    [anon_sym_address] = ACTIONS(533),
    [anon_sym_return] = ACTIONS(533),
    [anon_sym_revert] = ACTIONS(533),
    [sym_unchecked] = ACTIONS(533),
    [anon_sym_var] = ACTIONS(533),
    [anon_sym_else] = ACTIONS(533),
    [anon_sym_while] = ACTIONS(533),
    [anon_sym_do] = ACTIONS(533),
    [anon_sym_try] = ACTIONS(533),
    [anon_sym_emit] = ACTIONS(533),
    [anon_sym_payable] = ACTIONS(533),
    [anon_sym_new] = ACTIONS(533),
    [anon_sym_LBRACK] = ACTIONS(535),
    [anon_sym_delete] = ACTIONS(533),
    [anon_sym_BANG] = ACTIONS(535),
    [anon_sym_PLUS_PLUS] = ACTIONS(535),
    [anon_sym_DASH_DASH] = ACTIONS(535),
    [anon_sym_mapping] = ACTIONS(533),
    [anon_sym_bool] = ACTIONS(533),
    [anon_sym_string] = ACTIONS(533),
    [anon_sym_int] = ACTIONS(533),
    [anon_sym_int8] = ACTIONS(533),
    [anon_sym_int16] = ACTIONS(533),
    [anon_sym_int24] = ACTIONS(533),
    [anon_sym_int32] = ACTIONS(533),
    [anon_sym_int40] = ACTIONS(533),
    [anon_sym_int48] = ACTIONS(533),
    [anon_sym_int56] = ACTIONS(533),
    [anon_sym_int64] = ACTIONS(533),
    [anon_sym_int72] = ACTIONS(533),
    [anon_sym_int80] = ACTIONS(533),
    [anon_sym_int88] = ACTIONS(533),
    [anon_sym_int96] = ACTIONS(533),
    [anon_sym_int104] = ACTIONS(533),
    [anon_sym_int112] = ACTIONS(533),
    [anon_sym_int120] = ACTIONS(533),
    [anon_sym_int128] = ACTIONS(533),
    [anon_sym_int136] = ACTIONS(533),
    [anon_sym_int144] = ACTIONS(533),
    [anon_sym_int152] = ACTIONS(533),
    [anon_sym_int160] = ACTIONS(533),
    [anon_sym_int168] = ACTIONS(533),
    [anon_sym_int176] = ACTIONS(533),
    [anon_sym_int184] = ACTIONS(533),
    [anon_sym_int192] = ACTIONS(533),
    [anon_sym_int200] = ACTIONS(533),
    [anon_sym_int208] = ACTIONS(533),
    [anon_sym_int216] = ACTIONS(533),
    [anon_sym_int224] = ACTIONS(533),
    [anon_sym_int232] = ACTIONS(533),
    [anon_sym_int240] = ACTIONS(533),
    [anon_sym_int248] = ACTIONS(533),
    [anon_sym_int256] = ACTIONS(533),
    [anon_sym_uint] = ACTIONS(533),
    [anon_sym_uint8] = ACTIONS(533),
    [anon_sym_uint16] = ACTIONS(533),
    [anon_sym_uint24] = ACTIONS(533),
    [anon_sym_uint32] = ACTIONS(533),
    [anon_sym_uint40] = ACTIONS(533),
    [anon_sym_uint48] = ACTIONS(533),
    [anon_sym_uint56] = ACTIONS(533),
    [anon_sym_uint64] = ACTIONS(533),
    [anon_sym_uint72] = ACTIONS(533),
    [anon_sym_uint80] = ACTIONS(533),
    [anon_sym_uint88] = ACTIONS(533),
    [anon_sym_uint96] = ACTIONS(533),
    [anon_sym_uint104] = ACTIONS(533),
    [anon_sym_uint112] = ACTIONS(533),
    [anon_sym_uint120] = ACTIONS(533),
    [anon_sym_uint128] = ACTIONS(533),
    [anon_sym_uint136] = ACTIONS(533),
    [anon_sym_uint144] = ACTIONS(533),
    [anon_sym_uint152] = ACTIONS(533),
    [anon_sym_uint160] = ACTIONS(533),
    [anon_sym_uint168] = ACTIONS(533),
    [anon_sym_uint176] = ACTIONS(533),
    [anon_sym_uint184] = ACTIONS(533),
    [anon_sym_uint192] = ACTIONS(533),
    [anon_sym_uint200] = ACTIONS(533),
    [anon_sym_uint208] = ACTIONS(533),
    [anon_sym_uint216] = ACTIONS(533),
    [anon_sym_uint224] = ACTIONS(533),
    [anon_sym_uint232] = ACTIONS(533),
    [anon_sym_uint240] = ACTIONS(533),
    [anon_sym_uint248] = ACTIONS(533),
    [anon_sym_uint256] = ACTIONS(533),
    [anon_sym_bytes] = ACTIONS(533),
    [anon_sym_bytes1] = ACTIONS(533),
    [anon_sym_bytes2] = ACTIONS(533),
    [anon_sym_bytes3] = ACTIONS(533),
    [anon_sym_bytes4] = ACTIONS(533),
    [anon_sym_bytes5] = ACTIONS(533),
    [anon_sym_bytes6] = ACTIONS(533),
    [anon_sym_bytes7] = ACTIONS(533),
    [anon_sym_bytes8] = ACTIONS(533),
    [anon_sym_bytes9] = ACTIONS(533),
    [anon_sym_bytes10] = ACTIONS(533),
    [anon_sym_bytes11] = ACTIONS(533),
    [anon_sym_bytes12] = ACTIONS(533),
    [anon_sym_bytes13] = ACTIONS(533),
    [anon_sym_bytes14] = ACTIONS(533),
    [anon_sym_bytes15] = ACTIONS(533),
    [anon_sym_bytes16] = ACTIONS(533),
    [anon_sym_bytes17] = ACTIONS(533),
    [anon_sym_bytes18] = ACTIONS(533),
    [anon_sym_bytes19] = ACTIONS(533),
    [anon_sym_bytes20] = ACTIONS(533),
    [anon_sym_bytes21] = ACTIONS(533),
    [anon_sym_bytes22] = ACTIONS(533),
    [anon_sym_bytes23] = ACTIONS(533),
    [anon_sym_bytes24] = ACTIONS(533),
    [anon_sym_bytes25] = ACTIONS(533),
    [anon_sym_bytes26] = ACTIONS(533),
    [anon_sym_bytes27] = ACTIONS(533),
    [anon_sym_bytes28] = ACTIONS(533),
    [anon_sym_bytes29] = ACTIONS(533),
    [anon_sym_bytes30] = ACTIONS(533),
    [anon_sym_bytes31] = ACTIONS(533),
    [anon_sym_bytes32] = ACTIONS(533),
    [anon_sym_fixed] = ACTIONS(533),
    [aux_sym__fixed_token1] = ACTIONS(533),
    [anon_sym_ufixed] = ACTIONS(533),
    [aux_sym__ufixed_token1] = ACTIONS(533),
    [aux_sym__decimal_number_token1] = ACTIONS(533),
    [aux_sym__decimal_number_token2] = ACTIONS(535),
    [aux_sym__hex_number_token1] = ACTIONS(535),
    [anon_sym_unicode] = ACTIONS(533),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(116)] = {
    [sym_identifier] = ACTIONS(537),
    [anon_sym_DASH] = ACTIONS(537),
    [anon_sym_TILDE] = ACTIONS(539),
    [anon_sym_LBRACE] = ACTIONS(539),
    [anon_sym_RBRACE] = ACTIONS(539),
    [anon_sym_type] = ACTIONS(537),
    [anon_sym_LPAREN] = ACTIONS(539),
    [anon_sym_for] = ACTIONS(537),
    [anon_sym_assembly] = ACTIONS(537),
    [anon_sym_break] = ACTIONS(537),
    [anon_sym_continue] = ACTIONS(537),
    [anon_sym_true] = ACTIONS(537),
    [anon_sym_false] = ACTIONS(537),
    [anon_sym_hex] = ACTIONS(537),
    [anon_sym_DQUOTE] = ACTIONS(539),
    [anon_sym_SQUOTE] = ACTIONS(539),
    [anon_sym_if] = ACTIONS(537),
    [anon_sym_function] = ACTIONS(537),
    [anon_sym_byte] = ACTIONS(537),
    [anon_sym_address] = ACTIONS(537),
    [anon_sym_return] = ACTIONS(537),
    [anon_sym_revert] = ACTIONS(537),
    [sym_unchecked] = ACTIONS(537),
    [anon_sym_var] = ACTIONS(537),
    [anon_sym_else] = ACTIONS(537),
    [anon_sym_while] = ACTIONS(537),
    [anon_sym_do] = ACTIONS(537),
    [anon_sym_try] = ACTIONS(537),
    [anon_sym_emit] = ACTIONS(537),
    [anon_sym_payable] = ACTIONS(537),
    [anon_sym_new] = ACTIONS(537),
    [anon_sym_LBRACK] = ACTIONS(539),
    [anon_sym_delete] = ACTIONS(537),
    [anon_sym_BANG] = ACTIONS(539),
    [anon_sym_PLUS_PLUS] = ACTIONS(539),
    [anon_sym_DASH_DASH] = ACTIONS(539),
    [anon_sym_mapping] = ACTIONS(537),
    [anon_sym_bool] = ACTIONS(537),
    [anon_sym_string] = ACTIONS(537),
    [anon_sym_int] = ACTIONS(537),
    [anon_sym_int8] = ACTIONS(537),
    [anon_sym_int16] = ACTIONS(537),
    [anon_sym_int24] = ACTIONS(537),
    [anon_sym_int32] = ACTIONS(537),
    [anon_sym_int40] = ACTIONS(537),
    [anon_sym_int48] = ACTIONS(537),
    [anon_sym_int56] = ACTIONS(537),
    [anon_sym_int64] = ACTIONS(537),
    [anon_sym_int72] = ACTIONS(537),
    [anon_sym_int80] = ACTIONS(537),
    [anon_sym_int88] = ACTIONS(537),
    [anon_sym_int96] = ACTIONS(537),
    [anon_sym_int104] = ACTIONS(537),
    [anon_sym_int112] = ACTIONS(537),
    [anon_sym_int120] = ACTIONS(537),
    [anon_sym_int128] = ACTIONS(537),
    [anon_sym_int136] = ACTIONS(537),
    [anon_sym_int144] = ACTIONS(537),
    [anon_sym_int152] = ACTIONS(537),
    [anon_sym_int160] = ACTIONS(537),
    [anon_sym_int168] = ACTIONS(537),
    [anon_sym_int176] = ACTIONS(537),
    [anon_sym_int184] = ACTIONS(537),
    [anon_sym_int192] = ACTIONS(537),
    [anon_sym_int200] = ACTIONS(537),
    [anon_sym_int208] = ACTIONS(537),
    [anon_sym_int216] = ACTIONS(537),
    [anon_sym_int224] = ACTIONS(537),
    [anon_sym_int232] = ACTIONS(537),
    [anon_sym_int240] = ACTIONS(537),
    [anon_sym_int248] = ACTIONS(537),
    [anon_sym_int256] = ACTIONS(537),
    [anon_sym_uint] = ACTIONS(537),
    [anon_sym_uint8] = ACTIONS(537),
    [anon_sym_uint16] = ACTIONS(537),
    [anon_sym_uint24] = ACTIONS(537),
    [anon_sym_uint32] = ACTIONS(537),
    [anon_sym_uint40] = ACTIONS(537),
    [anon_sym_uint48] = ACTIONS(537),
    [anon_sym_uint56] = ACTIONS(537),
    [anon_sym_uint64] = ACTIONS(537),
    [anon_sym_uint72] = ACTIONS(537),
    [anon_sym_uint80] = ACTIONS(537),
    [anon_sym_uint88] = ACTIONS(537),
    [anon_sym_uint96] = ACTIONS(537),
    [anon_sym_uint104] = ACTIONS(537),
    [anon_sym_uint112] = ACTIONS(537),
    [anon_sym_uint120] = ACTIONS(537),
    [anon_sym_uint128] = ACTIONS(537),
    [anon_sym_uint136] = ACTIONS(537),
    [anon_sym_uint144] = ACTIONS(537),
    [anon_sym_uint152] = ACTIONS(537),
    [anon_sym_uint160] = ACTIONS(537),
    [anon_sym_uint168] = ACTIONS(537),
    [anon_sym_uint176] = ACTIONS(537),
    [anon_sym_uint184] = ACTIONS(537),
    [anon_sym_uint192] = ACTIONS(537),
    [anon_sym_uint200] = ACTIONS(537),
    [anon_sym_uint208] = ACTIONS(537),
    [anon_sym_uint216] = ACTIONS(537),
    [anon_sym_uint224] = ACTIONS(537),
    [anon_sym_uint232] = ACTIONS(537),
    [anon_sym_uint240] = ACTIONS(537),
    [anon_sym_uint248] = ACTIONS(537),
    [anon_sym_uint256] = ACTIONS(537),
    [anon_sym_bytes] = ACTIONS(537),
    [anon_sym_bytes1] = ACTIONS(537),
    [anon_sym_bytes2] = ACTIONS(537),
    [anon_sym_bytes3] = ACTIONS(537),
    [anon_sym_bytes4] = ACTIONS(537),
    [anon_sym_bytes5] = ACTIONS(537),
    [anon_sym_bytes6] = ACTIONS(537),
    [anon_sym_bytes7] = ACTIONS(537),
    [anon_sym_bytes8] = ACTIONS(537),
    [anon_sym_bytes9] = ACTIONS(537),
    [anon_sym_bytes10] = ACTIONS(537),
    [anon_sym_bytes11] = ACTIONS(537),
    [anon_sym_bytes12] = ACTIONS(537),
    [anon_sym_bytes13] = ACTIONS(537),
    [anon_sym_bytes14] = ACTIONS(537),
    [anon_sym_bytes15] = ACTIONS(537),
    [anon_sym_bytes16] = ACTIONS(537),
    [anon_sym_bytes17] = ACTIONS(537),
    [anon_sym_bytes18] = ACTIONS(537),
    [anon_sym_bytes19] = ACTIONS(537),
    [anon_sym_bytes20] = ACTIONS(537),
    [anon_sym_bytes21] = ACTIONS(537),
    [anon_sym_bytes22] = ACTIONS(537),
    [anon_sym_bytes23] = ACTIONS(537),
    [anon_sym_bytes24] = ACTIONS(537),
    [anon_sym_bytes25] = ACTIONS(537),
    [anon_sym_bytes26] = ACTIONS(537),
    [anon_sym_bytes27] = ACTIONS(537),
    [anon_sym_bytes28] = ACTIONS(537),
    [anon_sym_bytes29] = ACTIONS(537),
    [anon_sym_bytes30] = ACTIONS(537),
    [anon_sym_bytes31] = ACTIONS(537),
    [anon_sym_bytes32] = ACTIONS(537),
    [anon_sym_fixed] = ACTIONS(537),
    [aux_sym__fixed_token1] = ACTIONS(537),
    [anon_sym_ufixed] = ACTIONS(537),
    [aux_sym__ufixed_token1] = ACTIONS(537),
    [aux_sym__decimal_number_token1] = ACTIONS(537),
    [aux_sym__decimal_number_token2] = ACTIONS(539),
    [aux_sym__hex_number_token1] = ACTIONS(539),
    [anon_sym_unicode] = ACTIONS(537),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(117)] = {
    [sym_identifier] = ACTIONS(541),
    [anon_sym_DASH] = ACTIONS(541),
    [anon_sym_TILDE] = ACTIONS(543),
    [anon_sym_LBRACE] = ACTIONS(543),
    [anon_sym_RBRACE] = ACTIONS(543),
    [anon_sym_type] = ACTIONS(541),
    [anon_sym_LPAREN] = ACTIONS(543),
    [anon_sym_for] = ACTIONS(541),
    [anon_sym_assembly] = ACTIONS(541),
    [anon_sym_break] = ACTIONS(541),
    [anon_sym_continue] = ACTIONS(541),
    [anon_sym_true] = ACTIONS(541),
    [anon_sym_false] = ACTIONS(541),
    [anon_sym_hex] = ACTIONS(541),
    [anon_sym_DQUOTE] = ACTIONS(543),
    [anon_sym_SQUOTE] = ACTIONS(543),
    [anon_sym_if] = ACTIONS(541),
    [anon_sym_function] = ACTIONS(541),
    [anon_sym_byte] = ACTIONS(541),
    [anon_sym_address] = ACTIONS(541),
    [anon_sym_return] = ACTIONS(541),
    [anon_sym_revert] = ACTIONS(541),
    [sym_unchecked] = ACTIONS(541),
    [anon_sym_var] = ACTIONS(541),
    [anon_sym_else] = ACTIONS(541),
    [anon_sym_while] = ACTIONS(541),
    [anon_sym_do] = ACTIONS(541),
    [anon_sym_try] = ACTIONS(541),
    [anon_sym_emit] = ACTIONS(541),
    [anon_sym_payable] = ACTIONS(541),
    [anon_sym_new] = ACTIONS(541),
    [anon_sym_LBRACK] = ACTIONS(543),
    [anon_sym_delete] = ACTIONS(541),
    [anon_sym_BANG] = ACTIONS(543),
    [anon_sym_PLUS_PLUS] = ACTIONS(543),
    [anon_sym_DASH_DASH] = ACTIONS(543),
    [anon_sym_mapping] = ACTIONS(541),
    [anon_sym_bool] = ACTIONS(541),
    [anon_sym_string] = ACTIONS(541),
    [anon_sym_int] = ACTIONS(541),
    [anon_sym_int8] = ACTIONS(541),
    [anon_sym_int16] = ACTIONS(541),
    [anon_sym_int24] = ACTIONS(541),
    [anon_sym_int32] = ACTIONS(541),
    [anon_sym_int40] = ACTIONS(541),
    [anon_sym_int48] = ACTIONS(541),
    [anon_sym_int56] = ACTIONS(541),
    [anon_sym_int64] = ACTIONS(541),
    [anon_sym_int72] = ACTIONS(541),
    [anon_sym_int80] = ACTIONS(541),
    [anon_sym_int88] = ACTIONS(541),
    [anon_sym_int96] = ACTIONS(541),
    [anon_sym_int104] = ACTIONS(541),
    [anon_sym_int112] = ACTIONS(541),
    [anon_sym_int120] = ACTIONS(541),
    [anon_sym_int128] = ACTIONS(541),
    [anon_sym_int136] = ACTIONS(541),
    [anon_sym_int144] = ACTIONS(541),
    [anon_sym_int152] = ACTIONS(541),
    [anon_sym_int160] = ACTIONS(541),
    [anon_sym_int168] = ACTIONS(541),
    [anon_sym_int176] = ACTIONS(541),
    [anon_sym_int184] = ACTIONS(541),
    [anon_sym_int192] = ACTIONS(541),
    [anon_sym_int200] = ACTIONS(541),
    [anon_sym_int208] = ACTIONS(541),
    [anon_sym_int216] = ACTIONS(541),
    [anon_sym_int224] = ACTIONS(541),
    [anon_sym_int232] = ACTIONS(541),
    [anon_sym_int240] = ACTIONS(541),
    [anon_sym_int248] = ACTIONS(541),
    [anon_sym_int256] = ACTIONS(541),
    [anon_sym_uint] = ACTIONS(541),
    [anon_sym_uint8] = ACTIONS(541),
    [anon_sym_uint16] = ACTIONS(541),
    [anon_sym_uint24] = ACTIONS(541),
    [anon_sym_uint32] = ACTIONS(541),
    [anon_sym_uint40] = ACTIONS(541),
    [anon_sym_uint48] = ACTIONS(541),
    [anon_sym_uint56] = ACTIONS(541),
    [anon_sym_uint64] = ACTIONS(541),
    [anon_sym_uint72] = ACTIONS(541),
    [anon_sym_uint80] = ACTIONS(541),
    [anon_sym_uint88] = ACTIONS(541),
    [anon_sym_uint96] = ACTIONS(541),
    [anon_sym_uint104] = ACTIONS(541),
    [anon_sym_uint112] = ACTIONS(541),
    [anon_sym_uint120] = ACTIONS(541),
    [anon_sym_uint128] = ACTIONS(541),
    [anon_sym_uint136] = ACTIONS(541),
    [anon_sym_uint144] = ACTIONS(541),
    [anon_sym_uint152] = ACTIONS(541),
    [anon_sym_uint160] = ACTIONS(541),
    [anon_sym_uint168] = ACTIONS(541),
    [anon_sym_uint176] = ACTIONS(541),
    [anon_sym_uint184] = ACTIONS(541),
    [anon_sym_uint192] = ACTIONS(541),
    [anon_sym_uint200] = ACTIONS(541),
    [anon_sym_uint208] = ACTIONS(541),
    [anon_sym_uint216] = ACTIONS(541),
    [anon_sym_uint224] = ACTIONS(541),
    [anon_sym_uint232] = ACTIONS(541),
    [anon_sym_uint240] = ACTIONS(541),
    [anon_sym_uint248] = ACTIONS(541),
    [anon_sym_uint256] = ACTIONS(541),
    [anon_sym_bytes] = ACTIONS(541),
    [anon_sym_bytes1] = ACTIONS(541),
    [anon_sym_bytes2] = ACTIONS(541),
    [anon_sym_bytes3] = ACTIONS(541),
    [anon_sym_bytes4] = ACTIONS(541),
    [anon_sym_bytes5] = ACTIONS(541),
    [anon_sym_bytes6] = ACTIONS(541),
    [anon_sym_bytes7] = ACTIONS(541),
    [anon_sym_bytes8] = ACTIONS(541),
    [anon_sym_bytes9] = ACTIONS(541),
    [anon_sym_bytes10] = ACTIONS(541),
    [anon_sym_bytes11] = ACTIONS(541),
    [anon_sym_bytes12] = ACTIONS(541),
    [anon_sym_bytes13] = ACTIONS(541),
    [anon_sym_bytes14] = ACTIONS(541),
    [anon_sym_bytes15] = ACTIONS(541),
    [anon_sym_bytes16] = ACTIONS(541),
    [anon_sym_bytes17] = ACTIONS(541),
    [anon_sym_bytes18] = ACTIONS(541),
    [anon_sym_bytes19] = ACTIONS(541),
    [anon_sym_bytes20] = ACTIONS(541),
    [anon_sym_bytes21] = ACTIONS(541),
    [anon_sym_bytes22] = ACTIONS(541),
    [anon_sym_bytes23] = ACTIONS(541),
    [anon_sym_bytes24] = ACTIONS(541),
    [anon_sym_bytes25] = ACTIONS(541),
    [anon_sym_bytes26] = ACTIONS(541),
    [anon_sym_bytes27] = ACTIONS(541),
    [anon_sym_bytes28] = ACTIONS(541),
    [anon_sym_bytes29] = ACTIONS(541),
    [anon_sym_bytes30] = ACTIONS(541),
    [anon_sym_bytes31] = ACTIONS(541),
    [anon_sym_bytes32] = ACTIONS(541),
    [anon_sym_fixed] = ACTIONS(541),
    [aux_sym__fixed_token1] = ACTIONS(541),
    [anon_sym_ufixed] = ACTIONS(541),
    [aux_sym__ufixed_token1] = ACTIONS(541),
    [aux_sym__decimal_number_token1] = ACTIONS(541),
    [aux_sym__decimal_number_token2] = ACTIONS(543),
    [aux_sym__hex_number_token1] = ACTIONS(543),
    [anon_sym_unicode] = ACTIONS(541),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(118)] = {
    [sym_identifier] = ACTIONS(545),
    [anon_sym_DASH] = ACTIONS(545),
    [anon_sym_TILDE] = ACTIONS(547),
    [anon_sym_LBRACE] = ACTIONS(547),
    [anon_sym_RBRACE] = ACTIONS(547),
    [anon_sym_type] = ACTIONS(545),
    [anon_sym_LPAREN] = ACTIONS(547),
    [anon_sym_for] = ACTIONS(545),
    [anon_sym_assembly] = ACTIONS(545),
    [anon_sym_break] = ACTIONS(545),
    [anon_sym_continue] = ACTIONS(545),
    [anon_sym_true] = ACTIONS(545),
    [anon_sym_false] = ACTIONS(545),
    [anon_sym_hex] = ACTIONS(545),
    [anon_sym_DQUOTE] = ACTIONS(547),
    [anon_sym_SQUOTE] = ACTIONS(547),
    [anon_sym_if] = ACTIONS(545),
    [anon_sym_function] = ACTIONS(545),
    [anon_sym_byte] = ACTIONS(545),
    [anon_sym_address] = ACTIONS(545),
    [anon_sym_return] = ACTIONS(545),
    [anon_sym_revert] = ACTIONS(545),
    [sym_unchecked] = ACTIONS(545),
    [anon_sym_var] = ACTIONS(545),
    [anon_sym_else] = ACTIONS(545),
    [anon_sym_while] = ACTIONS(545),
    [anon_sym_do] = ACTIONS(545),
    [anon_sym_try] = ACTIONS(545),
    [anon_sym_emit] = ACTIONS(545),
    [anon_sym_payable] = ACTIONS(545),
    [anon_sym_new] = ACTIONS(545),
    [anon_sym_LBRACK] = ACTIONS(547),
    [anon_sym_delete] = ACTIONS(545),
    [anon_sym_BANG] = ACTIONS(547),
    [anon_sym_PLUS_PLUS] = ACTIONS(547),
    [anon_sym_DASH_DASH] = ACTIONS(547),
    [anon_sym_mapping] = ACTIONS(545),
    [anon_sym_bool] = ACTIONS(545),
    [anon_sym_string] = ACTIONS(545),
    [anon_sym_int] = ACTIONS(545),
    [anon_sym_int8] = ACTIONS(545),
    [anon_sym_int16] = ACTIONS(545),
    [anon_sym_int24] = ACTIONS(545),
    [anon_sym_int32] = ACTIONS(545),
    [anon_sym_int40] = ACTIONS(545),
    [anon_sym_int48] = ACTIONS(545),
    [anon_sym_int56] = ACTIONS(545),
    [anon_sym_int64] = ACTIONS(545),
    [anon_sym_int72] = ACTIONS(545),
    [anon_sym_int80] = ACTIONS(545),
    [anon_sym_int88] = ACTIONS(545),
    [anon_sym_int96] = ACTIONS(545),
    [anon_sym_int104] = ACTIONS(545),
    [anon_sym_int112] = ACTIONS(545),
    [anon_sym_int120] = ACTIONS(545),
    [anon_sym_int128] = ACTIONS(545),
    [anon_sym_int136] = ACTIONS(545),
    [anon_sym_int144] = ACTIONS(545),
    [anon_sym_int152] = ACTIONS(545),
    [anon_sym_int160] = ACTIONS(545),
    [anon_sym_int168] = ACTIONS(545),
    [anon_sym_int176] = ACTIONS(545),
    [anon_sym_int184] = ACTIONS(545),
    [anon_sym_int192] = ACTIONS(545),
    [anon_sym_int200] = ACTIONS(545),
    [anon_sym_int208] = ACTIONS(545),
    [anon_sym_int216] = ACTIONS(545),
    [anon_sym_int224] = ACTIONS(545),
    [anon_sym_int232] = ACTIONS(545),
    [anon_sym_int240] = ACTIONS(545),
    [anon_sym_int248] = ACTIONS(545),
    [anon_sym_int256] = ACTIONS(545),
    [anon_sym_uint] = ACTIONS(545),
    [anon_sym_uint8] = ACTIONS(545),
    [anon_sym_uint16] = ACTIONS(545),
    [anon_sym_uint24] = ACTIONS(545),
    [anon_sym_uint32] = ACTIONS(545),
    [anon_sym_uint40] = ACTIONS(545),
    [anon_sym_uint48] = ACTIONS(545),
    [anon_sym_uint56] = ACTIONS(545),
    [anon_sym_uint64] = ACTIONS(545),
    [anon_sym_uint72] = ACTIONS(545),
    [anon_sym_uint80] = ACTIONS(545),
    [anon_sym_uint88] = ACTIONS(545),
    [anon_sym_uint96] = ACTIONS(545),
    [anon_sym_uint104] = ACTIONS(545),
    [anon_sym_uint112] = ACTIONS(545),
    [anon_sym_uint120] = ACTIONS(545),
    [anon_sym_uint128] = ACTIONS(545),
    [anon_sym_uint136] = ACTIONS(545),
    [anon_sym_uint144] = ACTIONS(545),
    [anon_sym_uint152] = ACTIONS(545),
    [anon_sym_uint160] = ACTIONS(545),
    [anon_sym_uint168] = ACTIONS(545),
    [anon_sym_uint176] = ACTIONS(545),
    [anon_sym_uint184] = ACTIONS(545),
    [anon_sym_uint192] = ACTIONS(545),
    [anon_sym_uint200] = ACTIONS(545),
    [anon_sym_uint208] = ACTIONS(545),
    [anon_sym_uint216] = ACTIONS(545),
    [anon_sym_uint224] = ACTIONS(545),
    [anon_sym_uint232] = ACTIONS(545),
    [anon_sym_uint240] = ACTIONS(545),
    [anon_sym_uint248] = ACTIONS(545),
    [anon_sym_uint256] = ACTIONS(545),
    [anon_sym_bytes] = ACTIONS(545),
    [anon_sym_bytes1] = ACTIONS(545),
    [anon_sym_bytes2] = ACTIONS(545),
    [anon_sym_bytes3] = ACTIONS(545),
    [anon_sym_bytes4] = ACTIONS(545),
    [anon_sym_bytes5] = ACTIONS(545),
    [anon_sym_bytes6] = ACTIONS(545),
    [anon_sym_bytes7] = ACTIONS(545),
    [anon_sym_bytes8] = ACTIONS(545),
    [anon_sym_bytes9] = ACTIONS(545),
    [anon_sym_bytes10] = ACTIONS(545),
    [anon_sym_bytes11] = ACTIONS(545),
    [anon_sym_bytes12] = ACTIONS(545),
    [anon_sym_bytes13] = ACTIONS(545),
    [anon_sym_bytes14] = ACTIONS(545),
    [anon_sym_bytes15] = ACTIONS(545),
    [anon_sym_bytes16] = ACTIONS(545),
    [anon_sym_bytes17] = ACTIONS(545),
    [anon_sym_bytes18] = ACTIONS(545),
    [anon_sym_bytes19] = ACTIONS(545),
    [anon_sym_bytes20] = ACTIONS(545),
    [anon_sym_bytes21] = ACTIONS(545),
    [anon_sym_bytes22] = ACTIONS(545),
    [anon_sym_bytes23] = ACTIONS(545),
    [anon_sym_bytes24] = ACTIONS(545),
    [anon_sym_bytes25] = ACTIONS(545),
    [anon_sym_bytes26] = ACTIONS(545),
    [anon_sym_bytes27] = ACTIONS(545),
    [anon_sym_bytes28] = ACTIONS(545),
    [anon_sym_bytes29] = ACTIONS(545),
    [anon_sym_bytes30] = ACTIONS(545),
    [anon_sym_bytes31] = ACTIONS(545),
    [anon_sym_bytes32] = ACTIONS(545),
    [anon_sym_fixed] = ACTIONS(545),
    [aux_sym__fixed_token1] = ACTIONS(545),
    [anon_sym_ufixed] = ACTIONS(545),
    [aux_sym__ufixed_token1] = ACTIONS(545),
    [aux_sym__decimal_number_token1] = ACTIONS(545),
    [aux_sym__decimal_number_token2] = ACTIONS(547),
    [aux_sym__hex_number_token1] = ACTIONS(547),
    [anon_sym_unicode] = ACTIONS(545),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(119)] = {
    [sym_identifier] = ACTIONS(549),
    [anon_sym_DASH] = ACTIONS(549),
    [anon_sym_TILDE] = ACTIONS(551),
    [anon_sym_LBRACE] = ACTIONS(551),
    [anon_sym_RBRACE] = ACTIONS(551),
    [anon_sym_type] = ACTIONS(549),
    [anon_sym_LPAREN] = ACTIONS(551),
    [anon_sym_for] = ACTIONS(549),
    [anon_sym_assembly] = ACTIONS(549),
    [anon_sym_break] = ACTIONS(549),
    [anon_sym_continue] = ACTIONS(549),
    [anon_sym_true] = ACTIONS(549),
    [anon_sym_false] = ACTIONS(549),
    [anon_sym_hex] = ACTIONS(549),
    [anon_sym_DQUOTE] = ACTIONS(551),
    [anon_sym_SQUOTE] = ACTIONS(551),
    [anon_sym_if] = ACTIONS(549),
    [anon_sym_function] = ACTIONS(549),
    [anon_sym_byte] = ACTIONS(549),
    [anon_sym_address] = ACTIONS(549),
    [anon_sym_return] = ACTIONS(549),
    [anon_sym_revert] = ACTIONS(549),
    [sym_unchecked] = ACTIONS(549),
    [anon_sym_var] = ACTIONS(549),
    [anon_sym_else] = ACTIONS(549),
    [anon_sym_while] = ACTIONS(549),
    [anon_sym_do] = ACTIONS(549),
    [anon_sym_try] = ACTIONS(549),
    [anon_sym_emit] = ACTIONS(549),
    [anon_sym_payable] = ACTIONS(549),
    [anon_sym_new] = ACTIONS(549),
    [anon_sym_LBRACK] = ACTIONS(551),
    [anon_sym_delete] = ACTIONS(549),
    [anon_sym_BANG] = ACTIONS(551),
    [anon_sym_PLUS_PLUS] = ACTIONS(551),
    [anon_sym_DASH_DASH] = ACTIONS(551),
    [anon_sym_mapping] = ACTIONS(549),
    [anon_sym_bool] = ACTIONS(549),
    [anon_sym_string] = ACTIONS(549),
    [anon_sym_int] = ACTIONS(549),
    [anon_sym_int8] = ACTIONS(549),
    [anon_sym_int16] = ACTIONS(549),
    [anon_sym_int24] = ACTIONS(549),
    [anon_sym_int32] = ACTIONS(549),
    [anon_sym_int40] = ACTIONS(549),
    [anon_sym_int48] = ACTIONS(549),
    [anon_sym_int56] = ACTIONS(549),
    [anon_sym_int64] = ACTIONS(549),
    [anon_sym_int72] = ACTIONS(549),
    [anon_sym_int80] = ACTIONS(549),
    [anon_sym_int88] = ACTIONS(549),
    [anon_sym_int96] = ACTIONS(549),
    [anon_sym_int104] = ACTIONS(549),
    [anon_sym_int112] = ACTIONS(549),
    [anon_sym_int120] = ACTIONS(549),
    [anon_sym_int128] = ACTIONS(549),
    [anon_sym_int136] = ACTIONS(549),
    [anon_sym_int144] = ACTIONS(549),
    [anon_sym_int152] = ACTIONS(549),
    [anon_sym_int160] = ACTIONS(549),
    [anon_sym_int168] = ACTIONS(549),
    [anon_sym_int176] = ACTIONS(549),
    [anon_sym_int184] = ACTIONS(549),
    [anon_sym_int192] = ACTIONS(549),
    [anon_sym_int200] = ACTIONS(549),
    [anon_sym_int208] = ACTIONS(549),
    [anon_sym_int216] = ACTIONS(549),
    [anon_sym_int224] = ACTIONS(549),
    [anon_sym_int232] = ACTIONS(549),
    [anon_sym_int240] = ACTIONS(549),
    [anon_sym_int248] = ACTIONS(549),
    [anon_sym_int256] = ACTIONS(549),
    [anon_sym_uint] = ACTIONS(549),
    [anon_sym_uint8] = ACTIONS(549),
    [anon_sym_uint16] = ACTIONS(549),
    [anon_sym_uint24] = ACTIONS(549),
    [anon_sym_uint32] = ACTIONS(549),
    [anon_sym_uint40] = ACTIONS(549),
    [anon_sym_uint48] = ACTIONS(549),
    [anon_sym_uint56] = ACTIONS(549),
    [anon_sym_uint64] = ACTIONS(549),
    [anon_sym_uint72] = ACTIONS(549),
    [anon_sym_uint80] = ACTIONS(549),
    [anon_sym_uint88] = ACTIONS(549),
    [anon_sym_uint96] = ACTIONS(549),
    [anon_sym_uint104] = ACTIONS(549),
    [anon_sym_uint112] = ACTIONS(549),
    [anon_sym_uint120] = ACTIONS(549),
    [anon_sym_uint128] = ACTIONS(549),
    [anon_sym_uint136] = ACTIONS(549),
    [anon_sym_uint144] = ACTIONS(549),
    [anon_sym_uint152] = ACTIONS(549),
    [anon_sym_uint160] = ACTIONS(549),
    [anon_sym_uint168] = ACTIONS(549),
    [anon_sym_uint176] = ACTIONS(549),
    [anon_sym_uint184] = ACTIONS(549),
    [anon_sym_uint192] = ACTIONS(549),
    [anon_sym_uint200] = ACTIONS(549),
    [anon_sym_uint208] = ACTIONS(549),
    [anon_sym_uint216] = ACTIONS(549),
    [anon_sym_uint224] = ACTIONS(549),
    [anon_sym_uint232] = ACTIONS(549),
    [anon_sym_uint240] = ACTIONS(549),
    [anon_sym_uint248] = ACTIONS(549),
    [anon_sym_uint256] = ACTIONS(549),
    [anon_sym_bytes] = ACTIONS(549),
    [anon_sym_bytes1] = ACTIONS(549),
    [anon_sym_bytes2] = ACTIONS(549),
    [anon_sym_bytes3] = ACTIONS(549),
    [anon_sym_bytes4] = ACTIONS(549),
    [anon_sym_bytes5] = ACTIONS(549),
    [anon_sym_bytes6] = ACTIONS(549),
    [anon_sym_bytes7] = ACTIONS(549),
    [anon_sym_bytes8] = ACTIONS(549),
    [anon_sym_bytes9] = ACTIONS(549),
    [anon_sym_bytes10] = ACTIONS(549),
    [anon_sym_bytes11] = ACTIONS(549),
    [anon_sym_bytes12] = ACTIONS(549),
    [anon_sym_bytes13] = ACTIONS(549),
    [anon_sym_bytes14] = ACTIONS(549),
    [anon_sym_bytes15] = ACTIONS(549),
    [anon_sym_bytes16] = ACTIONS(549),
    [anon_sym_bytes17] = ACTIONS(549),
    [anon_sym_bytes18] = ACTIONS(549),
    [anon_sym_bytes19] = ACTIONS(549),
    [anon_sym_bytes20] = ACTIONS(549),
    [anon_sym_bytes21] = ACTIONS(549),
    [anon_sym_bytes22] = ACTIONS(549),
    [anon_sym_bytes23] = ACTIONS(549),
    [anon_sym_bytes24] = ACTIONS(549),
    [anon_sym_bytes25] = ACTIONS(549),
    [anon_sym_bytes26] = ACTIONS(549),
    [anon_sym_bytes27] = ACTIONS(549),
    [anon_sym_bytes28] = ACTIONS(549),
    [anon_sym_bytes29] = ACTIONS(549),
    [anon_sym_bytes30] = ACTIONS(549),
    [anon_sym_bytes31] = ACTIONS(549),
    [anon_sym_bytes32] = ACTIONS(549),
    [anon_sym_fixed] = ACTIONS(549),
    [aux_sym__fixed_token1] = ACTIONS(549),
    [anon_sym_ufixed] = ACTIONS(549),
    [aux_sym__ufixed_token1] = ACTIONS(549),
    [aux_sym__decimal_number_token1] = ACTIONS(549),
    [aux_sym__decimal_number_token2] = ACTIONS(551),
    [aux_sym__hex_number_token1] = ACTIONS(551),
    [anon_sym_unicode] = ACTIONS(549),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(120)] = {
    [sym_identifier] = ACTIONS(553),
    [anon_sym_DASH] = ACTIONS(553),
    [anon_sym_TILDE] = ACTIONS(555),
    [anon_sym_LBRACE] = ACTIONS(555),
    [anon_sym_RBRACE] = ACTIONS(555),
    [anon_sym_type] = ACTIONS(553),
    [anon_sym_LPAREN] = ACTIONS(555),
    [anon_sym_for] = ACTIONS(553),
    [anon_sym_assembly] = ACTIONS(553),
    [anon_sym_break] = ACTIONS(553),
    [anon_sym_continue] = ACTIONS(553),
    [anon_sym_true] = ACTIONS(553),
    [anon_sym_false] = ACTIONS(553),
    [anon_sym_hex] = ACTIONS(553),
    [anon_sym_DQUOTE] = ACTIONS(555),
    [anon_sym_SQUOTE] = ACTIONS(555),
    [anon_sym_if] = ACTIONS(553),
    [anon_sym_function] = ACTIONS(553),
    [anon_sym_byte] = ACTIONS(553),
    [anon_sym_address] = ACTIONS(553),
    [anon_sym_return] = ACTIONS(553),
    [anon_sym_revert] = ACTIONS(553),
    [sym_unchecked] = ACTIONS(553),
    [anon_sym_var] = ACTIONS(553),
    [anon_sym_else] = ACTIONS(553),
    [anon_sym_while] = ACTIONS(553),
    [anon_sym_do] = ACTIONS(553),
    [anon_sym_try] = ACTIONS(553),
    [anon_sym_emit] = ACTIONS(553),
    [anon_sym_payable] = ACTIONS(553),
    [anon_sym_new] = ACTIONS(553),
    [anon_sym_LBRACK] = ACTIONS(555),
    [anon_sym_delete] = ACTIONS(553),
    [anon_sym_BANG] = ACTIONS(555),
    [anon_sym_PLUS_PLUS] = ACTIONS(555),
    [anon_sym_DASH_DASH] = ACTIONS(555),
    [anon_sym_mapping] = ACTIONS(553),
    [anon_sym_bool] = ACTIONS(553),
    [anon_sym_string] = ACTIONS(553),
    [anon_sym_int] = ACTIONS(553),
    [anon_sym_int8] = ACTIONS(553),
    [anon_sym_int16] = ACTIONS(553),
    [anon_sym_int24] = ACTIONS(553),
    [anon_sym_int32] = ACTIONS(553),
    [anon_sym_int40] = ACTIONS(553),
    [anon_sym_int48] = ACTIONS(553),
    [anon_sym_int56] = ACTIONS(553),
    [anon_sym_int64] = ACTIONS(553),
    [anon_sym_int72] = ACTIONS(553),
    [anon_sym_int80] = ACTIONS(553),
    [anon_sym_int88] = ACTIONS(553),
    [anon_sym_int96] = ACTIONS(553),
    [anon_sym_int104] = ACTIONS(553),
    [anon_sym_int112] = ACTIONS(553),
    [anon_sym_int120] = ACTIONS(553),
    [anon_sym_int128] = ACTIONS(553),
    [anon_sym_int136] = ACTIONS(553),
    [anon_sym_int144] = ACTIONS(553),
    [anon_sym_int152] = ACTIONS(553),
    [anon_sym_int160] = ACTIONS(553),
    [anon_sym_int168] = ACTIONS(553),
    [anon_sym_int176] = ACTIONS(553),
    [anon_sym_int184] = ACTIONS(553),
    [anon_sym_int192] = ACTIONS(553),
    [anon_sym_int200] = ACTIONS(553),
    [anon_sym_int208] = ACTIONS(553),
    [anon_sym_int216] = ACTIONS(553),
    [anon_sym_int224] = ACTIONS(553),
    [anon_sym_int232] = ACTIONS(553),
    [anon_sym_int240] = ACTIONS(553),
    [anon_sym_int248] = ACTIONS(553),
    [anon_sym_int256] = ACTIONS(553),
    [anon_sym_uint] = ACTIONS(553),
    [anon_sym_uint8] = ACTIONS(553),
    [anon_sym_uint16] = ACTIONS(553),
    [anon_sym_uint24] = ACTIONS(553),
    [anon_sym_uint32] = ACTIONS(553),
    [anon_sym_uint40] = ACTIONS(553),
    [anon_sym_uint48] = ACTIONS(553),
    [anon_sym_uint56] = ACTIONS(553),
    [anon_sym_uint64] = ACTIONS(553),
    [anon_sym_uint72] = ACTIONS(553),
    [anon_sym_uint80] = ACTIONS(553),
    [anon_sym_uint88] = ACTIONS(553),
    [anon_sym_uint96] = ACTIONS(553),
    [anon_sym_uint104] = ACTIONS(553),
    [anon_sym_uint112] = ACTIONS(553),
    [anon_sym_uint120] = ACTIONS(553),
    [anon_sym_uint128] = ACTIONS(553),
    [anon_sym_uint136] = ACTIONS(553),
    [anon_sym_uint144] = ACTIONS(553),
    [anon_sym_uint152] = ACTIONS(553),
    [anon_sym_uint160] = ACTIONS(553),
    [anon_sym_uint168] = ACTIONS(553),
    [anon_sym_uint176] = ACTIONS(553),
    [anon_sym_uint184] = ACTIONS(553),
    [anon_sym_uint192] = ACTIONS(553),
    [anon_sym_uint200] = ACTIONS(553),
    [anon_sym_uint208] = ACTIONS(553),
    [anon_sym_uint216] = ACTIONS(553),
    [anon_sym_uint224] = ACTIONS(553),
    [anon_sym_uint232] = ACTIONS(553),
    [anon_sym_uint240] = ACTIONS(553),
    [anon_sym_uint248] = ACTIONS(553),
    [anon_sym_uint256] = ACTIONS(553),
    [anon_sym_bytes] = ACTIONS(553),
    [anon_sym_bytes1] = ACTIONS(553),
    [anon_sym_bytes2] = ACTIONS(553),
    [anon_sym_bytes3] = ACTIONS(553),
    [anon_sym_bytes4] = ACTIONS(553),
    [anon_sym_bytes5] = ACTIONS(553),
    [anon_sym_bytes6] = ACTIONS(553),
    [anon_sym_bytes7] = ACTIONS(553),
    [anon_sym_bytes8] = ACTIONS(553),
    [anon_sym_bytes9] = ACTIONS(553),
    [anon_sym_bytes10] = ACTIONS(553),
    [anon_sym_bytes11] = ACTIONS(553),
    [anon_sym_bytes12] = ACTIONS(553),
    [anon_sym_bytes13] = ACTIONS(553),
    [anon_sym_bytes14] = ACTIONS(553),
    [anon_sym_bytes15] = ACTIONS(553),
    [anon_sym_bytes16] = ACTIONS(553),
    [anon_sym_bytes17] = ACTIONS(553),
    [anon_sym_bytes18] = ACTIONS(553),
    [anon_sym_bytes19] = ACTIONS(553),
    [anon_sym_bytes20] = ACTIONS(553),
    [anon_sym_bytes21] = ACTIONS(553),
    [anon_sym_bytes22] = ACTIONS(553),
    [anon_sym_bytes23] = ACTIONS(553),
    [anon_sym_bytes24] = ACTIONS(553),
    [anon_sym_bytes25] = ACTIONS(553),
    [anon_sym_bytes26] = ACTIONS(553),
    [anon_sym_bytes27] = ACTIONS(553),
    [anon_sym_bytes28] = ACTIONS(553),
    [anon_sym_bytes29] = ACTIONS(553),
    [anon_sym_bytes30] = ACTIONS(553),
    [anon_sym_bytes31] = ACTIONS(553),
    [anon_sym_bytes32] = ACTIONS(553),
    [anon_sym_fixed] = ACTIONS(553),
    [aux_sym__fixed_token1] = ACTIONS(553),
    [anon_sym_ufixed] = ACTIONS(553),
    [aux_sym__ufixed_token1] = ACTIONS(553),
    [aux_sym__decimal_number_token1] = ACTIONS(553),
    [aux_sym__decimal_number_token2] = ACTIONS(555),
    [aux_sym__hex_number_token1] = ACTIONS(555),
    [anon_sym_unicode] = ACTIONS(553),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(121)] = {
    [sym_identifier] = ACTIONS(557),
    [anon_sym_DASH] = ACTIONS(557),
    [anon_sym_TILDE] = ACTIONS(559),
    [anon_sym_LBRACE] = ACTIONS(559),
    [anon_sym_RBRACE] = ACTIONS(559),
    [anon_sym_type] = ACTIONS(557),
    [anon_sym_LPAREN] = ACTIONS(559),
    [anon_sym_for] = ACTIONS(557),
    [anon_sym_assembly] = ACTIONS(557),
    [anon_sym_break] = ACTIONS(557),
    [anon_sym_continue] = ACTIONS(557),
    [anon_sym_true] = ACTIONS(557),
    [anon_sym_false] = ACTIONS(557),
    [anon_sym_hex] = ACTIONS(557),
    [anon_sym_DQUOTE] = ACTIONS(559),
    [anon_sym_SQUOTE] = ACTIONS(559),
    [anon_sym_if] = ACTIONS(557),
    [anon_sym_function] = ACTIONS(557),
    [anon_sym_byte] = ACTIONS(557),
    [anon_sym_address] = ACTIONS(557),
    [anon_sym_return] = ACTIONS(557),
    [anon_sym_revert] = ACTIONS(557),
    [sym_unchecked] = ACTIONS(557),
    [anon_sym_var] = ACTIONS(557),
    [anon_sym_else] = ACTIONS(557),
    [anon_sym_while] = ACTIONS(557),
    [anon_sym_do] = ACTIONS(557),
    [anon_sym_try] = ACTIONS(557),
    [anon_sym_emit] = ACTIONS(557),
    [anon_sym_payable] = ACTIONS(557),
    [anon_sym_new] = ACTIONS(557),
    [anon_sym_LBRACK] = ACTIONS(559),
    [anon_sym_delete] = ACTIONS(557),
    [anon_sym_BANG] = ACTIONS(559),
    [anon_sym_PLUS_PLUS] = ACTIONS(559),
    [anon_sym_DASH_DASH] = ACTIONS(559),
    [anon_sym_mapping] = ACTIONS(557),
    [anon_sym_bool] = ACTIONS(557),
    [anon_sym_string] = ACTIONS(557),
    [anon_sym_int] = ACTIONS(557),
    [anon_sym_int8] = ACTIONS(557),
    [anon_sym_int16] = ACTIONS(557),
    [anon_sym_int24] = ACTIONS(557),
    [anon_sym_int32] = ACTIONS(557),
    [anon_sym_int40] = ACTIONS(557),
    [anon_sym_int48] = ACTIONS(557),
    [anon_sym_int56] = ACTIONS(557),
    [anon_sym_int64] = ACTIONS(557),
    [anon_sym_int72] = ACTIONS(557),
    [anon_sym_int80] = ACTIONS(557),
    [anon_sym_int88] = ACTIONS(557),
    [anon_sym_int96] = ACTIONS(557),
    [anon_sym_int104] = ACTIONS(557),
    [anon_sym_int112] = ACTIONS(557),
    [anon_sym_int120] = ACTIONS(557),
    [anon_sym_int128] = ACTIONS(557),
    [anon_sym_int136] = ACTIONS(557),
    [anon_sym_int144] = ACTIONS(557),
    [anon_sym_int152] = ACTIONS(557),
    [anon_sym_int160] = ACTIONS(557),
    [anon_sym_int168] = ACTIONS(557),
    [anon_sym_int176] = ACTIONS(557),
    [anon_sym_int184] = ACTIONS(557),
    [anon_sym_int192] = ACTIONS(557),
    [anon_sym_int200] = ACTIONS(557),
    [anon_sym_int208] = ACTIONS(557),
    [anon_sym_int216] = ACTIONS(557),
    [anon_sym_int224] = ACTIONS(557),
    [anon_sym_int232] = ACTIONS(557),
    [anon_sym_int240] = ACTIONS(557),
    [anon_sym_int248] = ACTIONS(557),
    [anon_sym_int256] = ACTIONS(557),
    [anon_sym_uint] = ACTIONS(557),
    [anon_sym_uint8] = ACTIONS(557),
    [anon_sym_uint16] = ACTIONS(557),
    [anon_sym_uint24] = ACTIONS(557),
    [anon_sym_uint32] = ACTIONS(557),
    [anon_sym_uint40] = ACTIONS(557),
    [anon_sym_uint48] = ACTIONS(557),
    [anon_sym_uint56] = ACTIONS(557),
    [anon_sym_uint64] = ACTIONS(557),
    [anon_sym_uint72] = ACTIONS(557),
    [anon_sym_uint80] = ACTIONS(557),
    [anon_sym_uint88] = ACTIONS(557),
    [anon_sym_uint96] = ACTIONS(557),
    [anon_sym_uint104] = ACTIONS(557),
    [anon_sym_uint112] = ACTIONS(557),
    [anon_sym_uint120] = ACTIONS(557),
    [anon_sym_uint128] = ACTIONS(557),
    [anon_sym_uint136] = ACTIONS(557),
    [anon_sym_uint144] = ACTIONS(557),
    [anon_sym_uint152] = ACTIONS(557),
    [anon_sym_uint160] = ACTIONS(557),
    [anon_sym_uint168] = ACTIONS(557),
    [anon_sym_uint176] = ACTIONS(557),
    [anon_sym_uint184] = ACTIONS(557),
    [anon_sym_uint192] = ACTIONS(557),
    [anon_sym_uint200] = ACTIONS(557),
    [anon_sym_uint208] = ACTIONS(557),
    [anon_sym_uint216] = ACTIONS(557),
    [anon_sym_uint224] = ACTIONS(557),
    [anon_sym_uint232] = ACTIONS(557),
    [anon_sym_uint240] = ACTIONS(557),
    [anon_sym_uint248] = ACTIONS(557),
    [anon_sym_uint256] = ACTIONS(557),
    [anon_sym_bytes] = ACTIONS(557),
    [anon_sym_bytes1] = ACTIONS(557),
    [anon_sym_bytes2] = ACTIONS(557),
    [anon_sym_bytes3] = ACTIONS(557),
    [anon_sym_bytes4] = ACTIONS(557),
    [anon_sym_bytes5] = ACTIONS(557),
    [anon_sym_bytes6] = ACTIONS(557),
    [anon_sym_bytes7] = ACTIONS(557),
    [anon_sym_bytes8] = ACTIONS(557),
    [anon_sym_bytes9] = ACTIONS(557),
    [anon_sym_bytes10] = ACTIONS(557),
    [anon_sym_bytes11] = ACTIONS(557),
    [anon_sym_bytes12] = ACTIONS(557),
    [anon_sym_bytes13] = ACTIONS(557),
    [anon_sym_bytes14] = ACTIONS(557),
    [anon_sym_bytes15] = ACTIONS(557),
    [anon_sym_bytes16] = ACTIONS(557),
    [anon_sym_bytes17] = ACTIONS(557),
    [anon_sym_bytes18] = ACTIONS(557),
    [anon_sym_bytes19] = ACTIONS(557),
    [anon_sym_bytes20] = ACTIONS(557),
    [anon_sym_bytes21] = ACTIONS(557),
    [anon_sym_bytes22] = ACTIONS(557),
    [anon_sym_bytes23] = ACTIONS(557),
    [anon_sym_bytes24] = ACTIONS(557),
    [anon_sym_bytes25] = ACTIONS(557),
    [anon_sym_bytes26] = ACTIONS(557),
    [anon_sym_bytes27] = ACTIONS(557),
    [anon_sym_bytes28] = ACTIONS(557),
    [anon_sym_bytes29] = ACTIONS(557),
    [anon_sym_bytes30] = ACTIONS(557),
    [anon_sym_bytes31] = ACTIONS(557),
    [anon_sym_bytes32] = ACTIONS(557),
    [anon_sym_fixed] = ACTIONS(557),
    [aux_sym__fixed_token1] = ACTIONS(557),
    [anon_sym_ufixed] = ACTIONS(557),
    [aux_sym__ufixed_token1] = ACTIONS(557),
    [aux_sym__decimal_number_token1] = ACTIONS(557),
    [aux_sym__decimal_number_token2] = ACTIONS(559),
    [aux_sym__hex_number_token1] = ACTIONS(559),
    [anon_sym_unicode] = ACTIONS(557),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(122)] = {
    [sym_identifier] = ACTIONS(561),
    [anon_sym_DASH] = ACTIONS(561),
    [anon_sym_TILDE] = ACTIONS(563),
    [anon_sym_LBRACE] = ACTIONS(563),
    [anon_sym_RBRACE] = ACTIONS(563),
    [anon_sym_type] = ACTIONS(561),
    [anon_sym_LPAREN] = ACTIONS(563),
    [anon_sym_for] = ACTIONS(561),
    [anon_sym_assembly] = ACTIONS(561),
    [anon_sym_break] = ACTIONS(561),
    [anon_sym_continue] = ACTIONS(561),
    [anon_sym_true] = ACTIONS(561),
    [anon_sym_false] = ACTIONS(561),
    [anon_sym_hex] = ACTIONS(561),
    [anon_sym_DQUOTE] = ACTIONS(563),
    [anon_sym_SQUOTE] = ACTIONS(563),
    [anon_sym_if] = ACTIONS(561),
    [anon_sym_function] = ACTIONS(561),
    [anon_sym_byte] = ACTIONS(561),
    [anon_sym_address] = ACTIONS(561),
    [anon_sym_return] = ACTIONS(561),
    [anon_sym_revert] = ACTIONS(561),
    [sym_unchecked] = ACTIONS(561),
    [anon_sym_var] = ACTIONS(561),
    [anon_sym_else] = ACTIONS(561),
    [anon_sym_while] = ACTIONS(561),
    [anon_sym_do] = ACTIONS(561),
    [anon_sym_try] = ACTIONS(561),
    [anon_sym_emit] = ACTIONS(561),
    [anon_sym_payable] = ACTIONS(561),
    [anon_sym_new] = ACTIONS(561),
    [anon_sym_LBRACK] = ACTIONS(563),
    [anon_sym_delete] = ACTIONS(561),
    [anon_sym_BANG] = ACTIONS(563),
    [anon_sym_PLUS_PLUS] = ACTIONS(563),
    [anon_sym_DASH_DASH] = ACTIONS(563),
    [anon_sym_mapping] = ACTIONS(561),
    [anon_sym_bool] = ACTIONS(561),
    [anon_sym_string] = ACTIONS(561),
    [anon_sym_int] = ACTIONS(561),
    [anon_sym_int8] = ACTIONS(561),
    [anon_sym_int16] = ACTIONS(561),
    [anon_sym_int24] = ACTIONS(561),
    [anon_sym_int32] = ACTIONS(561),
    [anon_sym_int40] = ACTIONS(561),
    [anon_sym_int48] = ACTIONS(561),
    [anon_sym_int56] = ACTIONS(561),
    [anon_sym_int64] = ACTIONS(561),
    [anon_sym_int72] = ACTIONS(561),
    [anon_sym_int80] = ACTIONS(561),
    [anon_sym_int88] = ACTIONS(561),
    [anon_sym_int96] = ACTIONS(561),
    [anon_sym_int104] = ACTIONS(561),
    [anon_sym_int112] = ACTIONS(561),
    [anon_sym_int120] = ACTIONS(561),
    [anon_sym_int128] = ACTIONS(561),
    [anon_sym_int136] = ACTIONS(561),
    [anon_sym_int144] = ACTIONS(561),
    [anon_sym_int152] = ACTIONS(561),
    [anon_sym_int160] = ACTIONS(561),
    [anon_sym_int168] = ACTIONS(561),
    [anon_sym_int176] = ACTIONS(561),
    [anon_sym_int184] = ACTIONS(561),
    [anon_sym_int192] = ACTIONS(561),
    [anon_sym_int200] = ACTIONS(561),
    [anon_sym_int208] = ACTIONS(561),
    [anon_sym_int216] = ACTIONS(561),
    [anon_sym_int224] = ACTIONS(561),
    [anon_sym_int232] = ACTIONS(561),
    [anon_sym_int240] = ACTIONS(561),
    [anon_sym_int248] = ACTIONS(561),
    [anon_sym_int256] = ACTIONS(561),
    [anon_sym_uint] = ACTIONS(561),
    [anon_sym_uint8] = ACTIONS(561),
    [anon_sym_uint16] = ACTIONS(561),
    [anon_sym_uint24] = ACTIONS(561),
    [anon_sym_uint32] = ACTIONS(561),
    [anon_sym_uint40] = ACTIONS(561),
    [anon_sym_uint48] = ACTIONS(561),
    [anon_sym_uint56] = ACTIONS(561),
    [anon_sym_uint64] = ACTIONS(561),
    [anon_sym_uint72] = ACTIONS(561),
    [anon_sym_uint80] = ACTIONS(561),
    [anon_sym_uint88] = ACTIONS(561),
    [anon_sym_uint96] = ACTIONS(561),
    [anon_sym_uint104] = ACTIONS(561),
    [anon_sym_uint112] = ACTIONS(561),
    [anon_sym_uint120] = ACTIONS(561),
    [anon_sym_uint128] = ACTIONS(561),
    [anon_sym_uint136] = ACTIONS(561),
    [anon_sym_uint144] = ACTIONS(561),
    [anon_sym_uint152] = ACTIONS(561),
    [anon_sym_uint160] = ACTIONS(561),
    [anon_sym_uint168] = ACTIONS(561),
    [anon_sym_uint176] = ACTIONS(561),
    [anon_sym_uint184] = ACTIONS(561),
    [anon_sym_uint192] = ACTIONS(561),
    [anon_sym_uint200] = ACTIONS(561),
    [anon_sym_uint208] = ACTIONS(561),
    [anon_sym_uint216] = ACTIONS(561),
    [anon_sym_uint224] = ACTIONS(561),
    [anon_sym_uint232] = ACTIONS(561),
    [anon_sym_uint240] = ACTIONS(561),
    [anon_sym_uint248] = ACTIONS(561),
    [anon_sym_uint256] = ACTIONS(561),
    [anon_sym_bytes] = ACTIONS(561),
    [anon_sym_bytes1] = ACTIONS(561),
    [anon_sym_bytes2] = ACTIONS(561),
    [anon_sym_bytes3] = ACTIONS(561),
    [anon_sym_bytes4] = ACTIONS(561),
    [anon_sym_bytes5] = ACTIONS(561),
    [anon_sym_bytes6] = ACTIONS(561),
    [anon_sym_bytes7] = ACTIONS(561),
    [anon_sym_bytes8] = ACTIONS(561),
    [anon_sym_bytes9] = ACTIONS(561),
    [anon_sym_bytes10] = ACTIONS(561),
    [anon_sym_bytes11] = ACTIONS(561),
    [anon_sym_bytes12] = ACTIONS(561),
    [anon_sym_bytes13] = ACTIONS(561),
    [anon_sym_bytes14] = ACTIONS(561),
    [anon_sym_bytes15] = ACTIONS(561),
    [anon_sym_bytes16] = ACTIONS(561),
    [anon_sym_bytes17] = ACTIONS(561),
    [anon_sym_bytes18] = ACTIONS(561),
    [anon_sym_bytes19] = ACTIONS(561),
    [anon_sym_bytes20] = ACTIONS(561),
    [anon_sym_bytes21] = ACTIONS(561),
    [anon_sym_bytes22] = ACTIONS(561),
    [anon_sym_bytes23] = ACTIONS(561),
    [anon_sym_bytes24] = ACTIONS(561),
    [anon_sym_bytes25] = ACTIONS(561),
    [anon_sym_bytes26] = ACTIONS(561),
    [anon_sym_bytes27] = ACTIONS(561),
    [anon_sym_bytes28] = ACTIONS(561),
    [anon_sym_bytes29] = ACTIONS(561),
    [anon_sym_bytes30] = ACTIONS(561),
    [anon_sym_bytes31] = ACTIONS(561),
    [anon_sym_bytes32] = ACTIONS(561),
    [anon_sym_fixed] = ACTIONS(561),
    [aux_sym__fixed_token1] = ACTIONS(561),
    [anon_sym_ufixed] = ACTIONS(561),
    [aux_sym__ufixed_token1] = ACTIONS(561),
    [aux_sym__decimal_number_token1] = ACTIONS(561),
    [aux_sym__decimal_number_token2] = ACTIONS(563),
    [aux_sym__hex_number_token1] = ACTIONS(563),
    [anon_sym_unicode] = ACTIONS(561),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(123)] = {
    [sym_identifier] = ACTIONS(565),
    [anon_sym_DASH] = ACTIONS(565),
    [anon_sym_TILDE] = ACTIONS(567),
    [anon_sym_LBRACE] = ACTIONS(567),
    [anon_sym_RBRACE] = ACTIONS(567),
    [anon_sym_type] = ACTIONS(565),
    [anon_sym_LPAREN] = ACTIONS(567),
    [anon_sym_for] = ACTIONS(565),
    [anon_sym_assembly] = ACTIONS(565),
    [anon_sym_break] = ACTIONS(565),
    [anon_sym_continue] = ACTIONS(565),
    [anon_sym_true] = ACTIONS(565),
    [anon_sym_false] = ACTIONS(565),
    [anon_sym_hex] = ACTIONS(565),
    [anon_sym_DQUOTE] = ACTIONS(567),
    [anon_sym_SQUOTE] = ACTIONS(567),
    [anon_sym_if] = ACTIONS(565),
    [anon_sym_function] = ACTIONS(565),
    [anon_sym_byte] = ACTIONS(565),
    [anon_sym_address] = ACTIONS(565),
    [anon_sym_return] = ACTIONS(565),
    [anon_sym_revert] = ACTIONS(565),
    [sym_unchecked] = ACTIONS(565),
    [anon_sym_var] = ACTIONS(565),
    [anon_sym_else] = ACTIONS(565),
    [anon_sym_while] = ACTIONS(565),
    [anon_sym_do] = ACTIONS(565),
    [anon_sym_try] = ACTIONS(565),
    [anon_sym_emit] = ACTIONS(565),
    [anon_sym_payable] = ACTIONS(565),
    [anon_sym_new] = ACTIONS(565),
    [anon_sym_LBRACK] = ACTIONS(567),
    [anon_sym_delete] = ACTIONS(565),
    [anon_sym_BANG] = ACTIONS(567),
    [anon_sym_PLUS_PLUS] = ACTIONS(567),
    [anon_sym_DASH_DASH] = ACTIONS(567),
    [anon_sym_mapping] = ACTIONS(565),
    [anon_sym_bool] = ACTIONS(565),
    [anon_sym_string] = ACTIONS(565),
    [anon_sym_int] = ACTIONS(565),
    [anon_sym_int8] = ACTIONS(565),
    [anon_sym_int16] = ACTIONS(565),
    [anon_sym_int24] = ACTIONS(565),
    [anon_sym_int32] = ACTIONS(565),
    [anon_sym_int40] = ACTIONS(565),
    [anon_sym_int48] = ACTIONS(565),
    [anon_sym_int56] = ACTIONS(565),
    [anon_sym_int64] = ACTIONS(565),
    [anon_sym_int72] = ACTIONS(565),
    [anon_sym_int80] = ACTIONS(565),
    [anon_sym_int88] = ACTIONS(565),
    [anon_sym_int96] = ACTIONS(565),
    [anon_sym_int104] = ACTIONS(565),
    [anon_sym_int112] = ACTIONS(565),
    [anon_sym_int120] = ACTIONS(565),
    [anon_sym_int128] = ACTIONS(565),
    [anon_sym_int136] = ACTIONS(565),
    [anon_sym_int144] = ACTIONS(565),
    [anon_sym_int152] = ACTIONS(565),
    [anon_sym_int160] = ACTIONS(565),
    [anon_sym_int168] = ACTIONS(565),
    [anon_sym_int176] = ACTIONS(565),
    [anon_sym_int184] = ACTIONS(565),
    [anon_sym_int192] = ACTIONS(565),
    [anon_sym_int200] = ACTIONS(565),
    [anon_sym_int208] = ACTIONS(565),
    [anon_sym_int216] = ACTIONS(565),
    [anon_sym_int224] = ACTIONS(565),
    [anon_sym_int232] = ACTIONS(565),
    [anon_sym_int240] = ACTIONS(565),
    [anon_sym_int248] = ACTIONS(565),
    [anon_sym_int256] = ACTIONS(565),
    [anon_sym_uint] = ACTIONS(565),
    [anon_sym_uint8] = ACTIONS(565),
    [anon_sym_uint16] = ACTIONS(565),
    [anon_sym_uint24] = ACTIONS(565),
    [anon_sym_uint32] = ACTIONS(565),
    [anon_sym_uint40] = ACTIONS(565),
    [anon_sym_uint48] = ACTIONS(565),
    [anon_sym_uint56] = ACTIONS(565),
    [anon_sym_uint64] = ACTIONS(565),
    [anon_sym_uint72] = ACTIONS(565),
    [anon_sym_uint80] = ACTIONS(565),
    [anon_sym_uint88] = ACTIONS(565),
    [anon_sym_uint96] = ACTIONS(565),
    [anon_sym_uint104] = ACTIONS(565),
    [anon_sym_uint112] = ACTIONS(565),
    [anon_sym_uint120] = ACTIONS(565),
    [anon_sym_uint128] = ACTIONS(565),
    [anon_sym_uint136] = ACTIONS(565),
    [anon_sym_uint144] = ACTIONS(565),
    [anon_sym_uint152] = ACTIONS(565),
    [anon_sym_uint160] = ACTIONS(565),
    [anon_sym_uint168] = ACTIONS(565),
    [anon_sym_uint176] = ACTIONS(565),
    [anon_sym_uint184] = ACTIONS(565),
    [anon_sym_uint192] = ACTIONS(565),
    [anon_sym_uint200] = ACTIONS(565),
    [anon_sym_uint208] = ACTIONS(565),
    [anon_sym_uint216] = ACTIONS(565),
    [anon_sym_uint224] = ACTIONS(565),
    [anon_sym_uint232] = ACTIONS(565),
    [anon_sym_uint240] = ACTIONS(565),
    [anon_sym_uint248] = ACTIONS(565),
    [anon_sym_uint256] = ACTIONS(565),
    [anon_sym_bytes] = ACTIONS(565),
    [anon_sym_bytes1] = ACTIONS(565),
    [anon_sym_bytes2] = ACTIONS(565),
    [anon_sym_bytes3] = ACTIONS(565),
    [anon_sym_bytes4] = ACTIONS(565),
    [anon_sym_bytes5] = ACTIONS(565),
    [anon_sym_bytes6] = ACTIONS(565),
    [anon_sym_bytes7] = ACTIONS(565),
    [anon_sym_bytes8] = ACTIONS(565),
    [anon_sym_bytes9] = ACTIONS(565),
    [anon_sym_bytes10] = ACTIONS(565),
    [anon_sym_bytes11] = ACTIONS(565),
    [anon_sym_bytes12] = ACTIONS(565),
    [anon_sym_bytes13] = ACTIONS(565),
    [anon_sym_bytes14] = ACTIONS(565),
    [anon_sym_bytes15] = ACTIONS(565),
    [anon_sym_bytes16] = ACTIONS(565),
    [anon_sym_bytes17] = ACTIONS(565),
    [anon_sym_bytes18] = ACTIONS(565),
    [anon_sym_bytes19] = ACTIONS(565),
    [anon_sym_bytes20] = ACTIONS(565),
    [anon_sym_bytes21] = ACTIONS(565),
    [anon_sym_bytes22] = ACTIONS(565),
    [anon_sym_bytes23] = ACTIONS(565),
    [anon_sym_bytes24] = ACTIONS(565),
    [anon_sym_bytes25] = ACTIONS(565),
    [anon_sym_bytes26] = ACTIONS(565),
    [anon_sym_bytes27] = ACTIONS(565),
    [anon_sym_bytes28] = ACTIONS(565),
    [anon_sym_bytes29] = ACTIONS(565),
    [anon_sym_bytes30] = ACTIONS(565),
    [anon_sym_bytes31] = ACTIONS(565),
    [anon_sym_bytes32] = ACTIONS(565),
    [anon_sym_fixed] = ACTIONS(565),
    [aux_sym__fixed_token1] = ACTIONS(565),
    [anon_sym_ufixed] = ACTIONS(565),
    [aux_sym__ufixed_token1] = ACTIONS(565),
    [aux_sym__decimal_number_token1] = ACTIONS(565),
    [aux_sym__decimal_number_token2] = ACTIONS(567),
    [aux_sym__hex_number_token1] = ACTIONS(567),
    [anon_sym_unicode] = ACTIONS(565),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(124)] = {
    [sym_identifier] = ACTIONS(569),
    [anon_sym_DASH] = ACTIONS(569),
    [anon_sym_TILDE] = ACTIONS(571),
    [anon_sym_LBRACE] = ACTIONS(571),
    [anon_sym_RBRACE] = ACTIONS(571),
    [anon_sym_type] = ACTIONS(569),
    [anon_sym_LPAREN] = ACTIONS(571),
    [anon_sym_for] = ACTIONS(569),
    [anon_sym_assembly] = ACTIONS(569),
    [anon_sym_break] = ACTIONS(569),
    [anon_sym_continue] = ACTIONS(569),
    [anon_sym_true] = ACTIONS(569),
    [anon_sym_false] = ACTIONS(569),
    [anon_sym_hex] = ACTIONS(569),
    [anon_sym_DQUOTE] = ACTIONS(571),
    [anon_sym_SQUOTE] = ACTIONS(571),
    [anon_sym_if] = ACTIONS(569),
    [anon_sym_function] = ACTIONS(569),
    [anon_sym_byte] = ACTIONS(569),
    [anon_sym_address] = ACTIONS(569),
    [anon_sym_return] = ACTIONS(569),
    [anon_sym_revert] = ACTIONS(569),
    [sym_unchecked] = ACTIONS(569),
    [anon_sym_var] = ACTIONS(569),
    [anon_sym_else] = ACTIONS(569),
    [anon_sym_while] = ACTIONS(569),
    [anon_sym_do] = ACTIONS(569),
    [anon_sym_try] = ACTIONS(569),
    [anon_sym_emit] = ACTIONS(569),
    [anon_sym_payable] = ACTIONS(569),
    [anon_sym_new] = ACTIONS(569),
    [anon_sym_LBRACK] = ACTIONS(571),
    [anon_sym_delete] = ACTIONS(569),
    [anon_sym_BANG] = ACTIONS(571),
    [anon_sym_PLUS_PLUS] = ACTIONS(571),
    [anon_sym_DASH_DASH] = ACTIONS(571),
    [anon_sym_mapping] = ACTIONS(569),
    [anon_sym_bool] = ACTIONS(569),
    [anon_sym_string] = ACTIONS(569),
    [anon_sym_int] = ACTIONS(569),
    [anon_sym_int8] = ACTIONS(569),
    [anon_sym_int16] = ACTIONS(569),
    [anon_sym_int24] = ACTIONS(569),
    [anon_sym_int32] = ACTIONS(569),
    [anon_sym_int40] = ACTIONS(569),
    [anon_sym_int48] = ACTIONS(569),
    [anon_sym_int56] = ACTIONS(569),
    [anon_sym_int64] = ACTIONS(569),
    [anon_sym_int72] = ACTIONS(569),
    [anon_sym_int80] = ACTIONS(569),
    [anon_sym_int88] = ACTIONS(569),
    [anon_sym_int96] = ACTIONS(569),
    [anon_sym_int104] = ACTIONS(569),
    [anon_sym_int112] = ACTIONS(569),
    [anon_sym_int120] = ACTIONS(569),
    [anon_sym_int128] = ACTIONS(569),
    [anon_sym_int136] = ACTIONS(569),
    [anon_sym_int144] = ACTIONS(569),
    [anon_sym_int152] = ACTIONS(569),
    [anon_sym_int160] = ACTIONS(569),
    [anon_sym_int168] = ACTIONS(569),
    [anon_sym_int176] = ACTIONS(569),
    [anon_sym_int184] = ACTIONS(569),
    [anon_sym_int192] = ACTIONS(569),
    [anon_sym_int200] = ACTIONS(569),
    [anon_sym_int208] = ACTIONS(569),
    [anon_sym_int216] = ACTIONS(569),
    [anon_sym_int224] = ACTIONS(569),
    [anon_sym_int232] = ACTIONS(569),
    [anon_sym_int240] = ACTIONS(569),
    [anon_sym_int248] = ACTIONS(569),
    [anon_sym_int256] = ACTIONS(569),
    [anon_sym_uint] = ACTIONS(569),
    [anon_sym_uint8] = ACTIONS(569),
    [anon_sym_uint16] = ACTIONS(569),
    [anon_sym_uint24] = ACTIONS(569),
    [anon_sym_uint32] = ACTIONS(569),
    [anon_sym_uint40] = ACTIONS(569),
    [anon_sym_uint48] = ACTIONS(569),
    [anon_sym_uint56] = ACTIONS(569),
    [anon_sym_uint64] = ACTIONS(569),
    [anon_sym_uint72] = ACTIONS(569),
    [anon_sym_uint80] = ACTIONS(569),
    [anon_sym_uint88] = ACTIONS(569),
    [anon_sym_uint96] = ACTIONS(569),
    [anon_sym_uint104] = ACTIONS(569),
    [anon_sym_uint112] = ACTIONS(569),
    [anon_sym_uint120] = ACTIONS(569),
    [anon_sym_uint128] = ACTIONS(569),
    [anon_sym_uint136] = ACTIONS(569),
    [anon_sym_uint144] = ACTIONS(569),
    [anon_sym_uint152] = ACTIONS(569),
    [anon_sym_uint160] = ACTIONS(569),
    [anon_sym_uint168] = ACTIONS(569),
    [anon_sym_uint176] = ACTIONS(569),
    [anon_sym_uint184] = ACTIONS(569),
    [anon_sym_uint192] = ACTIONS(569),
    [anon_sym_uint200] = ACTIONS(569),
    [anon_sym_uint208] = ACTIONS(569),
    [anon_sym_uint216] = ACTIONS(569),
    [anon_sym_uint224] = ACTIONS(569),
    [anon_sym_uint232] = ACTIONS(569),
    [anon_sym_uint240] = ACTIONS(569),
    [anon_sym_uint248] = ACTIONS(569),
    [anon_sym_uint256] = ACTIONS(569),
    [anon_sym_bytes] = ACTIONS(569),
    [anon_sym_bytes1] = ACTIONS(569),
    [anon_sym_bytes2] = ACTIONS(569),
    [anon_sym_bytes3] = ACTIONS(569),
    [anon_sym_bytes4] = ACTIONS(569),
    [anon_sym_bytes5] = ACTIONS(569),
    [anon_sym_bytes6] = ACTIONS(569),
    [anon_sym_bytes7] = ACTIONS(569),
    [anon_sym_bytes8] = ACTIONS(569),
    [anon_sym_bytes9] = ACTIONS(569),
    [anon_sym_bytes10] = ACTIONS(569),
    [anon_sym_bytes11] = ACTIONS(569),
    [anon_sym_bytes12] = ACTIONS(569),
    [anon_sym_bytes13] = ACTIONS(569),
    [anon_sym_bytes14] = ACTIONS(569),
    [anon_sym_bytes15] = ACTIONS(569),
    [anon_sym_bytes16] = ACTIONS(569),
    [anon_sym_bytes17] = ACTIONS(569),
    [anon_sym_bytes18] = ACTIONS(569),
    [anon_sym_bytes19] = ACTIONS(569),
    [anon_sym_bytes20] = ACTIONS(569),
    [anon_sym_bytes21] = ACTIONS(569),
    [anon_sym_bytes22] = ACTIONS(569),
    [anon_sym_bytes23] = ACTIONS(569),
    [anon_sym_bytes24] = ACTIONS(569),
    [anon_sym_bytes25] = ACTIONS(569),
    [anon_sym_bytes26] = ACTIONS(569),
    [anon_sym_bytes27] = ACTIONS(569),
    [anon_sym_bytes28] = ACTIONS(569),
    [anon_sym_bytes29] = ACTIONS(569),
    [anon_sym_bytes30] = ACTIONS(569),
    [anon_sym_bytes31] = ACTIONS(569),
    [anon_sym_bytes32] = ACTIONS(569),
    [anon_sym_fixed] = ACTIONS(569),
    [aux_sym__fixed_token1] = ACTIONS(569),
    [anon_sym_ufixed] = ACTIONS(569),
    [aux_sym__ufixed_token1] = ACTIONS(569),
    [aux_sym__decimal_number_token1] = ACTIONS(569),
    [aux_sym__decimal_number_token2] = ACTIONS(571),
    [aux_sym__hex_number_token1] = ACTIONS(571),
    [anon_sym_unicode] = ACTIONS(569),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(125)] = {
    [sym_struct_member] = STATE(125),
    [sym_type_name] = STATE(829),
    [sym__array_type] = STATE(380),
    [sym__function_type] = STATE(379),
    [sym_user_defined_type] = STATE(380),
    [sym__identifier_path] = STATE(367),
    [sym__mapping] = STATE(381),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [aux_sym_struct_body_repeat1] = STATE(125),
    [sym_identifier] = ACTIONS(573),
    [anon_sym_RBRACE] = ACTIONS(576),
    [anon_sym_function] = ACTIONS(578),
    [anon_sym_byte] = ACTIONS(581),
    [anon_sym_address] = ACTIONS(584),
    [anon_sym_var] = ACTIONS(581),
    [anon_sym_mapping] = ACTIONS(587),
    [anon_sym_bool] = ACTIONS(581),
    [anon_sym_string] = ACTIONS(581),
    [anon_sym_int] = ACTIONS(581),
    [anon_sym_int8] = ACTIONS(581),
    [anon_sym_int16] = ACTIONS(581),
    [anon_sym_int24] = ACTIONS(581),
    [anon_sym_int32] = ACTIONS(581),
    [anon_sym_int40] = ACTIONS(581),
    [anon_sym_int48] = ACTIONS(581),
    [anon_sym_int56] = ACTIONS(581),
    [anon_sym_int64] = ACTIONS(581),
    [anon_sym_int72] = ACTIONS(581),
    [anon_sym_int80] = ACTIONS(581),
    [anon_sym_int88] = ACTIONS(581),
    [anon_sym_int96] = ACTIONS(581),
    [anon_sym_int104] = ACTIONS(581),
    [anon_sym_int112] = ACTIONS(581),
    [anon_sym_int120] = ACTIONS(581),
    [anon_sym_int128] = ACTIONS(581),
    [anon_sym_int136] = ACTIONS(581),
    [anon_sym_int144] = ACTIONS(581),
    [anon_sym_int152] = ACTIONS(581),
    [anon_sym_int160] = ACTIONS(581),
    [anon_sym_int168] = ACTIONS(581),
    [anon_sym_int176] = ACTIONS(581),
    [anon_sym_int184] = ACTIONS(581),
    [anon_sym_int192] = ACTIONS(581),
    [anon_sym_int200] = ACTIONS(581),
    [anon_sym_int208] = ACTIONS(581),
    [anon_sym_int216] = ACTIONS(581),
    [anon_sym_int224] = ACTIONS(581),
    [anon_sym_int232] = ACTIONS(581),
    [anon_sym_int240] = ACTIONS(581),
    [anon_sym_int248] = ACTIONS(581),
    [anon_sym_int256] = ACTIONS(581),
    [anon_sym_uint] = ACTIONS(581),
    [anon_sym_uint8] = ACTIONS(581),
    [anon_sym_uint16] = ACTIONS(581),
    [anon_sym_uint24] = ACTIONS(581),
    [anon_sym_uint32] = ACTIONS(581),
    [anon_sym_uint40] = ACTIONS(581),
    [anon_sym_uint48] = ACTIONS(581),
    [anon_sym_uint56] = ACTIONS(581),
    [anon_sym_uint64] = ACTIONS(581),
    [anon_sym_uint72] = ACTIONS(581),
    [anon_sym_uint80] = ACTIONS(581),
    [anon_sym_uint88] = ACTIONS(581),
    [anon_sym_uint96] = ACTIONS(581),
    [anon_sym_uint104] = ACTIONS(581),
    [anon_sym_uint112] = ACTIONS(581),
    [anon_sym_uint120] = ACTIONS(581),
    [anon_sym_uint128] = ACTIONS(581),
    [anon_sym_uint136] = ACTIONS(581),
    [anon_sym_uint144] = ACTIONS(581),
    [anon_sym_uint152] = ACTIONS(581),
    [anon_sym_uint160] = ACTIONS(581),
    [anon_sym_uint168] = ACTIONS(581),
    [anon_sym_uint176] = ACTIONS(581),
    [anon_sym_uint184] = ACTIONS(581),
    [anon_sym_uint192] = ACTIONS(581),
    [anon_sym_uint200] = ACTIONS(581),
    [anon_sym_uint208] = ACTIONS(581),
    [anon_sym_uint216] = ACTIONS(581),
    [anon_sym_uint224] = ACTIONS(581),
    [anon_sym_uint232] = ACTIONS(581),
    [anon_sym_uint240] = ACTIONS(581),
    [anon_sym_uint248] = ACTIONS(581),
    [anon_sym_uint256] = ACTIONS(581),
    [anon_sym_bytes] = ACTIONS(581),
    [anon_sym_bytes1] = ACTIONS(581),
    [anon_sym_bytes2] = ACTIONS(581),
    [anon_sym_bytes3] = ACTIONS(581),
    [anon_sym_bytes4] = ACTIONS(581),
    [anon_sym_bytes5] = ACTIONS(581),
    [anon_sym_bytes6] = ACTIONS(581),
    [anon_sym_bytes7] = ACTIONS(581),
    [anon_sym_bytes8] = ACTIONS(581),
    [anon_sym_bytes9] = ACTIONS(581),
    [anon_sym_bytes10] = ACTIONS(581),
    [anon_sym_bytes11] = ACTIONS(581),
    [anon_sym_bytes12] = ACTIONS(581),
    [anon_sym_bytes13] = ACTIONS(581),
    [anon_sym_bytes14] = ACTIONS(581),
    [anon_sym_bytes15] = ACTIONS(581),
    [anon_sym_bytes16] = ACTIONS(581),
    [anon_sym_bytes17] = ACTIONS(581),
    [anon_sym_bytes18] = ACTIONS(581),
    [anon_sym_bytes19] = ACTIONS(581),
    [anon_sym_bytes20] = ACTIONS(581),
    [anon_sym_bytes21] = ACTIONS(581),
    [anon_sym_bytes22] = ACTIONS(581),
    [anon_sym_bytes23] = ACTIONS(581),
    [anon_sym_bytes24] = ACTIONS(581),
    [anon_sym_bytes25] = ACTIONS(581),
    [anon_sym_bytes26] = ACTIONS(581),
    [anon_sym_bytes27] = ACTIONS(581),
    [anon_sym_bytes28] = ACTIONS(581),
    [anon_sym_bytes29] = ACTIONS(581),
    [anon_sym_bytes30] = ACTIONS(581),
    [anon_sym_bytes31] = ACTIONS(581),
    [anon_sym_bytes32] = ACTIONS(581),
    [anon_sym_fixed] = ACTIONS(581),
    [aux_sym__fixed_token1] = ACTIONS(581),
    [anon_sym_ufixed] = ACTIONS(581),
    [aux_sym__ufixed_token1] = ACTIONS(581),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(126)] = {
    [sym_variable_declaration] = STATE(859),
    [sym_type_name] = STATE(578),
    [sym__array_type] = STATE(380),
    [sym__function_type] = STATE(379),
    [sym_user_defined_type] = STATE(380),
    [sym__identifier_path] = STATE(367),
    [sym__mapping] = STATE(381),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym_identifier] = ACTIONS(7),
    [anon_sym_COMMA] = ACTIONS(590),
    [anon_sym_RPAREN] = ACTIONS(592),
    [anon_sym_function] = ACTIONS(75),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_mapping] = ACTIONS(39),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(127)] = {
    [sym_variable_declaration] = STATE(859),
    [sym_type_name] = STATE(578),
    [sym__array_type] = STATE(380),
    [sym__function_type] = STATE(379),
    [sym_user_defined_type] = STATE(380),
    [sym__identifier_path] = STATE(367),
    [sym__mapping] = STATE(381),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym_identifier] = ACTIONS(7),
    [anon_sym_COMMA] = ACTIONS(590),
    [anon_sym_RPAREN] = ACTIONS(590),
    [anon_sym_function] = ACTIONS(75),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_mapping] = ACTIONS(39),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(128)] = {
    [sym_variable_declaration] = STATE(859),
    [sym_type_name] = STATE(578),
    [sym__array_type] = STATE(380),
    [sym__function_type] = STATE(379),
    [sym_user_defined_type] = STATE(380),
    [sym__identifier_path] = STATE(367),
    [sym__mapping] = STATE(381),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym_identifier] = ACTIONS(7),
    [anon_sym_COMMA] = ACTIONS(590),
    [anon_sym_RPAREN] = ACTIONS(594),
    [anon_sym_function] = ACTIONS(75),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_mapping] = ACTIONS(39),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(129)] = {
    [sym_type_name] = STATE(545),
    [sym__array_type] = STATE(380),
    [sym__function_type] = STATE(379),
    [sym__nameless_parameter] = STATE(655),
    [sym_parameter] = STATE(710),
    [sym_user_defined_type] = STATE(380),
    [sym__identifier_path] = STATE(367),
    [sym__mapping] = STATE(381),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym_identifier] = ACTIONS(7),
    [anon_sym_RPAREN] = ACTIONS(596),
    [anon_sym_function] = ACTIONS(75),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_mapping] = ACTIONS(39),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(130)] = {
    [sym_struct_member] = STATE(125),
    [sym_type_name] = STATE(829),
    [sym__array_type] = STATE(380),
    [sym__function_type] = STATE(379),
    [sym_user_defined_type] = STATE(380),
    [sym__identifier_path] = STATE(367),
    [sym__mapping] = STATE(381),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [aux_sym_struct_body_repeat1] = STATE(125),
    [sym_identifier] = ACTIONS(7),
    [anon_sym_RBRACE] = ACTIONS(598),
    [anon_sym_function] = ACTIONS(75),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_mapping] = ACTIONS(39),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(131)] = {
    [sym_struct_member] = STATE(125),
    [sym_type_name] = STATE(829),
    [sym__array_type] = STATE(380),
    [sym__function_type] = STATE(379),
    [sym_user_defined_type] = STATE(380),
    [sym__identifier_path] = STATE(367),
    [sym__mapping] = STATE(381),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [aux_sym_struct_body_repeat1] = STATE(125),
    [sym_identifier] = ACTIONS(7),
    [anon_sym_RBRACE] = ACTIONS(600),
    [anon_sym_function] = ACTIONS(75),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_mapping] = ACTIONS(39),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(132)] = {
    [sym_any_source_type] = STATE(713),
    [sym_type_name] = STATE(619),
    [sym__array_type] = STATE(380),
    [sym__function_type] = STATE(379),
    [sym_user_defined_type] = STATE(380),
    [sym__identifier_path] = STATE(367),
    [sym__mapping] = STATE(381),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym_identifier] = ACTIONS(7),
    [anon_sym_STAR] = ACTIONS(602),
    [anon_sym_function] = ACTIONS(75),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_mapping] = ACTIONS(39),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(133)] = {
    [sym_event_parameter] = STATE(808),
    [sym_type_name] = STATE(560),
    [sym__array_type] = STATE(380),
    [sym__function_type] = STATE(379),
    [sym_user_defined_type] = STATE(380),
    [sym__identifier_path] = STATE(367),
    [sym__mapping] = STATE(381),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym_identifier] = ACTIONS(7),
    [anon_sym_RPAREN] = ACTIONS(604),
    [anon_sym_function] = ACTIONS(75),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_mapping] = ACTIONS(39),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(134)] = {
    [sym_any_source_type] = STATE(755),
    [sym_type_name] = STATE(586),
    [sym__array_type] = STATE(380),
    [sym__function_type] = STATE(379),
    [sym_user_defined_type] = STATE(380),
    [sym__identifier_path] = STATE(367),
    [sym__mapping] = STATE(381),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym_identifier] = ACTIONS(7),
    [anon_sym_STAR] = ACTIONS(602),
    [anon_sym_function] = ACTIONS(75),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_mapping] = ACTIONS(39),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(135)] = {
    [sym_any_source_type] = STATE(683),
    [sym_type_name] = STATE(633),
    [sym__array_type] = STATE(380),
    [sym__function_type] = STATE(379),
    [sym_user_defined_type] = STATE(380),
    [sym__identifier_path] = STATE(367),
    [sym__mapping] = STATE(381),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym_identifier] = ACTIONS(7),
    [anon_sym_STAR] = ACTIONS(602),
    [anon_sym_function] = ACTIONS(75),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_mapping] = ACTIONS(39),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(136)] = {
    [sym_type_name] = STATE(542),
    [sym__array_type] = STATE(380),
    [sym__function_type] = STATE(379),
    [sym_parameter] = STATE(845),
    [sym_user_defined_type] = STATE(380),
    [sym__identifier_path] = STATE(367),
    [sym__mapping] = STATE(381),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym_identifier] = ACTIONS(7),
    [anon_sym_RPAREN] = ACTIONS(606),
    [anon_sym_function] = ACTIONS(75),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_mapping] = ACTIONS(39),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(137)] = {
    [sym_type_name] = STATE(542),
    [sym__array_type] = STATE(380),
    [sym__function_type] = STATE(379),
    [sym_parameter] = STATE(845),
    [sym_user_defined_type] = STATE(380),
    [sym__identifier_path] = STATE(367),
    [sym__mapping] = STATE(381),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym_identifier] = ACTIONS(7),
    [anon_sym_RPAREN] = ACTIONS(608),
    [anon_sym_function] = ACTIONS(75),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_mapping] = ACTIONS(39),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(138)] = {
    [sym_type_name] = STATE(548),
    [sym__array_type] = STATE(380),
    [sym__function_type] = STATE(379),
    [sym__nameless_parameter] = STATE(770),
    [sym_user_defined_type] = STATE(380),
    [sym__identifier_path] = STATE(367),
    [sym__mapping] = STATE(381),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym_identifier] = ACTIONS(7),
    [anon_sym_RPAREN] = ACTIONS(610),
    [anon_sym_function] = ACTIONS(75),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_mapping] = ACTIONS(39),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(139)] = {
    [sym_struct_member] = STATE(130),
    [sym_type_name] = STATE(829),
    [sym__array_type] = STATE(380),
    [sym__function_type] = STATE(379),
    [sym_user_defined_type] = STATE(380),
    [sym__identifier_path] = STATE(367),
    [sym__mapping] = STATE(381),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [aux_sym_struct_body_repeat1] = STATE(130),
    [sym_identifier] = ACTIONS(7),
    [anon_sym_function] = ACTIONS(75),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_mapping] = ACTIONS(39),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(140)] = {
    [sym_event_parameter] = STATE(734),
    [sym_type_name] = STATE(560),
    [sym__array_type] = STATE(380),
    [sym__function_type] = STATE(379),
    [sym_user_defined_type] = STATE(380),
    [sym__identifier_path] = STATE(367),
    [sym__mapping] = STATE(381),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym_identifier] = ACTIONS(7),
    [anon_sym_RPAREN] = ACTIONS(612),
    [anon_sym_function] = ACTIONS(75),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_mapping] = ACTIONS(39),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(141)] = {
    [sym_event_parameter] = STATE(808),
    [sym_type_name] = STATE(560),
    [sym__array_type] = STATE(380),
    [sym__function_type] = STATE(379),
    [sym_user_defined_type] = STATE(380),
    [sym__identifier_path] = STATE(367),
    [sym__mapping] = STATE(381),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym_identifier] = ACTIONS(7),
    [anon_sym_RPAREN] = ACTIONS(614),
    [anon_sym_function] = ACTIONS(75),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_mapping] = ACTIONS(39),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(142)] = {
    [sym_any_source_type] = STATE(733),
    [sym_type_name] = STATE(628),
    [sym__array_type] = STATE(380),
    [sym__function_type] = STATE(379),
    [sym_user_defined_type] = STATE(380),
    [sym__identifier_path] = STATE(367),
    [sym__mapping] = STATE(381),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym_identifier] = ACTIONS(7),
    [anon_sym_STAR] = ACTIONS(602),
    [anon_sym_function] = ACTIONS(75),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_mapping] = ACTIONS(39),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(143)] = {
    [sym_any_source_type] = STATE(711),
    [sym_type_name] = STATE(591),
    [sym__array_type] = STATE(380),
    [sym__function_type] = STATE(379),
    [sym_user_defined_type] = STATE(380),
    [sym__identifier_path] = STATE(367),
    [sym__mapping] = STATE(381),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym_identifier] = ACTIONS(7),
    [anon_sym_STAR] = ACTIONS(602),
    [anon_sym_function] = ACTIONS(75),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_mapping] = ACTIONS(39),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(144)] = {
    [sym_type_name] = STATE(542),
    [sym__array_type] = STATE(380),
    [sym__function_type] = STATE(379),
    [sym_parameter] = STATE(710),
    [sym_user_defined_type] = STATE(380),
    [sym__identifier_path] = STATE(367),
    [sym__mapping] = STATE(381),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym_identifier] = ACTIONS(7),
    [anon_sym_RPAREN] = ACTIONS(596),
    [anon_sym_function] = ACTIONS(75),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_mapping] = ACTIONS(39),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(145)] = {
    [sym_error_parameter] = STATE(747),
    [sym_type_name] = STATE(638),
    [sym__array_type] = STATE(380),
    [sym__function_type] = STATE(379),
    [sym_user_defined_type] = STATE(380),
    [sym__identifier_path] = STATE(367),
    [sym__mapping] = STATE(381),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym_identifier] = ACTIONS(7),
    [anon_sym_RPAREN] = ACTIONS(616),
    [anon_sym_function] = ACTIONS(75),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_mapping] = ACTIONS(39),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(146)] = {
    [sym_error_parameter] = STATE(794),
    [sym_type_name] = STATE(638),
    [sym__array_type] = STATE(380),
    [sym__function_type] = STATE(379),
    [sym_user_defined_type] = STATE(380),
    [sym__identifier_path] = STATE(367),
    [sym__mapping] = STATE(381),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym_identifier] = ACTIONS(7),
    [anon_sym_RPAREN] = ACTIONS(618),
    [anon_sym_function] = ACTIONS(75),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_mapping] = ACTIONS(39),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(147)] = {
    [sym_any_source_type] = STATE(728),
    [sym_type_name] = STATE(625),
    [sym__array_type] = STATE(380),
    [sym__function_type] = STATE(379),
    [sym_user_defined_type] = STATE(380),
    [sym__identifier_path] = STATE(367),
    [sym__mapping] = STATE(381),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym_identifier] = ACTIONS(7),
    [anon_sym_STAR] = ACTIONS(602),
    [anon_sym_function] = ACTIONS(75),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_mapping] = ACTIONS(39),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(148)] = {
    [sym_error_parameter] = STATE(794),
    [sym_type_name] = STATE(638),
    [sym__array_type] = STATE(380),
    [sym__function_type] = STATE(379),
    [sym_user_defined_type] = STATE(380),
    [sym__identifier_path] = STATE(367),
    [sym__mapping] = STATE(381),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym_identifier] = ACTIONS(7),
    [anon_sym_RPAREN] = ACTIONS(620),
    [anon_sym_function] = ACTIONS(75),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_mapping] = ACTIONS(39),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(149)] = {
    [sym_any_source_type] = STATE(731),
    [sym_type_name] = STATE(627),
    [sym__array_type] = STATE(380),
    [sym__function_type] = STATE(379),
    [sym_user_defined_type] = STATE(380),
    [sym__identifier_path] = STATE(367),
    [sym__mapping] = STATE(381),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym_identifier] = ACTIONS(7),
    [anon_sym_STAR] = ACTIONS(602),
    [anon_sym_function] = ACTIONS(75),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_mapping] = ACTIONS(39),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(150)] = {
    [sym_any_source_type] = STATE(736),
    [sym_type_name] = STATE(629),
    [sym__array_type] = STATE(380),
    [sym__function_type] = STATE(379),
    [sym_user_defined_type] = STATE(380),
    [sym__identifier_path] = STATE(367),
    [sym__mapping] = STATE(381),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym_identifier] = ACTIONS(7),
    [anon_sym_STAR] = ACTIONS(602),
    [anon_sym_function] = ACTIONS(75),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_mapping] = ACTIONS(39),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(151)] = {
    [sym_struct_member] = STATE(131),
    [sym_type_name] = STATE(829),
    [sym__array_type] = STATE(380),
    [sym__function_type] = STATE(379),
    [sym_user_defined_type] = STATE(380),
    [sym__identifier_path] = STATE(367),
    [sym__mapping] = STATE(381),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [aux_sym_struct_body_repeat1] = STATE(131),
    [sym_identifier] = ACTIONS(7),
    [anon_sym_function] = ACTIONS(75),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_mapping] = ACTIONS(39),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(152)] = {
    [sym_type_name] = STATE(548),
    [sym__array_type] = STATE(380),
    [sym__function_type] = STATE(379),
    [sym__nameless_parameter] = STATE(770),
    [sym_user_defined_type] = STATE(380),
    [sym__identifier_path] = STATE(367),
    [sym__mapping] = STATE(381),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym_identifier] = ACTIONS(7),
    [anon_sym_RPAREN] = ACTIONS(622),
    [anon_sym_function] = ACTIONS(75),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_mapping] = ACTIONS(39),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(153)] = {
    [sym_error_parameter] = STATE(643),
    [sym_type_name] = STATE(638),
    [sym__array_type] = STATE(380),
    [sym__function_type] = STATE(379),
    [sym_user_defined_type] = STATE(380),
    [sym__identifier_path] = STATE(367),
    [sym__mapping] = STATE(381),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym_identifier] = ACTIONS(7),
    [anon_sym_RPAREN] = ACTIONS(624),
    [anon_sym_function] = ACTIONS(75),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_mapping] = ACTIONS(39),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(154)] = {
    [sym_error_parameter] = STATE(794),
    [sym_type_name] = STATE(638),
    [sym__array_type] = STATE(380),
    [sym__function_type] = STATE(379),
    [sym_user_defined_type] = STATE(380),
    [sym__identifier_path] = STATE(367),
    [sym__mapping] = STATE(381),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym_identifier] = ACTIONS(7),
    [anon_sym_RPAREN] = ACTIONS(626),
    [anon_sym_function] = ACTIONS(75),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_mapping] = ACTIONS(39),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(155)] = {
    [sym_error_parameter] = STATE(794),
    [sym_type_name] = STATE(638),
    [sym__array_type] = STATE(380),
    [sym__function_type] = STATE(379),
    [sym_user_defined_type] = STATE(380),
    [sym__identifier_path] = STATE(367),
    [sym__mapping] = STATE(381),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym_identifier] = ACTIONS(7),
    [anon_sym_RPAREN] = ACTIONS(628),
    [anon_sym_function] = ACTIONS(75),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_mapping] = ACTIONS(39),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(156)] = {
    [ts_builtin_sym_end] = ACTIONS(630),
    [sym_identifier] = ACTIONS(632),
    [anon_sym_pragma] = ACTIONS(632),
    [anon_sym_import] = ACTIONS(632),
    [anon_sym_type] = ACTIONS(632),
    [anon_sym_abstract] = ACTIONS(632),
    [anon_sym_contract] = ACTIONS(632),
    [anon_sym_error] = ACTIONS(632),
    [anon_sym_interface] = ACTIONS(632),
    [anon_sym_library] = ACTIONS(632),
    [anon_sym_struct] = ACTIONS(632),
    [anon_sym_enum] = ACTIONS(632),
    [anon_sym_event] = ACTIONS(632),
    [anon_sym_using] = ACTIONS(632),
    [anon_sym_function] = ACTIONS(632),
    [anon_sym_byte] = ACTIONS(632),
    [anon_sym_address] = ACTIONS(632),
    [anon_sym_var] = ACTIONS(632),
    [anon_sym_mapping] = ACTIONS(632),
    [anon_sym_bool] = ACTIONS(632),
    [anon_sym_string] = ACTIONS(632),
    [anon_sym_int] = ACTIONS(632),
    [anon_sym_int8] = ACTIONS(632),
    [anon_sym_int16] = ACTIONS(632),
    [anon_sym_int24] = ACTIONS(632),
    [anon_sym_int32] = ACTIONS(632),
    [anon_sym_int40] = ACTIONS(632),
    [anon_sym_int48] = ACTIONS(632),
    [anon_sym_int56] = ACTIONS(632),
    [anon_sym_int64] = ACTIONS(632),
    [anon_sym_int72] = ACTIONS(632),
    [anon_sym_int80] = ACTIONS(632),
    [anon_sym_int88] = ACTIONS(632),
    [anon_sym_int96] = ACTIONS(632),
    [anon_sym_int104] = ACTIONS(632),
    [anon_sym_int112] = ACTIONS(632),
    [anon_sym_int120] = ACTIONS(632),
    [anon_sym_int128] = ACTIONS(632),
    [anon_sym_int136] = ACTIONS(632),
    [anon_sym_int144] = ACTIONS(632),
    [anon_sym_int152] = ACTIONS(632),
    [anon_sym_int160] = ACTIONS(632),
    [anon_sym_int168] = ACTIONS(632),
    [anon_sym_int176] = ACTIONS(632),
    [anon_sym_int184] = ACTIONS(632),
    [anon_sym_int192] = ACTIONS(632),
    [anon_sym_int200] = ACTIONS(632),
    [anon_sym_int208] = ACTIONS(632),
    [anon_sym_int216] = ACTIONS(632),
    [anon_sym_int224] = ACTIONS(632),
    [anon_sym_int232] = ACTIONS(632),
    [anon_sym_int240] = ACTIONS(632),
    [anon_sym_int248] = ACTIONS(632),
    [anon_sym_int256] = ACTIONS(632),
    [anon_sym_uint] = ACTIONS(632),
    [anon_sym_uint8] = ACTIONS(632),
    [anon_sym_uint16] = ACTIONS(632),
    [anon_sym_uint24] = ACTIONS(632),
    [anon_sym_uint32] = ACTIONS(632),
    [anon_sym_uint40] = ACTIONS(632),
    [anon_sym_uint48] = ACTIONS(632),
    [anon_sym_uint56] = ACTIONS(632),
    [anon_sym_uint64] = ACTIONS(632),
    [anon_sym_uint72] = ACTIONS(632),
    [anon_sym_uint80] = ACTIONS(632),
    [anon_sym_uint88] = ACTIONS(632),
    [anon_sym_uint96] = ACTIONS(632),
    [anon_sym_uint104] = ACTIONS(632),
    [anon_sym_uint112] = ACTIONS(632),
    [anon_sym_uint120] = ACTIONS(632),
    [anon_sym_uint128] = ACTIONS(632),
    [anon_sym_uint136] = ACTIONS(632),
    [anon_sym_uint144] = ACTIONS(632),
    [anon_sym_uint152] = ACTIONS(632),
    [anon_sym_uint160] = ACTIONS(632),
    [anon_sym_uint168] = ACTIONS(632),
    [anon_sym_uint176] = ACTIONS(632),
    [anon_sym_uint184] = ACTIONS(632),
    [anon_sym_uint192] = ACTIONS(632),
    [anon_sym_uint200] = ACTIONS(632),
    [anon_sym_uint208] = ACTIONS(632),
    [anon_sym_uint216] = ACTIONS(632),
    [anon_sym_uint224] = ACTIONS(632),
    [anon_sym_uint232] = ACTIONS(632),
    [anon_sym_uint240] = ACTIONS(632),
    [anon_sym_uint248] = ACTIONS(632),
    [anon_sym_uint256] = ACTIONS(632),
    [anon_sym_bytes] = ACTIONS(632),
    [anon_sym_bytes1] = ACTIONS(632),
    [anon_sym_bytes2] = ACTIONS(632),
    [anon_sym_bytes3] = ACTIONS(632),
    [anon_sym_bytes4] = ACTIONS(632),
    [anon_sym_bytes5] = ACTIONS(632),
    [anon_sym_bytes6] = ACTIONS(632),
    [anon_sym_bytes7] = ACTIONS(632),
    [anon_sym_bytes8] = ACTIONS(632),
    [anon_sym_bytes9] = ACTIONS(632),
    [anon_sym_bytes10] = ACTIONS(632),
    [anon_sym_bytes11] = ACTIONS(632),
    [anon_sym_bytes12] = ACTIONS(632),
    [anon_sym_bytes13] = ACTIONS(632),
    [anon_sym_bytes14] = ACTIONS(632),
    [anon_sym_bytes15] = ACTIONS(632),
    [anon_sym_bytes16] = ACTIONS(632),
    [anon_sym_bytes17] = ACTIONS(632),
    [anon_sym_bytes18] = ACTIONS(632),
    [anon_sym_bytes19] = ACTIONS(632),
    [anon_sym_bytes20] = ACTIONS(632),
    [anon_sym_bytes21] = ACTIONS(632),
    [anon_sym_bytes22] = ACTIONS(632),
    [anon_sym_bytes23] = ACTIONS(632),
    [anon_sym_bytes24] = ACTIONS(632),
    [anon_sym_bytes25] = ACTIONS(632),
    [anon_sym_bytes26] = ACTIONS(632),
    [anon_sym_bytes27] = ACTIONS(632),
    [anon_sym_bytes28] = ACTIONS(632),
    [anon_sym_bytes29] = ACTIONS(632),
    [anon_sym_bytes30] = ACTIONS(632),
    [anon_sym_bytes31] = ACTIONS(632),
    [anon_sym_bytes32] = ACTIONS(632),
    [anon_sym_fixed] = ACTIONS(632),
    [aux_sym__fixed_token1] = ACTIONS(632),
    [anon_sym_ufixed] = ACTIONS(632),
    [aux_sym__ufixed_token1] = ACTIONS(632),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(157)] = {
    [ts_builtin_sym_end] = ACTIONS(634),
    [sym_identifier] = ACTIONS(636),
    [anon_sym_pragma] = ACTIONS(636),
    [anon_sym_import] = ACTIONS(636),
    [anon_sym_type] = ACTIONS(636),
    [anon_sym_abstract] = ACTIONS(636),
    [anon_sym_contract] = ACTIONS(636),
    [anon_sym_error] = ACTIONS(636),
    [anon_sym_interface] = ACTIONS(636),
    [anon_sym_library] = ACTIONS(636),
    [anon_sym_struct] = ACTIONS(636),
    [anon_sym_enum] = ACTIONS(636),
    [anon_sym_event] = ACTIONS(636),
    [anon_sym_using] = ACTIONS(636),
    [anon_sym_function] = ACTIONS(636),
    [anon_sym_byte] = ACTIONS(636),
    [anon_sym_address] = ACTIONS(636),
    [anon_sym_var] = ACTIONS(636),
    [anon_sym_mapping] = ACTIONS(636),
    [anon_sym_bool] = ACTIONS(636),
    [anon_sym_string] = ACTIONS(636),
    [anon_sym_int] = ACTIONS(636),
    [anon_sym_int8] = ACTIONS(636),
    [anon_sym_int16] = ACTIONS(636),
    [anon_sym_int24] = ACTIONS(636),
    [anon_sym_int32] = ACTIONS(636),
    [anon_sym_int40] = ACTIONS(636),
    [anon_sym_int48] = ACTIONS(636),
    [anon_sym_int56] = ACTIONS(636),
    [anon_sym_int64] = ACTIONS(636),
    [anon_sym_int72] = ACTIONS(636),
    [anon_sym_int80] = ACTIONS(636),
    [anon_sym_int88] = ACTIONS(636),
    [anon_sym_int96] = ACTIONS(636),
    [anon_sym_int104] = ACTIONS(636),
    [anon_sym_int112] = ACTIONS(636),
    [anon_sym_int120] = ACTIONS(636),
    [anon_sym_int128] = ACTIONS(636),
    [anon_sym_int136] = ACTIONS(636),
    [anon_sym_int144] = ACTIONS(636),
    [anon_sym_int152] = ACTIONS(636),
    [anon_sym_int160] = ACTIONS(636),
    [anon_sym_int168] = ACTIONS(636),
    [anon_sym_int176] = ACTIONS(636),
    [anon_sym_int184] = ACTIONS(636),
    [anon_sym_int192] = ACTIONS(636),
    [anon_sym_int200] = ACTIONS(636),
    [anon_sym_int208] = ACTIONS(636),
    [anon_sym_int216] = ACTIONS(636),
    [anon_sym_int224] = ACTIONS(636),
    [anon_sym_int232] = ACTIONS(636),
    [anon_sym_int240] = ACTIONS(636),
    [anon_sym_int248] = ACTIONS(636),
    [anon_sym_int256] = ACTIONS(636),
    [anon_sym_uint] = ACTIONS(636),
    [anon_sym_uint8] = ACTIONS(636),
    [anon_sym_uint16] = ACTIONS(636),
    [anon_sym_uint24] = ACTIONS(636),
    [anon_sym_uint32] = ACTIONS(636),
    [anon_sym_uint40] = ACTIONS(636),
    [anon_sym_uint48] = ACTIONS(636),
    [anon_sym_uint56] = ACTIONS(636),
    [anon_sym_uint64] = ACTIONS(636),
    [anon_sym_uint72] = ACTIONS(636),
    [anon_sym_uint80] = ACTIONS(636),
    [anon_sym_uint88] = ACTIONS(636),
    [anon_sym_uint96] = ACTIONS(636),
    [anon_sym_uint104] = ACTIONS(636),
    [anon_sym_uint112] = ACTIONS(636),
    [anon_sym_uint120] = ACTIONS(636),
    [anon_sym_uint128] = ACTIONS(636),
    [anon_sym_uint136] = ACTIONS(636),
    [anon_sym_uint144] = ACTIONS(636),
    [anon_sym_uint152] = ACTIONS(636),
    [anon_sym_uint160] = ACTIONS(636),
    [anon_sym_uint168] = ACTIONS(636),
    [anon_sym_uint176] = ACTIONS(636),
    [anon_sym_uint184] = ACTIONS(636),
    [anon_sym_uint192] = ACTIONS(636),
    [anon_sym_uint200] = ACTIONS(636),
    [anon_sym_uint208] = ACTIONS(636),
    [anon_sym_uint216] = ACTIONS(636),
    [anon_sym_uint224] = ACTIONS(636),
    [anon_sym_uint232] = ACTIONS(636),
    [anon_sym_uint240] = ACTIONS(636),
    [anon_sym_uint248] = ACTIONS(636),
    [anon_sym_uint256] = ACTIONS(636),
    [anon_sym_bytes] = ACTIONS(636),
    [anon_sym_bytes1] = ACTIONS(636),
    [anon_sym_bytes2] = ACTIONS(636),
    [anon_sym_bytes3] = ACTIONS(636),
    [anon_sym_bytes4] = ACTIONS(636),
    [anon_sym_bytes5] = ACTIONS(636),
    [anon_sym_bytes6] = ACTIONS(636),
    [anon_sym_bytes7] = ACTIONS(636),
    [anon_sym_bytes8] = ACTIONS(636),
    [anon_sym_bytes9] = ACTIONS(636),
    [anon_sym_bytes10] = ACTIONS(636),
    [anon_sym_bytes11] = ACTIONS(636),
    [anon_sym_bytes12] = ACTIONS(636),
    [anon_sym_bytes13] = ACTIONS(636),
    [anon_sym_bytes14] = ACTIONS(636),
    [anon_sym_bytes15] = ACTIONS(636),
    [anon_sym_bytes16] = ACTIONS(636),
    [anon_sym_bytes17] = ACTIONS(636),
    [anon_sym_bytes18] = ACTIONS(636),
    [anon_sym_bytes19] = ACTIONS(636),
    [anon_sym_bytes20] = ACTIONS(636),
    [anon_sym_bytes21] = ACTIONS(636),
    [anon_sym_bytes22] = ACTIONS(636),
    [anon_sym_bytes23] = ACTIONS(636),
    [anon_sym_bytes24] = ACTIONS(636),
    [anon_sym_bytes25] = ACTIONS(636),
    [anon_sym_bytes26] = ACTIONS(636),
    [anon_sym_bytes27] = ACTIONS(636),
    [anon_sym_bytes28] = ACTIONS(636),
    [anon_sym_bytes29] = ACTIONS(636),
    [anon_sym_bytes30] = ACTIONS(636),
    [anon_sym_bytes31] = ACTIONS(636),
    [anon_sym_bytes32] = ACTIONS(636),
    [anon_sym_fixed] = ACTIONS(636),
    [aux_sym__fixed_token1] = ACTIONS(636),
    [anon_sym_ufixed] = ACTIONS(636),
    [aux_sym__ufixed_token1] = ACTIONS(636),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(158)] = {
    [ts_builtin_sym_end] = ACTIONS(638),
    [sym_identifier] = ACTIONS(640),
    [anon_sym_pragma] = ACTIONS(640),
    [anon_sym_import] = ACTIONS(640),
    [anon_sym_type] = ACTIONS(640),
    [anon_sym_abstract] = ACTIONS(640),
    [anon_sym_contract] = ACTIONS(640),
    [anon_sym_error] = ACTIONS(640),
    [anon_sym_interface] = ACTIONS(640),
    [anon_sym_library] = ACTIONS(640),
    [anon_sym_struct] = ACTIONS(640),
    [anon_sym_enum] = ACTIONS(640),
    [anon_sym_event] = ACTIONS(640),
    [anon_sym_using] = ACTIONS(640),
    [anon_sym_function] = ACTIONS(640),
    [anon_sym_byte] = ACTIONS(640),
    [anon_sym_address] = ACTIONS(640),
    [anon_sym_var] = ACTIONS(640),
    [anon_sym_mapping] = ACTIONS(640),
    [anon_sym_bool] = ACTIONS(640),
    [anon_sym_string] = ACTIONS(640),
    [anon_sym_int] = ACTIONS(640),
    [anon_sym_int8] = ACTIONS(640),
    [anon_sym_int16] = ACTIONS(640),
    [anon_sym_int24] = ACTIONS(640),
    [anon_sym_int32] = ACTIONS(640),
    [anon_sym_int40] = ACTIONS(640),
    [anon_sym_int48] = ACTIONS(640),
    [anon_sym_int56] = ACTIONS(640),
    [anon_sym_int64] = ACTIONS(640),
    [anon_sym_int72] = ACTIONS(640),
    [anon_sym_int80] = ACTIONS(640),
    [anon_sym_int88] = ACTIONS(640),
    [anon_sym_int96] = ACTIONS(640),
    [anon_sym_int104] = ACTIONS(640),
    [anon_sym_int112] = ACTIONS(640),
    [anon_sym_int120] = ACTIONS(640),
    [anon_sym_int128] = ACTIONS(640),
    [anon_sym_int136] = ACTIONS(640),
    [anon_sym_int144] = ACTIONS(640),
    [anon_sym_int152] = ACTIONS(640),
    [anon_sym_int160] = ACTIONS(640),
    [anon_sym_int168] = ACTIONS(640),
    [anon_sym_int176] = ACTIONS(640),
    [anon_sym_int184] = ACTIONS(640),
    [anon_sym_int192] = ACTIONS(640),
    [anon_sym_int200] = ACTIONS(640),
    [anon_sym_int208] = ACTIONS(640),
    [anon_sym_int216] = ACTIONS(640),
    [anon_sym_int224] = ACTIONS(640),
    [anon_sym_int232] = ACTIONS(640),
    [anon_sym_int240] = ACTIONS(640),
    [anon_sym_int248] = ACTIONS(640),
    [anon_sym_int256] = ACTIONS(640),
    [anon_sym_uint] = ACTIONS(640),
    [anon_sym_uint8] = ACTIONS(640),
    [anon_sym_uint16] = ACTIONS(640),
    [anon_sym_uint24] = ACTIONS(640),
    [anon_sym_uint32] = ACTIONS(640),
    [anon_sym_uint40] = ACTIONS(640),
    [anon_sym_uint48] = ACTIONS(640),
    [anon_sym_uint56] = ACTIONS(640),
    [anon_sym_uint64] = ACTIONS(640),
    [anon_sym_uint72] = ACTIONS(640),
    [anon_sym_uint80] = ACTIONS(640),
    [anon_sym_uint88] = ACTIONS(640),
    [anon_sym_uint96] = ACTIONS(640),
    [anon_sym_uint104] = ACTIONS(640),
    [anon_sym_uint112] = ACTIONS(640),
    [anon_sym_uint120] = ACTIONS(640),
    [anon_sym_uint128] = ACTIONS(640),
    [anon_sym_uint136] = ACTIONS(640),
    [anon_sym_uint144] = ACTIONS(640),
    [anon_sym_uint152] = ACTIONS(640),
    [anon_sym_uint160] = ACTIONS(640),
    [anon_sym_uint168] = ACTIONS(640),
    [anon_sym_uint176] = ACTIONS(640),
    [anon_sym_uint184] = ACTIONS(640),
    [anon_sym_uint192] = ACTIONS(640),
    [anon_sym_uint200] = ACTIONS(640),
    [anon_sym_uint208] = ACTIONS(640),
    [anon_sym_uint216] = ACTIONS(640),
    [anon_sym_uint224] = ACTIONS(640),
    [anon_sym_uint232] = ACTIONS(640),
    [anon_sym_uint240] = ACTIONS(640),
    [anon_sym_uint248] = ACTIONS(640),
    [anon_sym_uint256] = ACTIONS(640),
    [anon_sym_bytes] = ACTIONS(640),
    [anon_sym_bytes1] = ACTIONS(640),
    [anon_sym_bytes2] = ACTIONS(640),
    [anon_sym_bytes3] = ACTIONS(640),
    [anon_sym_bytes4] = ACTIONS(640),
    [anon_sym_bytes5] = ACTIONS(640),
    [anon_sym_bytes6] = ACTIONS(640),
    [anon_sym_bytes7] = ACTIONS(640),
    [anon_sym_bytes8] = ACTIONS(640),
    [anon_sym_bytes9] = ACTIONS(640),
    [anon_sym_bytes10] = ACTIONS(640),
    [anon_sym_bytes11] = ACTIONS(640),
    [anon_sym_bytes12] = ACTIONS(640),
    [anon_sym_bytes13] = ACTIONS(640),
    [anon_sym_bytes14] = ACTIONS(640),
    [anon_sym_bytes15] = ACTIONS(640),
    [anon_sym_bytes16] = ACTIONS(640),
    [anon_sym_bytes17] = ACTIONS(640),
    [anon_sym_bytes18] = ACTIONS(640),
    [anon_sym_bytes19] = ACTIONS(640),
    [anon_sym_bytes20] = ACTIONS(640),
    [anon_sym_bytes21] = ACTIONS(640),
    [anon_sym_bytes22] = ACTIONS(640),
    [anon_sym_bytes23] = ACTIONS(640),
    [anon_sym_bytes24] = ACTIONS(640),
    [anon_sym_bytes25] = ACTIONS(640),
    [anon_sym_bytes26] = ACTIONS(640),
    [anon_sym_bytes27] = ACTIONS(640),
    [anon_sym_bytes28] = ACTIONS(640),
    [anon_sym_bytes29] = ACTIONS(640),
    [anon_sym_bytes30] = ACTIONS(640),
    [anon_sym_bytes31] = ACTIONS(640),
    [anon_sym_bytes32] = ACTIONS(640),
    [anon_sym_fixed] = ACTIONS(640),
    [aux_sym__fixed_token1] = ACTIONS(640),
    [anon_sym_ufixed] = ACTIONS(640),
    [aux_sym__ufixed_token1] = ACTIONS(640),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(159)] = {
    [sym_type_name] = STATE(548),
    [sym__array_type] = STATE(380),
    [sym__function_type] = STATE(379),
    [sym__nameless_parameter] = STATE(655),
    [sym_user_defined_type] = STATE(380),
    [sym__identifier_path] = STATE(367),
    [sym__mapping] = STATE(381),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym_identifier] = ACTIONS(7),
    [anon_sym_function] = ACTIONS(75),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_mapping] = ACTIONS(39),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(160)] = {
    [ts_builtin_sym_end] = ACTIONS(642),
    [sym_identifier] = ACTIONS(644),
    [anon_sym_pragma] = ACTIONS(644),
    [anon_sym_import] = ACTIONS(644),
    [anon_sym_type] = ACTIONS(644),
    [anon_sym_abstract] = ACTIONS(644),
    [anon_sym_contract] = ACTIONS(644),
    [anon_sym_error] = ACTIONS(644),
    [anon_sym_interface] = ACTIONS(644),
    [anon_sym_library] = ACTIONS(644),
    [anon_sym_struct] = ACTIONS(644),
    [anon_sym_enum] = ACTIONS(644),
    [anon_sym_event] = ACTIONS(644),
    [anon_sym_using] = ACTIONS(644),
    [anon_sym_function] = ACTIONS(644),
    [anon_sym_byte] = ACTIONS(644),
    [anon_sym_address] = ACTIONS(644),
    [anon_sym_var] = ACTIONS(644),
    [anon_sym_mapping] = ACTIONS(644),
    [anon_sym_bool] = ACTIONS(644),
    [anon_sym_string] = ACTIONS(644),
    [anon_sym_int] = ACTIONS(644),
    [anon_sym_int8] = ACTIONS(644),
    [anon_sym_int16] = ACTIONS(644),
    [anon_sym_int24] = ACTIONS(644),
    [anon_sym_int32] = ACTIONS(644),
    [anon_sym_int40] = ACTIONS(644),
    [anon_sym_int48] = ACTIONS(644),
    [anon_sym_int56] = ACTIONS(644),
    [anon_sym_int64] = ACTIONS(644),
    [anon_sym_int72] = ACTIONS(644),
    [anon_sym_int80] = ACTIONS(644),
    [anon_sym_int88] = ACTIONS(644),
    [anon_sym_int96] = ACTIONS(644),
    [anon_sym_int104] = ACTIONS(644),
    [anon_sym_int112] = ACTIONS(644),
    [anon_sym_int120] = ACTIONS(644),
    [anon_sym_int128] = ACTIONS(644),
    [anon_sym_int136] = ACTIONS(644),
    [anon_sym_int144] = ACTIONS(644),
    [anon_sym_int152] = ACTIONS(644),
    [anon_sym_int160] = ACTIONS(644),
    [anon_sym_int168] = ACTIONS(644),
    [anon_sym_int176] = ACTIONS(644),
    [anon_sym_int184] = ACTIONS(644),
    [anon_sym_int192] = ACTIONS(644),
    [anon_sym_int200] = ACTIONS(644),
    [anon_sym_int208] = ACTIONS(644),
    [anon_sym_int216] = ACTIONS(644),
    [anon_sym_int224] = ACTIONS(644),
    [anon_sym_int232] = ACTIONS(644),
    [anon_sym_int240] = ACTIONS(644),
    [anon_sym_int248] = ACTIONS(644),
    [anon_sym_int256] = ACTIONS(644),
    [anon_sym_uint] = ACTIONS(644),
    [anon_sym_uint8] = ACTIONS(644),
    [anon_sym_uint16] = ACTIONS(644),
    [anon_sym_uint24] = ACTIONS(644),
    [anon_sym_uint32] = ACTIONS(644),
    [anon_sym_uint40] = ACTIONS(644),
    [anon_sym_uint48] = ACTIONS(644),
    [anon_sym_uint56] = ACTIONS(644),
    [anon_sym_uint64] = ACTIONS(644),
    [anon_sym_uint72] = ACTIONS(644),
    [anon_sym_uint80] = ACTIONS(644),
    [anon_sym_uint88] = ACTIONS(644),
    [anon_sym_uint96] = ACTIONS(644),
    [anon_sym_uint104] = ACTIONS(644),
    [anon_sym_uint112] = ACTIONS(644),
    [anon_sym_uint120] = ACTIONS(644),
    [anon_sym_uint128] = ACTIONS(644),
    [anon_sym_uint136] = ACTIONS(644),
    [anon_sym_uint144] = ACTIONS(644),
    [anon_sym_uint152] = ACTIONS(644),
    [anon_sym_uint160] = ACTIONS(644),
    [anon_sym_uint168] = ACTIONS(644),
    [anon_sym_uint176] = ACTIONS(644),
    [anon_sym_uint184] = ACTIONS(644),
    [anon_sym_uint192] = ACTIONS(644),
    [anon_sym_uint200] = ACTIONS(644),
    [anon_sym_uint208] = ACTIONS(644),
    [anon_sym_uint216] = ACTIONS(644),
    [anon_sym_uint224] = ACTIONS(644),
    [anon_sym_uint232] = ACTIONS(644),
    [anon_sym_uint240] = ACTIONS(644),
    [anon_sym_uint248] = ACTIONS(644),
    [anon_sym_uint256] = ACTIONS(644),
    [anon_sym_bytes] = ACTIONS(644),
    [anon_sym_bytes1] = ACTIONS(644),
    [anon_sym_bytes2] = ACTIONS(644),
    [anon_sym_bytes3] = ACTIONS(644),
    [anon_sym_bytes4] = ACTIONS(644),
    [anon_sym_bytes5] = ACTIONS(644),
    [anon_sym_bytes6] = ACTIONS(644),
    [anon_sym_bytes7] = ACTIONS(644),
    [anon_sym_bytes8] = ACTIONS(644),
    [anon_sym_bytes9] = ACTIONS(644),
    [anon_sym_bytes10] = ACTIONS(644),
    [anon_sym_bytes11] = ACTIONS(644),
    [anon_sym_bytes12] = ACTIONS(644),
    [anon_sym_bytes13] = ACTIONS(644),
    [anon_sym_bytes14] = ACTIONS(644),
    [anon_sym_bytes15] = ACTIONS(644),
    [anon_sym_bytes16] = ACTIONS(644),
    [anon_sym_bytes17] = ACTIONS(644),
    [anon_sym_bytes18] = ACTIONS(644),
    [anon_sym_bytes19] = ACTIONS(644),
    [anon_sym_bytes20] = ACTIONS(644),
    [anon_sym_bytes21] = ACTIONS(644),
    [anon_sym_bytes22] = ACTIONS(644),
    [anon_sym_bytes23] = ACTIONS(644),
    [anon_sym_bytes24] = ACTIONS(644),
    [anon_sym_bytes25] = ACTIONS(644),
    [anon_sym_bytes26] = ACTIONS(644),
    [anon_sym_bytes27] = ACTIONS(644),
    [anon_sym_bytes28] = ACTIONS(644),
    [anon_sym_bytes29] = ACTIONS(644),
    [anon_sym_bytes30] = ACTIONS(644),
    [anon_sym_bytes31] = ACTIONS(644),
    [anon_sym_bytes32] = ACTIONS(644),
    [anon_sym_fixed] = ACTIONS(644),
    [aux_sym__fixed_token1] = ACTIONS(644),
    [anon_sym_ufixed] = ACTIONS(644),
    [aux_sym__ufixed_token1] = ACTIONS(644),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(161)] = {
    [ts_builtin_sym_end] = ACTIONS(646),
    [sym_identifier] = ACTIONS(648),
    [anon_sym_pragma] = ACTIONS(648),
    [anon_sym_import] = ACTIONS(648),
    [anon_sym_type] = ACTIONS(648),
    [anon_sym_abstract] = ACTIONS(648),
    [anon_sym_contract] = ACTIONS(648),
    [anon_sym_error] = ACTIONS(648),
    [anon_sym_interface] = ACTIONS(648),
    [anon_sym_library] = ACTIONS(648),
    [anon_sym_struct] = ACTIONS(648),
    [anon_sym_enum] = ACTIONS(648),
    [anon_sym_event] = ACTIONS(648),
    [anon_sym_using] = ACTIONS(648),
    [anon_sym_function] = ACTIONS(648),
    [anon_sym_byte] = ACTIONS(648),
    [anon_sym_address] = ACTIONS(648),
    [anon_sym_var] = ACTIONS(648),
    [anon_sym_mapping] = ACTIONS(648),
    [anon_sym_bool] = ACTIONS(648),
    [anon_sym_string] = ACTIONS(648),
    [anon_sym_int] = ACTIONS(648),
    [anon_sym_int8] = ACTIONS(648),
    [anon_sym_int16] = ACTIONS(648),
    [anon_sym_int24] = ACTIONS(648),
    [anon_sym_int32] = ACTIONS(648),
    [anon_sym_int40] = ACTIONS(648),
    [anon_sym_int48] = ACTIONS(648),
    [anon_sym_int56] = ACTIONS(648),
    [anon_sym_int64] = ACTIONS(648),
    [anon_sym_int72] = ACTIONS(648),
    [anon_sym_int80] = ACTIONS(648),
    [anon_sym_int88] = ACTIONS(648),
    [anon_sym_int96] = ACTIONS(648),
    [anon_sym_int104] = ACTIONS(648),
    [anon_sym_int112] = ACTIONS(648),
    [anon_sym_int120] = ACTIONS(648),
    [anon_sym_int128] = ACTIONS(648),
    [anon_sym_int136] = ACTIONS(648),
    [anon_sym_int144] = ACTIONS(648),
    [anon_sym_int152] = ACTIONS(648),
    [anon_sym_int160] = ACTIONS(648),
    [anon_sym_int168] = ACTIONS(648),
    [anon_sym_int176] = ACTIONS(648),
    [anon_sym_int184] = ACTIONS(648),
    [anon_sym_int192] = ACTIONS(648),
    [anon_sym_int200] = ACTIONS(648),
    [anon_sym_int208] = ACTIONS(648),
    [anon_sym_int216] = ACTIONS(648),
    [anon_sym_int224] = ACTIONS(648),
    [anon_sym_int232] = ACTIONS(648),
    [anon_sym_int240] = ACTIONS(648),
    [anon_sym_int248] = ACTIONS(648),
    [anon_sym_int256] = ACTIONS(648),
    [anon_sym_uint] = ACTIONS(648),
    [anon_sym_uint8] = ACTIONS(648),
    [anon_sym_uint16] = ACTIONS(648),
    [anon_sym_uint24] = ACTIONS(648),
    [anon_sym_uint32] = ACTIONS(648),
    [anon_sym_uint40] = ACTIONS(648),
    [anon_sym_uint48] = ACTIONS(648),
    [anon_sym_uint56] = ACTIONS(648),
    [anon_sym_uint64] = ACTIONS(648),
    [anon_sym_uint72] = ACTIONS(648),
    [anon_sym_uint80] = ACTIONS(648),
    [anon_sym_uint88] = ACTIONS(648),
    [anon_sym_uint96] = ACTIONS(648),
    [anon_sym_uint104] = ACTIONS(648),
    [anon_sym_uint112] = ACTIONS(648),
    [anon_sym_uint120] = ACTIONS(648),
    [anon_sym_uint128] = ACTIONS(648),
    [anon_sym_uint136] = ACTIONS(648),
    [anon_sym_uint144] = ACTIONS(648),
    [anon_sym_uint152] = ACTIONS(648),
    [anon_sym_uint160] = ACTIONS(648),
    [anon_sym_uint168] = ACTIONS(648),
    [anon_sym_uint176] = ACTIONS(648),
    [anon_sym_uint184] = ACTIONS(648),
    [anon_sym_uint192] = ACTIONS(648),
    [anon_sym_uint200] = ACTIONS(648),
    [anon_sym_uint208] = ACTIONS(648),
    [anon_sym_uint216] = ACTIONS(648),
    [anon_sym_uint224] = ACTIONS(648),
    [anon_sym_uint232] = ACTIONS(648),
    [anon_sym_uint240] = ACTIONS(648),
    [anon_sym_uint248] = ACTIONS(648),
    [anon_sym_uint256] = ACTIONS(648),
    [anon_sym_bytes] = ACTIONS(648),
    [anon_sym_bytes1] = ACTIONS(648),
    [anon_sym_bytes2] = ACTIONS(648),
    [anon_sym_bytes3] = ACTIONS(648),
    [anon_sym_bytes4] = ACTIONS(648),
    [anon_sym_bytes5] = ACTIONS(648),
    [anon_sym_bytes6] = ACTIONS(648),
    [anon_sym_bytes7] = ACTIONS(648),
    [anon_sym_bytes8] = ACTIONS(648),
    [anon_sym_bytes9] = ACTIONS(648),
    [anon_sym_bytes10] = ACTIONS(648),
    [anon_sym_bytes11] = ACTIONS(648),
    [anon_sym_bytes12] = ACTIONS(648),
    [anon_sym_bytes13] = ACTIONS(648),
    [anon_sym_bytes14] = ACTIONS(648),
    [anon_sym_bytes15] = ACTIONS(648),
    [anon_sym_bytes16] = ACTIONS(648),
    [anon_sym_bytes17] = ACTIONS(648),
    [anon_sym_bytes18] = ACTIONS(648),
    [anon_sym_bytes19] = ACTIONS(648),
    [anon_sym_bytes20] = ACTIONS(648),
    [anon_sym_bytes21] = ACTIONS(648),
    [anon_sym_bytes22] = ACTIONS(648),
    [anon_sym_bytes23] = ACTIONS(648),
    [anon_sym_bytes24] = ACTIONS(648),
    [anon_sym_bytes25] = ACTIONS(648),
    [anon_sym_bytes26] = ACTIONS(648),
    [anon_sym_bytes27] = ACTIONS(648),
    [anon_sym_bytes28] = ACTIONS(648),
    [anon_sym_bytes29] = ACTIONS(648),
    [anon_sym_bytes30] = ACTIONS(648),
    [anon_sym_bytes31] = ACTIONS(648),
    [anon_sym_bytes32] = ACTIONS(648),
    [anon_sym_fixed] = ACTIONS(648),
    [aux_sym__fixed_token1] = ACTIONS(648),
    [anon_sym_ufixed] = ACTIONS(648),
    [aux_sym__ufixed_token1] = ACTIONS(648),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(162)] = {
    [ts_builtin_sym_end] = ACTIONS(650),
    [sym_identifier] = ACTIONS(652),
    [anon_sym_pragma] = ACTIONS(652),
    [anon_sym_import] = ACTIONS(652),
    [anon_sym_type] = ACTIONS(652),
    [anon_sym_abstract] = ACTIONS(652),
    [anon_sym_contract] = ACTIONS(652),
    [anon_sym_error] = ACTIONS(652),
    [anon_sym_interface] = ACTIONS(652),
    [anon_sym_library] = ACTIONS(652),
    [anon_sym_struct] = ACTIONS(652),
    [anon_sym_enum] = ACTIONS(652),
    [anon_sym_event] = ACTIONS(652),
    [anon_sym_using] = ACTIONS(652),
    [anon_sym_function] = ACTIONS(652),
    [anon_sym_byte] = ACTIONS(652),
    [anon_sym_address] = ACTIONS(652),
    [anon_sym_var] = ACTIONS(652),
    [anon_sym_mapping] = ACTIONS(652),
    [anon_sym_bool] = ACTIONS(652),
    [anon_sym_string] = ACTIONS(652),
    [anon_sym_int] = ACTIONS(652),
    [anon_sym_int8] = ACTIONS(652),
    [anon_sym_int16] = ACTIONS(652),
    [anon_sym_int24] = ACTIONS(652),
    [anon_sym_int32] = ACTIONS(652),
    [anon_sym_int40] = ACTIONS(652),
    [anon_sym_int48] = ACTIONS(652),
    [anon_sym_int56] = ACTIONS(652),
    [anon_sym_int64] = ACTIONS(652),
    [anon_sym_int72] = ACTIONS(652),
    [anon_sym_int80] = ACTIONS(652),
    [anon_sym_int88] = ACTIONS(652),
    [anon_sym_int96] = ACTIONS(652),
    [anon_sym_int104] = ACTIONS(652),
    [anon_sym_int112] = ACTIONS(652),
    [anon_sym_int120] = ACTIONS(652),
    [anon_sym_int128] = ACTIONS(652),
    [anon_sym_int136] = ACTIONS(652),
    [anon_sym_int144] = ACTIONS(652),
    [anon_sym_int152] = ACTIONS(652),
    [anon_sym_int160] = ACTIONS(652),
    [anon_sym_int168] = ACTIONS(652),
    [anon_sym_int176] = ACTIONS(652),
    [anon_sym_int184] = ACTIONS(652),
    [anon_sym_int192] = ACTIONS(652),
    [anon_sym_int200] = ACTIONS(652),
    [anon_sym_int208] = ACTIONS(652),
    [anon_sym_int216] = ACTIONS(652),
    [anon_sym_int224] = ACTIONS(652),
    [anon_sym_int232] = ACTIONS(652),
    [anon_sym_int240] = ACTIONS(652),
    [anon_sym_int248] = ACTIONS(652),
    [anon_sym_int256] = ACTIONS(652),
    [anon_sym_uint] = ACTIONS(652),
    [anon_sym_uint8] = ACTIONS(652),
    [anon_sym_uint16] = ACTIONS(652),
    [anon_sym_uint24] = ACTIONS(652),
    [anon_sym_uint32] = ACTIONS(652),
    [anon_sym_uint40] = ACTIONS(652),
    [anon_sym_uint48] = ACTIONS(652),
    [anon_sym_uint56] = ACTIONS(652),
    [anon_sym_uint64] = ACTIONS(652),
    [anon_sym_uint72] = ACTIONS(652),
    [anon_sym_uint80] = ACTIONS(652),
    [anon_sym_uint88] = ACTIONS(652),
    [anon_sym_uint96] = ACTIONS(652),
    [anon_sym_uint104] = ACTIONS(652),
    [anon_sym_uint112] = ACTIONS(652),
    [anon_sym_uint120] = ACTIONS(652),
    [anon_sym_uint128] = ACTIONS(652),
    [anon_sym_uint136] = ACTIONS(652),
    [anon_sym_uint144] = ACTIONS(652),
    [anon_sym_uint152] = ACTIONS(652),
    [anon_sym_uint160] = ACTIONS(652),
    [anon_sym_uint168] = ACTIONS(652),
    [anon_sym_uint176] = ACTIONS(652),
    [anon_sym_uint184] = ACTIONS(652),
    [anon_sym_uint192] = ACTIONS(652),
    [anon_sym_uint200] = ACTIONS(652),
    [anon_sym_uint208] = ACTIONS(652),
    [anon_sym_uint216] = ACTIONS(652),
    [anon_sym_uint224] = ACTIONS(652),
    [anon_sym_uint232] = ACTIONS(652),
    [anon_sym_uint240] = ACTIONS(652),
    [anon_sym_uint248] = ACTIONS(652),
    [anon_sym_uint256] = ACTIONS(652),
    [anon_sym_bytes] = ACTIONS(652),
    [anon_sym_bytes1] = ACTIONS(652),
    [anon_sym_bytes2] = ACTIONS(652),
    [anon_sym_bytes3] = ACTIONS(652),
    [anon_sym_bytes4] = ACTIONS(652),
    [anon_sym_bytes5] = ACTIONS(652),
    [anon_sym_bytes6] = ACTIONS(652),
    [anon_sym_bytes7] = ACTIONS(652),
    [anon_sym_bytes8] = ACTIONS(652),
    [anon_sym_bytes9] = ACTIONS(652),
    [anon_sym_bytes10] = ACTIONS(652),
    [anon_sym_bytes11] = ACTIONS(652),
    [anon_sym_bytes12] = ACTIONS(652),
    [anon_sym_bytes13] = ACTIONS(652),
    [anon_sym_bytes14] = ACTIONS(652),
    [anon_sym_bytes15] = ACTIONS(652),
    [anon_sym_bytes16] = ACTIONS(652),
    [anon_sym_bytes17] = ACTIONS(652),
    [anon_sym_bytes18] = ACTIONS(652),
    [anon_sym_bytes19] = ACTIONS(652),
    [anon_sym_bytes20] = ACTIONS(652),
    [anon_sym_bytes21] = ACTIONS(652),
    [anon_sym_bytes22] = ACTIONS(652),
    [anon_sym_bytes23] = ACTIONS(652),
    [anon_sym_bytes24] = ACTIONS(652),
    [anon_sym_bytes25] = ACTIONS(652),
    [anon_sym_bytes26] = ACTIONS(652),
    [anon_sym_bytes27] = ACTIONS(652),
    [anon_sym_bytes28] = ACTIONS(652),
    [anon_sym_bytes29] = ACTIONS(652),
    [anon_sym_bytes30] = ACTIONS(652),
    [anon_sym_bytes31] = ACTIONS(652),
    [anon_sym_bytes32] = ACTIONS(652),
    [anon_sym_fixed] = ACTIONS(652),
    [aux_sym__fixed_token1] = ACTIONS(652),
    [anon_sym_ufixed] = ACTIONS(652),
    [aux_sym__ufixed_token1] = ACTIONS(652),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(163)] = {
    [ts_builtin_sym_end] = ACTIONS(654),
    [sym_identifier] = ACTIONS(656),
    [anon_sym_pragma] = ACTIONS(656),
    [anon_sym_import] = ACTIONS(656),
    [anon_sym_type] = ACTIONS(656),
    [anon_sym_abstract] = ACTIONS(656),
    [anon_sym_contract] = ACTIONS(656),
    [anon_sym_error] = ACTIONS(656),
    [anon_sym_interface] = ACTIONS(656),
    [anon_sym_library] = ACTIONS(656),
    [anon_sym_struct] = ACTIONS(656),
    [anon_sym_enum] = ACTIONS(656),
    [anon_sym_event] = ACTIONS(656),
    [anon_sym_using] = ACTIONS(656),
    [anon_sym_function] = ACTIONS(656),
    [anon_sym_byte] = ACTIONS(656),
    [anon_sym_address] = ACTIONS(656),
    [anon_sym_var] = ACTIONS(656),
    [anon_sym_mapping] = ACTIONS(656),
    [anon_sym_bool] = ACTIONS(656),
    [anon_sym_string] = ACTIONS(656),
    [anon_sym_int] = ACTIONS(656),
    [anon_sym_int8] = ACTIONS(656),
    [anon_sym_int16] = ACTIONS(656),
    [anon_sym_int24] = ACTIONS(656),
    [anon_sym_int32] = ACTIONS(656),
    [anon_sym_int40] = ACTIONS(656),
    [anon_sym_int48] = ACTIONS(656),
    [anon_sym_int56] = ACTIONS(656),
    [anon_sym_int64] = ACTIONS(656),
    [anon_sym_int72] = ACTIONS(656),
    [anon_sym_int80] = ACTIONS(656),
    [anon_sym_int88] = ACTIONS(656),
    [anon_sym_int96] = ACTIONS(656),
    [anon_sym_int104] = ACTIONS(656),
    [anon_sym_int112] = ACTIONS(656),
    [anon_sym_int120] = ACTIONS(656),
    [anon_sym_int128] = ACTIONS(656),
    [anon_sym_int136] = ACTIONS(656),
    [anon_sym_int144] = ACTIONS(656),
    [anon_sym_int152] = ACTIONS(656),
    [anon_sym_int160] = ACTIONS(656),
    [anon_sym_int168] = ACTIONS(656),
    [anon_sym_int176] = ACTIONS(656),
    [anon_sym_int184] = ACTIONS(656),
    [anon_sym_int192] = ACTIONS(656),
    [anon_sym_int200] = ACTIONS(656),
    [anon_sym_int208] = ACTIONS(656),
    [anon_sym_int216] = ACTIONS(656),
    [anon_sym_int224] = ACTIONS(656),
    [anon_sym_int232] = ACTIONS(656),
    [anon_sym_int240] = ACTIONS(656),
    [anon_sym_int248] = ACTIONS(656),
    [anon_sym_int256] = ACTIONS(656),
    [anon_sym_uint] = ACTIONS(656),
    [anon_sym_uint8] = ACTIONS(656),
    [anon_sym_uint16] = ACTIONS(656),
    [anon_sym_uint24] = ACTIONS(656),
    [anon_sym_uint32] = ACTIONS(656),
    [anon_sym_uint40] = ACTIONS(656),
    [anon_sym_uint48] = ACTIONS(656),
    [anon_sym_uint56] = ACTIONS(656),
    [anon_sym_uint64] = ACTIONS(656),
    [anon_sym_uint72] = ACTIONS(656),
    [anon_sym_uint80] = ACTIONS(656),
    [anon_sym_uint88] = ACTIONS(656),
    [anon_sym_uint96] = ACTIONS(656),
    [anon_sym_uint104] = ACTIONS(656),
    [anon_sym_uint112] = ACTIONS(656),
    [anon_sym_uint120] = ACTIONS(656),
    [anon_sym_uint128] = ACTIONS(656),
    [anon_sym_uint136] = ACTIONS(656),
    [anon_sym_uint144] = ACTIONS(656),
    [anon_sym_uint152] = ACTIONS(656),
    [anon_sym_uint160] = ACTIONS(656),
    [anon_sym_uint168] = ACTIONS(656),
    [anon_sym_uint176] = ACTIONS(656),
    [anon_sym_uint184] = ACTIONS(656),
    [anon_sym_uint192] = ACTIONS(656),
    [anon_sym_uint200] = ACTIONS(656),
    [anon_sym_uint208] = ACTIONS(656),
    [anon_sym_uint216] = ACTIONS(656),
    [anon_sym_uint224] = ACTIONS(656),
    [anon_sym_uint232] = ACTIONS(656),
    [anon_sym_uint240] = ACTIONS(656),
    [anon_sym_uint248] = ACTIONS(656),
    [anon_sym_uint256] = ACTIONS(656),
    [anon_sym_bytes] = ACTIONS(656),
    [anon_sym_bytes1] = ACTIONS(656),
    [anon_sym_bytes2] = ACTIONS(656),
    [anon_sym_bytes3] = ACTIONS(656),
    [anon_sym_bytes4] = ACTIONS(656),
    [anon_sym_bytes5] = ACTIONS(656),
    [anon_sym_bytes6] = ACTIONS(656),
    [anon_sym_bytes7] = ACTIONS(656),
    [anon_sym_bytes8] = ACTIONS(656),
    [anon_sym_bytes9] = ACTIONS(656),
    [anon_sym_bytes10] = ACTIONS(656),
    [anon_sym_bytes11] = ACTIONS(656),
    [anon_sym_bytes12] = ACTIONS(656),
    [anon_sym_bytes13] = ACTIONS(656),
    [anon_sym_bytes14] = ACTIONS(656),
    [anon_sym_bytes15] = ACTIONS(656),
    [anon_sym_bytes16] = ACTIONS(656),
    [anon_sym_bytes17] = ACTIONS(656),
    [anon_sym_bytes18] = ACTIONS(656),
    [anon_sym_bytes19] = ACTIONS(656),
    [anon_sym_bytes20] = ACTIONS(656),
    [anon_sym_bytes21] = ACTIONS(656),
    [anon_sym_bytes22] = ACTIONS(656),
    [anon_sym_bytes23] = ACTIONS(656),
    [anon_sym_bytes24] = ACTIONS(656),
    [anon_sym_bytes25] = ACTIONS(656),
    [anon_sym_bytes26] = ACTIONS(656),
    [anon_sym_bytes27] = ACTIONS(656),
    [anon_sym_bytes28] = ACTIONS(656),
    [anon_sym_bytes29] = ACTIONS(656),
    [anon_sym_bytes30] = ACTIONS(656),
    [anon_sym_bytes31] = ACTIONS(656),
    [anon_sym_bytes32] = ACTIONS(656),
    [anon_sym_fixed] = ACTIONS(656),
    [aux_sym__fixed_token1] = ACTIONS(656),
    [anon_sym_ufixed] = ACTIONS(656),
    [aux_sym__ufixed_token1] = ACTIONS(656),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(164)] = {
    [ts_builtin_sym_end] = ACTIONS(658),
    [sym_identifier] = ACTIONS(660),
    [anon_sym_pragma] = ACTIONS(660),
    [anon_sym_import] = ACTIONS(660),
    [anon_sym_type] = ACTIONS(660),
    [anon_sym_abstract] = ACTIONS(660),
    [anon_sym_contract] = ACTIONS(660),
    [anon_sym_error] = ACTIONS(660),
    [anon_sym_interface] = ACTIONS(660),
    [anon_sym_library] = ACTIONS(660),
    [anon_sym_struct] = ACTIONS(660),
    [anon_sym_enum] = ACTIONS(660),
    [anon_sym_event] = ACTIONS(660),
    [anon_sym_using] = ACTIONS(660),
    [anon_sym_function] = ACTIONS(660),
    [anon_sym_byte] = ACTIONS(660),
    [anon_sym_address] = ACTIONS(660),
    [anon_sym_var] = ACTIONS(660),
    [anon_sym_mapping] = ACTIONS(660),
    [anon_sym_bool] = ACTIONS(660),
    [anon_sym_string] = ACTIONS(660),
    [anon_sym_int] = ACTIONS(660),
    [anon_sym_int8] = ACTIONS(660),
    [anon_sym_int16] = ACTIONS(660),
    [anon_sym_int24] = ACTIONS(660),
    [anon_sym_int32] = ACTIONS(660),
    [anon_sym_int40] = ACTIONS(660),
    [anon_sym_int48] = ACTIONS(660),
    [anon_sym_int56] = ACTIONS(660),
    [anon_sym_int64] = ACTIONS(660),
    [anon_sym_int72] = ACTIONS(660),
    [anon_sym_int80] = ACTIONS(660),
    [anon_sym_int88] = ACTIONS(660),
    [anon_sym_int96] = ACTIONS(660),
    [anon_sym_int104] = ACTIONS(660),
    [anon_sym_int112] = ACTIONS(660),
    [anon_sym_int120] = ACTIONS(660),
    [anon_sym_int128] = ACTIONS(660),
    [anon_sym_int136] = ACTIONS(660),
    [anon_sym_int144] = ACTIONS(660),
    [anon_sym_int152] = ACTIONS(660),
    [anon_sym_int160] = ACTIONS(660),
    [anon_sym_int168] = ACTIONS(660),
    [anon_sym_int176] = ACTIONS(660),
    [anon_sym_int184] = ACTIONS(660),
    [anon_sym_int192] = ACTIONS(660),
    [anon_sym_int200] = ACTIONS(660),
    [anon_sym_int208] = ACTIONS(660),
    [anon_sym_int216] = ACTIONS(660),
    [anon_sym_int224] = ACTIONS(660),
    [anon_sym_int232] = ACTIONS(660),
    [anon_sym_int240] = ACTIONS(660),
    [anon_sym_int248] = ACTIONS(660),
    [anon_sym_int256] = ACTIONS(660),
    [anon_sym_uint] = ACTIONS(660),
    [anon_sym_uint8] = ACTIONS(660),
    [anon_sym_uint16] = ACTIONS(660),
    [anon_sym_uint24] = ACTIONS(660),
    [anon_sym_uint32] = ACTIONS(660),
    [anon_sym_uint40] = ACTIONS(660),
    [anon_sym_uint48] = ACTIONS(660),
    [anon_sym_uint56] = ACTIONS(660),
    [anon_sym_uint64] = ACTIONS(660),
    [anon_sym_uint72] = ACTIONS(660),
    [anon_sym_uint80] = ACTIONS(660),
    [anon_sym_uint88] = ACTIONS(660),
    [anon_sym_uint96] = ACTIONS(660),
    [anon_sym_uint104] = ACTIONS(660),
    [anon_sym_uint112] = ACTIONS(660),
    [anon_sym_uint120] = ACTIONS(660),
    [anon_sym_uint128] = ACTIONS(660),
    [anon_sym_uint136] = ACTIONS(660),
    [anon_sym_uint144] = ACTIONS(660),
    [anon_sym_uint152] = ACTIONS(660),
    [anon_sym_uint160] = ACTIONS(660),
    [anon_sym_uint168] = ACTIONS(660),
    [anon_sym_uint176] = ACTIONS(660),
    [anon_sym_uint184] = ACTIONS(660),
    [anon_sym_uint192] = ACTIONS(660),
    [anon_sym_uint200] = ACTIONS(660),
    [anon_sym_uint208] = ACTIONS(660),
    [anon_sym_uint216] = ACTIONS(660),
    [anon_sym_uint224] = ACTIONS(660),
    [anon_sym_uint232] = ACTIONS(660),
    [anon_sym_uint240] = ACTIONS(660),
    [anon_sym_uint248] = ACTIONS(660),
    [anon_sym_uint256] = ACTIONS(660),
    [anon_sym_bytes] = ACTIONS(660),
    [anon_sym_bytes1] = ACTIONS(660),
    [anon_sym_bytes2] = ACTIONS(660),
    [anon_sym_bytes3] = ACTIONS(660),
    [anon_sym_bytes4] = ACTIONS(660),
    [anon_sym_bytes5] = ACTIONS(660),
    [anon_sym_bytes6] = ACTIONS(660),
    [anon_sym_bytes7] = ACTIONS(660),
    [anon_sym_bytes8] = ACTIONS(660),
    [anon_sym_bytes9] = ACTIONS(660),
    [anon_sym_bytes10] = ACTIONS(660),
    [anon_sym_bytes11] = ACTIONS(660),
    [anon_sym_bytes12] = ACTIONS(660),
    [anon_sym_bytes13] = ACTIONS(660),
    [anon_sym_bytes14] = ACTIONS(660),
    [anon_sym_bytes15] = ACTIONS(660),
    [anon_sym_bytes16] = ACTIONS(660),
    [anon_sym_bytes17] = ACTIONS(660),
    [anon_sym_bytes18] = ACTIONS(660),
    [anon_sym_bytes19] = ACTIONS(660),
    [anon_sym_bytes20] = ACTIONS(660),
    [anon_sym_bytes21] = ACTIONS(660),
    [anon_sym_bytes22] = ACTIONS(660),
    [anon_sym_bytes23] = ACTIONS(660),
    [anon_sym_bytes24] = ACTIONS(660),
    [anon_sym_bytes25] = ACTIONS(660),
    [anon_sym_bytes26] = ACTIONS(660),
    [anon_sym_bytes27] = ACTIONS(660),
    [anon_sym_bytes28] = ACTIONS(660),
    [anon_sym_bytes29] = ACTIONS(660),
    [anon_sym_bytes30] = ACTIONS(660),
    [anon_sym_bytes31] = ACTIONS(660),
    [anon_sym_bytes32] = ACTIONS(660),
    [anon_sym_fixed] = ACTIONS(660),
    [aux_sym__fixed_token1] = ACTIONS(660),
    [anon_sym_ufixed] = ACTIONS(660),
    [aux_sym__ufixed_token1] = ACTIONS(660),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(165)] = {
    [ts_builtin_sym_end] = ACTIONS(662),
    [sym_identifier] = ACTIONS(664),
    [anon_sym_pragma] = ACTIONS(664),
    [anon_sym_import] = ACTIONS(664),
    [anon_sym_type] = ACTIONS(664),
    [anon_sym_abstract] = ACTIONS(664),
    [anon_sym_contract] = ACTIONS(664),
    [anon_sym_error] = ACTIONS(664),
    [anon_sym_interface] = ACTIONS(664),
    [anon_sym_library] = ACTIONS(664),
    [anon_sym_struct] = ACTIONS(664),
    [anon_sym_enum] = ACTIONS(664),
    [anon_sym_event] = ACTIONS(664),
    [anon_sym_using] = ACTIONS(664),
    [anon_sym_function] = ACTIONS(664),
    [anon_sym_byte] = ACTIONS(664),
    [anon_sym_address] = ACTIONS(664),
    [anon_sym_var] = ACTIONS(664),
    [anon_sym_mapping] = ACTIONS(664),
    [anon_sym_bool] = ACTIONS(664),
    [anon_sym_string] = ACTIONS(664),
    [anon_sym_int] = ACTIONS(664),
    [anon_sym_int8] = ACTIONS(664),
    [anon_sym_int16] = ACTIONS(664),
    [anon_sym_int24] = ACTIONS(664),
    [anon_sym_int32] = ACTIONS(664),
    [anon_sym_int40] = ACTIONS(664),
    [anon_sym_int48] = ACTIONS(664),
    [anon_sym_int56] = ACTIONS(664),
    [anon_sym_int64] = ACTIONS(664),
    [anon_sym_int72] = ACTIONS(664),
    [anon_sym_int80] = ACTIONS(664),
    [anon_sym_int88] = ACTIONS(664),
    [anon_sym_int96] = ACTIONS(664),
    [anon_sym_int104] = ACTIONS(664),
    [anon_sym_int112] = ACTIONS(664),
    [anon_sym_int120] = ACTIONS(664),
    [anon_sym_int128] = ACTIONS(664),
    [anon_sym_int136] = ACTIONS(664),
    [anon_sym_int144] = ACTIONS(664),
    [anon_sym_int152] = ACTIONS(664),
    [anon_sym_int160] = ACTIONS(664),
    [anon_sym_int168] = ACTIONS(664),
    [anon_sym_int176] = ACTIONS(664),
    [anon_sym_int184] = ACTIONS(664),
    [anon_sym_int192] = ACTIONS(664),
    [anon_sym_int200] = ACTIONS(664),
    [anon_sym_int208] = ACTIONS(664),
    [anon_sym_int216] = ACTIONS(664),
    [anon_sym_int224] = ACTIONS(664),
    [anon_sym_int232] = ACTIONS(664),
    [anon_sym_int240] = ACTIONS(664),
    [anon_sym_int248] = ACTIONS(664),
    [anon_sym_int256] = ACTIONS(664),
    [anon_sym_uint] = ACTIONS(664),
    [anon_sym_uint8] = ACTIONS(664),
    [anon_sym_uint16] = ACTIONS(664),
    [anon_sym_uint24] = ACTIONS(664),
    [anon_sym_uint32] = ACTIONS(664),
    [anon_sym_uint40] = ACTIONS(664),
    [anon_sym_uint48] = ACTIONS(664),
    [anon_sym_uint56] = ACTIONS(664),
    [anon_sym_uint64] = ACTIONS(664),
    [anon_sym_uint72] = ACTIONS(664),
    [anon_sym_uint80] = ACTIONS(664),
    [anon_sym_uint88] = ACTIONS(664),
    [anon_sym_uint96] = ACTIONS(664),
    [anon_sym_uint104] = ACTIONS(664),
    [anon_sym_uint112] = ACTIONS(664),
    [anon_sym_uint120] = ACTIONS(664),
    [anon_sym_uint128] = ACTIONS(664),
    [anon_sym_uint136] = ACTIONS(664),
    [anon_sym_uint144] = ACTIONS(664),
    [anon_sym_uint152] = ACTIONS(664),
    [anon_sym_uint160] = ACTIONS(664),
    [anon_sym_uint168] = ACTIONS(664),
    [anon_sym_uint176] = ACTIONS(664),
    [anon_sym_uint184] = ACTIONS(664),
    [anon_sym_uint192] = ACTIONS(664),
    [anon_sym_uint200] = ACTIONS(664),
    [anon_sym_uint208] = ACTIONS(664),
    [anon_sym_uint216] = ACTIONS(664),
    [anon_sym_uint224] = ACTIONS(664),
    [anon_sym_uint232] = ACTIONS(664),
    [anon_sym_uint240] = ACTIONS(664),
    [anon_sym_uint248] = ACTIONS(664),
    [anon_sym_uint256] = ACTIONS(664),
    [anon_sym_bytes] = ACTIONS(664),
    [anon_sym_bytes1] = ACTIONS(664),
    [anon_sym_bytes2] = ACTIONS(664),
    [anon_sym_bytes3] = ACTIONS(664),
    [anon_sym_bytes4] = ACTIONS(664),
    [anon_sym_bytes5] = ACTIONS(664),
    [anon_sym_bytes6] = ACTIONS(664),
    [anon_sym_bytes7] = ACTIONS(664),
    [anon_sym_bytes8] = ACTIONS(664),
    [anon_sym_bytes9] = ACTIONS(664),
    [anon_sym_bytes10] = ACTIONS(664),
    [anon_sym_bytes11] = ACTIONS(664),
    [anon_sym_bytes12] = ACTIONS(664),
    [anon_sym_bytes13] = ACTIONS(664),
    [anon_sym_bytes14] = ACTIONS(664),
    [anon_sym_bytes15] = ACTIONS(664),
    [anon_sym_bytes16] = ACTIONS(664),
    [anon_sym_bytes17] = ACTIONS(664),
    [anon_sym_bytes18] = ACTIONS(664),
    [anon_sym_bytes19] = ACTIONS(664),
    [anon_sym_bytes20] = ACTIONS(664),
    [anon_sym_bytes21] = ACTIONS(664),
    [anon_sym_bytes22] = ACTIONS(664),
    [anon_sym_bytes23] = ACTIONS(664),
    [anon_sym_bytes24] = ACTIONS(664),
    [anon_sym_bytes25] = ACTIONS(664),
    [anon_sym_bytes26] = ACTIONS(664),
    [anon_sym_bytes27] = ACTIONS(664),
    [anon_sym_bytes28] = ACTIONS(664),
    [anon_sym_bytes29] = ACTIONS(664),
    [anon_sym_bytes30] = ACTIONS(664),
    [anon_sym_bytes31] = ACTIONS(664),
    [anon_sym_bytes32] = ACTIONS(664),
    [anon_sym_fixed] = ACTIONS(664),
    [aux_sym__fixed_token1] = ACTIONS(664),
    [anon_sym_ufixed] = ACTIONS(664),
    [aux_sym__ufixed_token1] = ACTIONS(664),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(166)] = {
    [ts_builtin_sym_end] = ACTIONS(666),
    [sym_identifier] = ACTIONS(668),
    [anon_sym_pragma] = ACTIONS(668),
    [anon_sym_import] = ACTIONS(668),
    [anon_sym_type] = ACTIONS(668),
    [anon_sym_abstract] = ACTIONS(668),
    [anon_sym_contract] = ACTIONS(668),
    [anon_sym_error] = ACTIONS(668),
    [anon_sym_interface] = ACTIONS(668),
    [anon_sym_library] = ACTIONS(668),
    [anon_sym_struct] = ACTIONS(668),
    [anon_sym_enum] = ACTIONS(668),
    [anon_sym_event] = ACTIONS(668),
    [anon_sym_using] = ACTIONS(668),
    [anon_sym_function] = ACTIONS(668),
    [anon_sym_byte] = ACTIONS(668),
    [anon_sym_address] = ACTIONS(668),
    [anon_sym_var] = ACTIONS(668),
    [anon_sym_mapping] = ACTIONS(668),
    [anon_sym_bool] = ACTIONS(668),
    [anon_sym_string] = ACTIONS(668),
    [anon_sym_int] = ACTIONS(668),
    [anon_sym_int8] = ACTIONS(668),
    [anon_sym_int16] = ACTIONS(668),
    [anon_sym_int24] = ACTIONS(668),
    [anon_sym_int32] = ACTIONS(668),
    [anon_sym_int40] = ACTIONS(668),
    [anon_sym_int48] = ACTIONS(668),
    [anon_sym_int56] = ACTIONS(668),
    [anon_sym_int64] = ACTIONS(668),
    [anon_sym_int72] = ACTIONS(668),
    [anon_sym_int80] = ACTIONS(668),
    [anon_sym_int88] = ACTIONS(668),
    [anon_sym_int96] = ACTIONS(668),
    [anon_sym_int104] = ACTIONS(668),
    [anon_sym_int112] = ACTIONS(668),
    [anon_sym_int120] = ACTIONS(668),
    [anon_sym_int128] = ACTIONS(668),
    [anon_sym_int136] = ACTIONS(668),
    [anon_sym_int144] = ACTIONS(668),
    [anon_sym_int152] = ACTIONS(668),
    [anon_sym_int160] = ACTIONS(668),
    [anon_sym_int168] = ACTIONS(668),
    [anon_sym_int176] = ACTIONS(668),
    [anon_sym_int184] = ACTIONS(668),
    [anon_sym_int192] = ACTIONS(668),
    [anon_sym_int200] = ACTIONS(668),
    [anon_sym_int208] = ACTIONS(668),
    [anon_sym_int216] = ACTIONS(668),
    [anon_sym_int224] = ACTIONS(668),
    [anon_sym_int232] = ACTIONS(668),
    [anon_sym_int240] = ACTIONS(668),
    [anon_sym_int248] = ACTIONS(668),
    [anon_sym_int256] = ACTIONS(668),
    [anon_sym_uint] = ACTIONS(668),
    [anon_sym_uint8] = ACTIONS(668),
    [anon_sym_uint16] = ACTIONS(668),
    [anon_sym_uint24] = ACTIONS(668),
    [anon_sym_uint32] = ACTIONS(668),
    [anon_sym_uint40] = ACTIONS(668),
    [anon_sym_uint48] = ACTIONS(668),
    [anon_sym_uint56] = ACTIONS(668),
    [anon_sym_uint64] = ACTIONS(668),
    [anon_sym_uint72] = ACTIONS(668),
    [anon_sym_uint80] = ACTIONS(668),
    [anon_sym_uint88] = ACTIONS(668),
    [anon_sym_uint96] = ACTIONS(668),
    [anon_sym_uint104] = ACTIONS(668),
    [anon_sym_uint112] = ACTIONS(668),
    [anon_sym_uint120] = ACTIONS(668),
    [anon_sym_uint128] = ACTIONS(668),
    [anon_sym_uint136] = ACTIONS(668),
    [anon_sym_uint144] = ACTIONS(668),
    [anon_sym_uint152] = ACTIONS(668),
    [anon_sym_uint160] = ACTIONS(668),
    [anon_sym_uint168] = ACTIONS(668),
    [anon_sym_uint176] = ACTIONS(668),
    [anon_sym_uint184] = ACTIONS(668),
    [anon_sym_uint192] = ACTIONS(668),
    [anon_sym_uint200] = ACTIONS(668),
    [anon_sym_uint208] = ACTIONS(668),
    [anon_sym_uint216] = ACTIONS(668),
    [anon_sym_uint224] = ACTIONS(668),
    [anon_sym_uint232] = ACTIONS(668),
    [anon_sym_uint240] = ACTIONS(668),
    [anon_sym_uint248] = ACTIONS(668),
    [anon_sym_uint256] = ACTIONS(668),
    [anon_sym_bytes] = ACTIONS(668),
    [anon_sym_bytes1] = ACTIONS(668),
    [anon_sym_bytes2] = ACTIONS(668),
    [anon_sym_bytes3] = ACTIONS(668),
    [anon_sym_bytes4] = ACTIONS(668),
    [anon_sym_bytes5] = ACTIONS(668),
    [anon_sym_bytes6] = ACTIONS(668),
    [anon_sym_bytes7] = ACTIONS(668),
    [anon_sym_bytes8] = ACTIONS(668),
    [anon_sym_bytes9] = ACTIONS(668),
    [anon_sym_bytes10] = ACTIONS(668),
    [anon_sym_bytes11] = ACTIONS(668),
    [anon_sym_bytes12] = ACTIONS(668),
    [anon_sym_bytes13] = ACTIONS(668),
    [anon_sym_bytes14] = ACTIONS(668),
    [anon_sym_bytes15] = ACTIONS(668),
    [anon_sym_bytes16] = ACTIONS(668),
    [anon_sym_bytes17] = ACTIONS(668),
    [anon_sym_bytes18] = ACTIONS(668),
    [anon_sym_bytes19] = ACTIONS(668),
    [anon_sym_bytes20] = ACTIONS(668),
    [anon_sym_bytes21] = ACTIONS(668),
    [anon_sym_bytes22] = ACTIONS(668),
    [anon_sym_bytes23] = ACTIONS(668),
    [anon_sym_bytes24] = ACTIONS(668),
    [anon_sym_bytes25] = ACTIONS(668),
    [anon_sym_bytes26] = ACTIONS(668),
    [anon_sym_bytes27] = ACTIONS(668),
    [anon_sym_bytes28] = ACTIONS(668),
    [anon_sym_bytes29] = ACTIONS(668),
    [anon_sym_bytes30] = ACTIONS(668),
    [anon_sym_bytes31] = ACTIONS(668),
    [anon_sym_bytes32] = ACTIONS(668),
    [anon_sym_fixed] = ACTIONS(668),
    [aux_sym__fixed_token1] = ACTIONS(668),
    [anon_sym_ufixed] = ACTIONS(668),
    [aux_sym__ufixed_token1] = ACTIONS(668),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(167)] = {
    [ts_builtin_sym_end] = ACTIONS(670),
    [sym_identifier] = ACTIONS(672),
    [anon_sym_pragma] = ACTIONS(672),
    [anon_sym_import] = ACTIONS(672),
    [anon_sym_type] = ACTIONS(672),
    [anon_sym_abstract] = ACTIONS(672),
    [anon_sym_contract] = ACTIONS(672),
    [anon_sym_error] = ACTIONS(672),
    [anon_sym_interface] = ACTIONS(672),
    [anon_sym_library] = ACTIONS(672),
    [anon_sym_struct] = ACTIONS(672),
    [anon_sym_enum] = ACTIONS(672),
    [anon_sym_event] = ACTIONS(672),
    [anon_sym_using] = ACTIONS(672),
    [anon_sym_function] = ACTIONS(672),
    [anon_sym_byte] = ACTIONS(672),
    [anon_sym_address] = ACTIONS(672),
    [anon_sym_var] = ACTIONS(672),
    [anon_sym_mapping] = ACTIONS(672),
    [anon_sym_bool] = ACTIONS(672),
    [anon_sym_string] = ACTIONS(672),
    [anon_sym_int] = ACTIONS(672),
    [anon_sym_int8] = ACTIONS(672),
    [anon_sym_int16] = ACTIONS(672),
    [anon_sym_int24] = ACTIONS(672),
    [anon_sym_int32] = ACTIONS(672),
    [anon_sym_int40] = ACTIONS(672),
    [anon_sym_int48] = ACTIONS(672),
    [anon_sym_int56] = ACTIONS(672),
    [anon_sym_int64] = ACTIONS(672),
    [anon_sym_int72] = ACTIONS(672),
    [anon_sym_int80] = ACTIONS(672),
    [anon_sym_int88] = ACTIONS(672),
    [anon_sym_int96] = ACTIONS(672),
    [anon_sym_int104] = ACTIONS(672),
    [anon_sym_int112] = ACTIONS(672),
    [anon_sym_int120] = ACTIONS(672),
    [anon_sym_int128] = ACTIONS(672),
    [anon_sym_int136] = ACTIONS(672),
    [anon_sym_int144] = ACTIONS(672),
    [anon_sym_int152] = ACTIONS(672),
    [anon_sym_int160] = ACTIONS(672),
    [anon_sym_int168] = ACTIONS(672),
    [anon_sym_int176] = ACTIONS(672),
    [anon_sym_int184] = ACTIONS(672),
    [anon_sym_int192] = ACTIONS(672),
    [anon_sym_int200] = ACTIONS(672),
    [anon_sym_int208] = ACTIONS(672),
    [anon_sym_int216] = ACTIONS(672),
    [anon_sym_int224] = ACTIONS(672),
    [anon_sym_int232] = ACTIONS(672),
    [anon_sym_int240] = ACTIONS(672),
    [anon_sym_int248] = ACTIONS(672),
    [anon_sym_int256] = ACTIONS(672),
    [anon_sym_uint] = ACTIONS(672),
    [anon_sym_uint8] = ACTIONS(672),
    [anon_sym_uint16] = ACTIONS(672),
    [anon_sym_uint24] = ACTIONS(672),
    [anon_sym_uint32] = ACTIONS(672),
    [anon_sym_uint40] = ACTIONS(672),
    [anon_sym_uint48] = ACTIONS(672),
    [anon_sym_uint56] = ACTIONS(672),
    [anon_sym_uint64] = ACTIONS(672),
    [anon_sym_uint72] = ACTIONS(672),
    [anon_sym_uint80] = ACTIONS(672),
    [anon_sym_uint88] = ACTIONS(672),
    [anon_sym_uint96] = ACTIONS(672),
    [anon_sym_uint104] = ACTIONS(672),
    [anon_sym_uint112] = ACTIONS(672),
    [anon_sym_uint120] = ACTIONS(672),
    [anon_sym_uint128] = ACTIONS(672),
    [anon_sym_uint136] = ACTIONS(672),
    [anon_sym_uint144] = ACTIONS(672),
    [anon_sym_uint152] = ACTIONS(672),
    [anon_sym_uint160] = ACTIONS(672),
    [anon_sym_uint168] = ACTIONS(672),
    [anon_sym_uint176] = ACTIONS(672),
    [anon_sym_uint184] = ACTIONS(672),
    [anon_sym_uint192] = ACTIONS(672),
    [anon_sym_uint200] = ACTIONS(672),
    [anon_sym_uint208] = ACTIONS(672),
    [anon_sym_uint216] = ACTIONS(672),
    [anon_sym_uint224] = ACTIONS(672),
    [anon_sym_uint232] = ACTIONS(672),
    [anon_sym_uint240] = ACTIONS(672),
    [anon_sym_uint248] = ACTIONS(672),
    [anon_sym_uint256] = ACTIONS(672),
    [anon_sym_bytes] = ACTIONS(672),
    [anon_sym_bytes1] = ACTIONS(672),
    [anon_sym_bytes2] = ACTIONS(672),
    [anon_sym_bytes3] = ACTIONS(672),
    [anon_sym_bytes4] = ACTIONS(672),
    [anon_sym_bytes5] = ACTIONS(672),
    [anon_sym_bytes6] = ACTIONS(672),
    [anon_sym_bytes7] = ACTIONS(672),
    [anon_sym_bytes8] = ACTIONS(672),
    [anon_sym_bytes9] = ACTIONS(672),
    [anon_sym_bytes10] = ACTIONS(672),
    [anon_sym_bytes11] = ACTIONS(672),
    [anon_sym_bytes12] = ACTIONS(672),
    [anon_sym_bytes13] = ACTIONS(672),
    [anon_sym_bytes14] = ACTIONS(672),
    [anon_sym_bytes15] = ACTIONS(672),
    [anon_sym_bytes16] = ACTIONS(672),
    [anon_sym_bytes17] = ACTIONS(672),
    [anon_sym_bytes18] = ACTIONS(672),
    [anon_sym_bytes19] = ACTIONS(672),
    [anon_sym_bytes20] = ACTIONS(672),
    [anon_sym_bytes21] = ACTIONS(672),
    [anon_sym_bytes22] = ACTIONS(672),
    [anon_sym_bytes23] = ACTIONS(672),
    [anon_sym_bytes24] = ACTIONS(672),
    [anon_sym_bytes25] = ACTIONS(672),
    [anon_sym_bytes26] = ACTIONS(672),
    [anon_sym_bytes27] = ACTIONS(672),
    [anon_sym_bytes28] = ACTIONS(672),
    [anon_sym_bytes29] = ACTIONS(672),
    [anon_sym_bytes30] = ACTIONS(672),
    [anon_sym_bytes31] = ACTIONS(672),
    [anon_sym_bytes32] = ACTIONS(672),
    [anon_sym_fixed] = ACTIONS(672),
    [aux_sym__fixed_token1] = ACTIONS(672),
    [anon_sym_ufixed] = ACTIONS(672),
    [aux_sym__ufixed_token1] = ACTIONS(672),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(168)] = {
    [ts_builtin_sym_end] = ACTIONS(674),
    [sym_identifier] = ACTIONS(676),
    [anon_sym_pragma] = ACTIONS(676),
    [anon_sym_import] = ACTIONS(676),
    [anon_sym_type] = ACTIONS(676),
    [anon_sym_abstract] = ACTIONS(676),
    [anon_sym_contract] = ACTIONS(676),
    [anon_sym_error] = ACTIONS(676),
    [anon_sym_interface] = ACTIONS(676),
    [anon_sym_library] = ACTIONS(676),
    [anon_sym_struct] = ACTIONS(676),
    [anon_sym_enum] = ACTIONS(676),
    [anon_sym_event] = ACTIONS(676),
    [anon_sym_using] = ACTIONS(676),
    [anon_sym_function] = ACTIONS(676),
    [anon_sym_byte] = ACTIONS(676),
    [anon_sym_address] = ACTIONS(676),
    [anon_sym_var] = ACTIONS(676),
    [anon_sym_mapping] = ACTIONS(676),
    [anon_sym_bool] = ACTIONS(676),
    [anon_sym_string] = ACTIONS(676),
    [anon_sym_int] = ACTIONS(676),
    [anon_sym_int8] = ACTIONS(676),
    [anon_sym_int16] = ACTIONS(676),
    [anon_sym_int24] = ACTIONS(676),
    [anon_sym_int32] = ACTIONS(676),
    [anon_sym_int40] = ACTIONS(676),
    [anon_sym_int48] = ACTIONS(676),
    [anon_sym_int56] = ACTIONS(676),
    [anon_sym_int64] = ACTIONS(676),
    [anon_sym_int72] = ACTIONS(676),
    [anon_sym_int80] = ACTIONS(676),
    [anon_sym_int88] = ACTIONS(676),
    [anon_sym_int96] = ACTIONS(676),
    [anon_sym_int104] = ACTIONS(676),
    [anon_sym_int112] = ACTIONS(676),
    [anon_sym_int120] = ACTIONS(676),
    [anon_sym_int128] = ACTIONS(676),
    [anon_sym_int136] = ACTIONS(676),
    [anon_sym_int144] = ACTIONS(676),
    [anon_sym_int152] = ACTIONS(676),
    [anon_sym_int160] = ACTIONS(676),
    [anon_sym_int168] = ACTIONS(676),
    [anon_sym_int176] = ACTIONS(676),
    [anon_sym_int184] = ACTIONS(676),
    [anon_sym_int192] = ACTIONS(676),
    [anon_sym_int200] = ACTIONS(676),
    [anon_sym_int208] = ACTIONS(676),
    [anon_sym_int216] = ACTIONS(676),
    [anon_sym_int224] = ACTIONS(676),
    [anon_sym_int232] = ACTIONS(676),
    [anon_sym_int240] = ACTIONS(676),
    [anon_sym_int248] = ACTIONS(676),
    [anon_sym_int256] = ACTIONS(676),
    [anon_sym_uint] = ACTIONS(676),
    [anon_sym_uint8] = ACTIONS(676),
    [anon_sym_uint16] = ACTIONS(676),
    [anon_sym_uint24] = ACTIONS(676),
    [anon_sym_uint32] = ACTIONS(676),
    [anon_sym_uint40] = ACTIONS(676),
    [anon_sym_uint48] = ACTIONS(676),
    [anon_sym_uint56] = ACTIONS(676),
    [anon_sym_uint64] = ACTIONS(676),
    [anon_sym_uint72] = ACTIONS(676),
    [anon_sym_uint80] = ACTIONS(676),
    [anon_sym_uint88] = ACTIONS(676),
    [anon_sym_uint96] = ACTIONS(676),
    [anon_sym_uint104] = ACTIONS(676),
    [anon_sym_uint112] = ACTIONS(676),
    [anon_sym_uint120] = ACTIONS(676),
    [anon_sym_uint128] = ACTIONS(676),
    [anon_sym_uint136] = ACTIONS(676),
    [anon_sym_uint144] = ACTIONS(676),
    [anon_sym_uint152] = ACTIONS(676),
    [anon_sym_uint160] = ACTIONS(676),
    [anon_sym_uint168] = ACTIONS(676),
    [anon_sym_uint176] = ACTIONS(676),
    [anon_sym_uint184] = ACTIONS(676),
    [anon_sym_uint192] = ACTIONS(676),
    [anon_sym_uint200] = ACTIONS(676),
    [anon_sym_uint208] = ACTIONS(676),
    [anon_sym_uint216] = ACTIONS(676),
    [anon_sym_uint224] = ACTIONS(676),
    [anon_sym_uint232] = ACTIONS(676),
    [anon_sym_uint240] = ACTIONS(676),
    [anon_sym_uint248] = ACTIONS(676),
    [anon_sym_uint256] = ACTIONS(676),
    [anon_sym_bytes] = ACTIONS(676),
    [anon_sym_bytes1] = ACTIONS(676),
    [anon_sym_bytes2] = ACTIONS(676),
    [anon_sym_bytes3] = ACTIONS(676),
    [anon_sym_bytes4] = ACTIONS(676),
    [anon_sym_bytes5] = ACTIONS(676),
    [anon_sym_bytes6] = ACTIONS(676),
    [anon_sym_bytes7] = ACTIONS(676),
    [anon_sym_bytes8] = ACTIONS(676),
    [anon_sym_bytes9] = ACTIONS(676),
    [anon_sym_bytes10] = ACTIONS(676),
    [anon_sym_bytes11] = ACTIONS(676),
    [anon_sym_bytes12] = ACTIONS(676),
    [anon_sym_bytes13] = ACTIONS(676),
    [anon_sym_bytes14] = ACTIONS(676),
    [anon_sym_bytes15] = ACTIONS(676),
    [anon_sym_bytes16] = ACTIONS(676),
    [anon_sym_bytes17] = ACTIONS(676),
    [anon_sym_bytes18] = ACTIONS(676),
    [anon_sym_bytes19] = ACTIONS(676),
    [anon_sym_bytes20] = ACTIONS(676),
    [anon_sym_bytes21] = ACTIONS(676),
    [anon_sym_bytes22] = ACTIONS(676),
    [anon_sym_bytes23] = ACTIONS(676),
    [anon_sym_bytes24] = ACTIONS(676),
    [anon_sym_bytes25] = ACTIONS(676),
    [anon_sym_bytes26] = ACTIONS(676),
    [anon_sym_bytes27] = ACTIONS(676),
    [anon_sym_bytes28] = ACTIONS(676),
    [anon_sym_bytes29] = ACTIONS(676),
    [anon_sym_bytes30] = ACTIONS(676),
    [anon_sym_bytes31] = ACTIONS(676),
    [anon_sym_bytes32] = ACTIONS(676),
    [anon_sym_fixed] = ACTIONS(676),
    [aux_sym__fixed_token1] = ACTIONS(676),
    [anon_sym_ufixed] = ACTIONS(676),
    [aux_sym__ufixed_token1] = ACTIONS(676),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(169)] = {
    [ts_builtin_sym_end] = ACTIONS(678),
    [sym_identifier] = ACTIONS(680),
    [anon_sym_pragma] = ACTIONS(680),
    [anon_sym_import] = ACTIONS(680),
    [anon_sym_type] = ACTIONS(680),
    [anon_sym_abstract] = ACTIONS(680),
    [anon_sym_contract] = ACTIONS(680),
    [anon_sym_error] = ACTIONS(680),
    [anon_sym_interface] = ACTIONS(680),
    [anon_sym_library] = ACTIONS(680),
    [anon_sym_struct] = ACTIONS(680),
    [anon_sym_enum] = ACTIONS(680),
    [anon_sym_event] = ACTIONS(680),
    [anon_sym_using] = ACTIONS(680),
    [anon_sym_function] = ACTIONS(680),
    [anon_sym_byte] = ACTIONS(680),
    [anon_sym_address] = ACTIONS(680),
    [anon_sym_var] = ACTIONS(680),
    [anon_sym_mapping] = ACTIONS(680),
    [anon_sym_bool] = ACTIONS(680),
    [anon_sym_string] = ACTIONS(680),
    [anon_sym_int] = ACTIONS(680),
    [anon_sym_int8] = ACTIONS(680),
    [anon_sym_int16] = ACTIONS(680),
    [anon_sym_int24] = ACTIONS(680),
    [anon_sym_int32] = ACTIONS(680),
    [anon_sym_int40] = ACTIONS(680),
    [anon_sym_int48] = ACTIONS(680),
    [anon_sym_int56] = ACTIONS(680),
    [anon_sym_int64] = ACTIONS(680),
    [anon_sym_int72] = ACTIONS(680),
    [anon_sym_int80] = ACTIONS(680),
    [anon_sym_int88] = ACTIONS(680),
    [anon_sym_int96] = ACTIONS(680),
    [anon_sym_int104] = ACTIONS(680),
    [anon_sym_int112] = ACTIONS(680),
    [anon_sym_int120] = ACTIONS(680),
    [anon_sym_int128] = ACTIONS(680),
    [anon_sym_int136] = ACTIONS(680),
    [anon_sym_int144] = ACTIONS(680),
    [anon_sym_int152] = ACTIONS(680),
    [anon_sym_int160] = ACTIONS(680),
    [anon_sym_int168] = ACTIONS(680),
    [anon_sym_int176] = ACTIONS(680),
    [anon_sym_int184] = ACTIONS(680),
    [anon_sym_int192] = ACTIONS(680),
    [anon_sym_int200] = ACTIONS(680),
    [anon_sym_int208] = ACTIONS(680),
    [anon_sym_int216] = ACTIONS(680),
    [anon_sym_int224] = ACTIONS(680),
    [anon_sym_int232] = ACTIONS(680),
    [anon_sym_int240] = ACTIONS(680),
    [anon_sym_int248] = ACTIONS(680),
    [anon_sym_int256] = ACTIONS(680),
    [anon_sym_uint] = ACTIONS(680),
    [anon_sym_uint8] = ACTIONS(680),
    [anon_sym_uint16] = ACTIONS(680),
    [anon_sym_uint24] = ACTIONS(680),
    [anon_sym_uint32] = ACTIONS(680),
    [anon_sym_uint40] = ACTIONS(680),
    [anon_sym_uint48] = ACTIONS(680),
    [anon_sym_uint56] = ACTIONS(680),
    [anon_sym_uint64] = ACTIONS(680),
    [anon_sym_uint72] = ACTIONS(680),
    [anon_sym_uint80] = ACTIONS(680),
    [anon_sym_uint88] = ACTIONS(680),
    [anon_sym_uint96] = ACTIONS(680),
    [anon_sym_uint104] = ACTIONS(680),
    [anon_sym_uint112] = ACTIONS(680),
    [anon_sym_uint120] = ACTIONS(680),
    [anon_sym_uint128] = ACTIONS(680),
    [anon_sym_uint136] = ACTIONS(680),
    [anon_sym_uint144] = ACTIONS(680),
    [anon_sym_uint152] = ACTIONS(680),
    [anon_sym_uint160] = ACTIONS(680),
    [anon_sym_uint168] = ACTIONS(680),
    [anon_sym_uint176] = ACTIONS(680),
    [anon_sym_uint184] = ACTIONS(680),
    [anon_sym_uint192] = ACTIONS(680),
    [anon_sym_uint200] = ACTIONS(680),
    [anon_sym_uint208] = ACTIONS(680),
    [anon_sym_uint216] = ACTIONS(680),
    [anon_sym_uint224] = ACTIONS(680),
    [anon_sym_uint232] = ACTIONS(680),
    [anon_sym_uint240] = ACTIONS(680),
    [anon_sym_uint248] = ACTIONS(680),
    [anon_sym_uint256] = ACTIONS(680),
    [anon_sym_bytes] = ACTIONS(680),
    [anon_sym_bytes1] = ACTIONS(680),
    [anon_sym_bytes2] = ACTIONS(680),
    [anon_sym_bytes3] = ACTIONS(680),
    [anon_sym_bytes4] = ACTIONS(680),
    [anon_sym_bytes5] = ACTIONS(680),
    [anon_sym_bytes6] = ACTIONS(680),
    [anon_sym_bytes7] = ACTIONS(680),
    [anon_sym_bytes8] = ACTIONS(680),
    [anon_sym_bytes9] = ACTIONS(680),
    [anon_sym_bytes10] = ACTIONS(680),
    [anon_sym_bytes11] = ACTIONS(680),
    [anon_sym_bytes12] = ACTIONS(680),
    [anon_sym_bytes13] = ACTIONS(680),
    [anon_sym_bytes14] = ACTIONS(680),
    [anon_sym_bytes15] = ACTIONS(680),
    [anon_sym_bytes16] = ACTIONS(680),
    [anon_sym_bytes17] = ACTIONS(680),
    [anon_sym_bytes18] = ACTIONS(680),
    [anon_sym_bytes19] = ACTIONS(680),
    [anon_sym_bytes20] = ACTIONS(680),
    [anon_sym_bytes21] = ACTIONS(680),
    [anon_sym_bytes22] = ACTIONS(680),
    [anon_sym_bytes23] = ACTIONS(680),
    [anon_sym_bytes24] = ACTIONS(680),
    [anon_sym_bytes25] = ACTIONS(680),
    [anon_sym_bytes26] = ACTIONS(680),
    [anon_sym_bytes27] = ACTIONS(680),
    [anon_sym_bytes28] = ACTIONS(680),
    [anon_sym_bytes29] = ACTIONS(680),
    [anon_sym_bytes30] = ACTIONS(680),
    [anon_sym_bytes31] = ACTIONS(680),
    [anon_sym_bytes32] = ACTIONS(680),
    [anon_sym_fixed] = ACTIONS(680),
    [aux_sym__fixed_token1] = ACTIONS(680),
    [anon_sym_ufixed] = ACTIONS(680),
    [aux_sym__ufixed_token1] = ACTIONS(680),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(170)] = {
    [sym_type_name] = STATE(548),
    [sym__array_type] = STATE(380),
    [sym__function_type] = STATE(379),
    [sym__nameless_parameter] = STATE(770),
    [sym_user_defined_type] = STATE(380),
    [sym__identifier_path] = STATE(367),
    [sym__mapping] = STATE(381),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym_identifier] = ACTIONS(7),
    [anon_sym_function] = ACTIONS(75),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_mapping] = ACTIONS(39),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(171)] = {
    [ts_builtin_sym_end] = ACTIONS(682),
    [sym_identifier] = ACTIONS(684),
    [anon_sym_pragma] = ACTIONS(684),
    [anon_sym_import] = ACTIONS(684),
    [anon_sym_type] = ACTIONS(684),
    [anon_sym_abstract] = ACTIONS(684),
    [anon_sym_contract] = ACTIONS(684),
    [anon_sym_error] = ACTIONS(684),
    [anon_sym_interface] = ACTIONS(684),
    [anon_sym_library] = ACTIONS(684),
    [anon_sym_struct] = ACTIONS(684),
    [anon_sym_enum] = ACTIONS(684),
    [anon_sym_event] = ACTIONS(684),
    [anon_sym_using] = ACTIONS(684),
    [anon_sym_function] = ACTIONS(684),
    [anon_sym_byte] = ACTIONS(684),
    [anon_sym_address] = ACTIONS(684),
    [anon_sym_var] = ACTIONS(684),
    [anon_sym_mapping] = ACTIONS(684),
    [anon_sym_bool] = ACTIONS(684),
    [anon_sym_string] = ACTIONS(684),
    [anon_sym_int] = ACTIONS(684),
    [anon_sym_int8] = ACTIONS(684),
    [anon_sym_int16] = ACTIONS(684),
    [anon_sym_int24] = ACTIONS(684),
    [anon_sym_int32] = ACTIONS(684),
    [anon_sym_int40] = ACTIONS(684),
    [anon_sym_int48] = ACTIONS(684),
    [anon_sym_int56] = ACTIONS(684),
    [anon_sym_int64] = ACTIONS(684),
    [anon_sym_int72] = ACTIONS(684),
    [anon_sym_int80] = ACTIONS(684),
    [anon_sym_int88] = ACTIONS(684),
    [anon_sym_int96] = ACTIONS(684),
    [anon_sym_int104] = ACTIONS(684),
    [anon_sym_int112] = ACTIONS(684),
    [anon_sym_int120] = ACTIONS(684),
    [anon_sym_int128] = ACTIONS(684),
    [anon_sym_int136] = ACTIONS(684),
    [anon_sym_int144] = ACTIONS(684),
    [anon_sym_int152] = ACTIONS(684),
    [anon_sym_int160] = ACTIONS(684),
    [anon_sym_int168] = ACTIONS(684),
    [anon_sym_int176] = ACTIONS(684),
    [anon_sym_int184] = ACTIONS(684),
    [anon_sym_int192] = ACTIONS(684),
    [anon_sym_int200] = ACTIONS(684),
    [anon_sym_int208] = ACTIONS(684),
    [anon_sym_int216] = ACTIONS(684),
    [anon_sym_int224] = ACTIONS(684),
    [anon_sym_int232] = ACTIONS(684),
    [anon_sym_int240] = ACTIONS(684),
    [anon_sym_int248] = ACTIONS(684),
    [anon_sym_int256] = ACTIONS(684),
    [anon_sym_uint] = ACTIONS(684),
    [anon_sym_uint8] = ACTIONS(684),
    [anon_sym_uint16] = ACTIONS(684),
    [anon_sym_uint24] = ACTIONS(684),
    [anon_sym_uint32] = ACTIONS(684),
    [anon_sym_uint40] = ACTIONS(684),
    [anon_sym_uint48] = ACTIONS(684),
    [anon_sym_uint56] = ACTIONS(684),
    [anon_sym_uint64] = ACTIONS(684),
    [anon_sym_uint72] = ACTIONS(684),
    [anon_sym_uint80] = ACTIONS(684),
    [anon_sym_uint88] = ACTIONS(684),
    [anon_sym_uint96] = ACTIONS(684),
    [anon_sym_uint104] = ACTIONS(684),
    [anon_sym_uint112] = ACTIONS(684),
    [anon_sym_uint120] = ACTIONS(684),
    [anon_sym_uint128] = ACTIONS(684),
    [anon_sym_uint136] = ACTIONS(684),
    [anon_sym_uint144] = ACTIONS(684),
    [anon_sym_uint152] = ACTIONS(684),
    [anon_sym_uint160] = ACTIONS(684),
    [anon_sym_uint168] = ACTIONS(684),
    [anon_sym_uint176] = ACTIONS(684),
    [anon_sym_uint184] = ACTIONS(684),
    [anon_sym_uint192] = ACTIONS(684),
    [anon_sym_uint200] = ACTIONS(684),
    [anon_sym_uint208] = ACTIONS(684),
    [anon_sym_uint216] = ACTIONS(684),
    [anon_sym_uint224] = ACTIONS(684),
    [anon_sym_uint232] = ACTIONS(684),
    [anon_sym_uint240] = ACTIONS(684),
    [anon_sym_uint248] = ACTIONS(684),
    [anon_sym_uint256] = ACTIONS(684),
    [anon_sym_bytes] = ACTIONS(684),
    [anon_sym_bytes1] = ACTIONS(684),
    [anon_sym_bytes2] = ACTIONS(684),
    [anon_sym_bytes3] = ACTIONS(684),
    [anon_sym_bytes4] = ACTIONS(684),
    [anon_sym_bytes5] = ACTIONS(684),
    [anon_sym_bytes6] = ACTIONS(684),
    [anon_sym_bytes7] = ACTIONS(684),
    [anon_sym_bytes8] = ACTIONS(684),
    [anon_sym_bytes9] = ACTIONS(684),
    [anon_sym_bytes10] = ACTIONS(684),
    [anon_sym_bytes11] = ACTIONS(684),
    [anon_sym_bytes12] = ACTIONS(684),
    [anon_sym_bytes13] = ACTIONS(684),
    [anon_sym_bytes14] = ACTIONS(684),
    [anon_sym_bytes15] = ACTIONS(684),
    [anon_sym_bytes16] = ACTIONS(684),
    [anon_sym_bytes17] = ACTIONS(684),
    [anon_sym_bytes18] = ACTIONS(684),
    [anon_sym_bytes19] = ACTIONS(684),
    [anon_sym_bytes20] = ACTIONS(684),
    [anon_sym_bytes21] = ACTIONS(684),
    [anon_sym_bytes22] = ACTIONS(684),
    [anon_sym_bytes23] = ACTIONS(684),
    [anon_sym_bytes24] = ACTIONS(684),
    [anon_sym_bytes25] = ACTIONS(684),
    [anon_sym_bytes26] = ACTIONS(684),
    [anon_sym_bytes27] = ACTIONS(684),
    [anon_sym_bytes28] = ACTIONS(684),
    [anon_sym_bytes29] = ACTIONS(684),
    [anon_sym_bytes30] = ACTIONS(684),
    [anon_sym_bytes31] = ACTIONS(684),
    [anon_sym_bytes32] = ACTIONS(684),
    [anon_sym_fixed] = ACTIONS(684),
    [aux_sym__fixed_token1] = ACTIONS(684),
    [anon_sym_ufixed] = ACTIONS(684),
    [aux_sym__ufixed_token1] = ACTIONS(684),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(172)] = {
    [ts_builtin_sym_end] = ACTIONS(686),
    [sym_identifier] = ACTIONS(688),
    [anon_sym_pragma] = ACTIONS(688),
    [anon_sym_import] = ACTIONS(688),
    [anon_sym_type] = ACTIONS(688),
    [anon_sym_abstract] = ACTIONS(688),
    [anon_sym_contract] = ACTIONS(688),
    [anon_sym_error] = ACTIONS(688),
    [anon_sym_interface] = ACTIONS(688),
    [anon_sym_library] = ACTIONS(688),
    [anon_sym_struct] = ACTIONS(688),
    [anon_sym_enum] = ACTIONS(688),
    [anon_sym_event] = ACTIONS(688),
    [anon_sym_using] = ACTIONS(688),
    [anon_sym_function] = ACTIONS(688),
    [anon_sym_byte] = ACTIONS(688),
    [anon_sym_address] = ACTIONS(688),
    [anon_sym_var] = ACTIONS(688),
    [anon_sym_mapping] = ACTIONS(688),
    [anon_sym_bool] = ACTIONS(688),
    [anon_sym_string] = ACTIONS(688),
    [anon_sym_int] = ACTIONS(688),
    [anon_sym_int8] = ACTIONS(688),
    [anon_sym_int16] = ACTIONS(688),
    [anon_sym_int24] = ACTIONS(688),
    [anon_sym_int32] = ACTIONS(688),
    [anon_sym_int40] = ACTIONS(688),
    [anon_sym_int48] = ACTIONS(688),
    [anon_sym_int56] = ACTIONS(688),
    [anon_sym_int64] = ACTIONS(688),
    [anon_sym_int72] = ACTIONS(688),
    [anon_sym_int80] = ACTIONS(688),
    [anon_sym_int88] = ACTIONS(688),
    [anon_sym_int96] = ACTIONS(688),
    [anon_sym_int104] = ACTIONS(688),
    [anon_sym_int112] = ACTIONS(688),
    [anon_sym_int120] = ACTIONS(688),
    [anon_sym_int128] = ACTIONS(688),
    [anon_sym_int136] = ACTIONS(688),
    [anon_sym_int144] = ACTIONS(688),
    [anon_sym_int152] = ACTIONS(688),
    [anon_sym_int160] = ACTIONS(688),
    [anon_sym_int168] = ACTIONS(688),
    [anon_sym_int176] = ACTIONS(688),
    [anon_sym_int184] = ACTIONS(688),
    [anon_sym_int192] = ACTIONS(688),
    [anon_sym_int200] = ACTIONS(688),
    [anon_sym_int208] = ACTIONS(688),
    [anon_sym_int216] = ACTIONS(688),
    [anon_sym_int224] = ACTIONS(688),
    [anon_sym_int232] = ACTIONS(688),
    [anon_sym_int240] = ACTIONS(688),
    [anon_sym_int248] = ACTIONS(688),
    [anon_sym_int256] = ACTIONS(688),
    [anon_sym_uint] = ACTIONS(688),
    [anon_sym_uint8] = ACTIONS(688),
    [anon_sym_uint16] = ACTIONS(688),
    [anon_sym_uint24] = ACTIONS(688),
    [anon_sym_uint32] = ACTIONS(688),
    [anon_sym_uint40] = ACTIONS(688),
    [anon_sym_uint48] = ACTIONS(688),
    [anon_sym_uint56] = ACTIONS(688),
    [anon_sym_uint64] = ACTIONS(688),
    [anon_sym_uint72] = ACTIONS(688),
    [anon_sym_uint80] = ACTIONS(688),
    [anon_sym_uint88] = ACTIONS(688),
    [anon_sym_uint96] = ACTIONS(688),
    [anon_sym_uint104] = ACTIONS(688),
    [anon_sym_uint112] = ACTIONS(688),
    [anon_sym_uint120] = ACTIONS(688),
    [anon_sym_uint128] = ACTIONS(688),
    [anon_sym_uint136] = ACTIONS(688),
    [anon_sym_uint144] = ACTIONS(688),
    [anon_sym_uint152] = ACTIONS(688),
    [anon_sym_uint160] = ACTIONS(688),
    [anon_sym_uint168] = ACTIONS(688),
    [anon_sym_uint176] = ACTIONS(688),
    [anon_sym_uint184] = ACTIONS(688),
    [anon_sym_uint192] = ACTIONS(688),
    [anon_sym_uint200] = ACTIONS(688),
    [anon_sym_uint208] = ACTIONS(688),
    [anon_sym_uint216] = ACTIONS(688),
    [anon_sym_uint224] = ACTIONS(688),
    [anon_sym_uint232] = ACTIONS(688),
    [anon_sym_uint240] = ACTIONS(688),
    [anon_sym_uint248] = ACTIONS(688),
    [anon_sym_uint256] = ACTIONS(688),
    [anon_sym_bytes] = ACTIONS(688),
    [anon_sym_bytes1] = ACTIONS(688),
    [anon_sym_bytes2] = ACTIONS(688),
    [anon_sym_bytes3] = ACTIONS(688),
    [anon_sym_bytes4] = ACTIONS(688),
    [anon_sym_bytes5] = ACTIONS(688),
    [anon_sym_bytes6] = ACTIONS(688),
    [anon_sym_bytes7] = ACTIONS(688),
    [anon_sym_bytes8] = ACTIONS(688),
    [anon_sym_bytes9] = ACTIONS(688),
    [anon_sym_bytes10] = ACTIONS(688),
    [anon_sym_bytes11] = ACTIONS(688),
    [anon_sym_bytes12] = ACTIONS(688),
    [anon_sym_bytes13] = ACTIONS(688),
    [anon_sym_bytes14] = ACTIONS(688),
    [anon_sym_bytes15] = ACTIONS(688),
    [anon_sym_bytes16] = ACTIONS(688),
    [anon_sym_bytes17] = ACTIONS(688),
    [anon_sym_bytes18] = ACTIONS(688),
    [anon_sym_bytes19] = ACTIONS(688),
    [anon_sym_bytes20] = ACTIONS(688),
    [anon_sym_bytes21] = ACTIONS(688),
    [anon_sym_bytes22] = ACTIONS(688),
    [anon_sym_bytes23] = ACTIONS(688),
    [anon_sym_bytes24] = ACTIONS(688),
    [anon_sym_bytes25] = ACTIONS(688),
    [anon_sym_bytes26] = ACTIONS(688),
    [anon_sym_bytes27] = ACTIONS(688),
    [anon_sym_bytes28] = ACTIONS(688),
    [anon_sym_bytes29] = ACTIONS(688),
    [anon_sym_bytes30] = ACTIONS(688),
    [anon_sym_bytes31] = ACTIONS(688),
    [anon_sym_bytes32] = ACTIONS(688),
    [anon_sym_fixed] = ACTIONS(688),
    [aux_sym__fixed_token1] = ACTIONS(688),
    [anon_sym_ufixed] = ACTIONS(688),
    [aux_sym__ufixed_token1] = ACTIONS(688),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(173)] = {
    [ts_builtin_sym_end] = ACTIONS(690),
    [sym_identifier] = ACTIONS(692),
    [anon_sym_pragma] = ACTIONS(692),
    [anon_sym_import] = ACTIONS(692),
    [anon_sym_type] = ACTIONS(692),
    [anon_sym_abstract] = ACTIONS(692),
    [anon_sym_contract] = ACTIONS(692),
    [anon_sym_error] = ACTIONS(692),
    [anon_sym_interface] = ACTIONS(692),
    [anon_sym_library] = ACTIONS(692),
    [anon_sym_struct] = ACTIONS(692),
    [anon_sym_enum] = ACTIONS(692),
    [anon_sym_event] = ACTIONS(692),
    [anon_sym_using] = ACTIONS(692),
    [anon_sym_function] = ACTIONS(692),
    [anon_sym_byte] = ACTIONS(692),
    [anon_sym_address] = ACTIONS(692),
    [anon_sym_var] = ACTIONS(692),
    [anon_sym_mapping] = ACTIONS(692),
    [anon_sym_bool] = ACTIONS(692),
    [anon_sym_string] = ACTIONS(692),
    [anon_sym_int] = ACTIONS(692),
    [anon_sym_int8] = ACTIONS(692),
    [anon_sym_int16] = ACTIONS(692),
    [anon_sym_int24] = ACTIONS(692),
    [anon_sym_int32] = ACTIONS(692),
    [anon_sym_int40] = ACTIONS(692),
    [anon_sym_int48] = ACTIONS(692),
    [anon_sym_int56] = ACTIONS(692),
    [anon_sym_int64] = ACTIONS(692),
    [anon_sym_int72] = ACTIONS(692),
    [anon_sym_int80] = ACTIONS(692),
    [anon_sym_int88] = ACTIONS(692),
    [anon_sym_int96] = ACTIONS(692),
    [anon_sym_int104] = ACTIONS(692),
    [anon_sym_int112] = ACTIONS(692),
    [anon_sym_int120] = ACTIONS(692),
    [anon_sym_int128] = ACTIONS(692),
    [anon_sym_int136] = ACTIONS(692),
    [anon_sym_int144] = ACTIONS(692),
    [anon_sym_int152] = ACTIONS(692),
    [anon_sym_int160] = ACTIONS(692),
    [anon_sym_int168] = ACTIONS(692),
    [anon_sym_int176] = ACTIONS(692),
    [anon_sym_int184] = ACTIONS(692),
    [anon_sym_int192] = ACTIONS(692),
    [anon_sym_int200] = ACTIONS(692),
    [anon_sym_int208] = ACTIONS(692),
    [anon_sym_int216] = ACTIONS(692),
    [anon_sym_int224] = ACTIONS(692),
    [anon_sym_int232] = ACTIONS(692),
    [anon_sym_int240] = ACTIONS(692),
    [anon_sym_int248] = ACTIONS(692),
    [anon_sym_int256] = ACTIONS(692),
    [anon_sym_uint] = ACTIONS(692),
    [anon_sym_uint8] = ACTIONS(692),
    [anon_sym_uint16] = ACTIONS(692),
    [anon_sym_uint24] = ACTIONS(692),
    [anon_sym_uint32] = ACTIONS(692),
    [anon_sym_uint40] = ACTIONS(692),
    [anon_sym_uint48] = ACTIONS(692),
    [anon_sym_uint56] = ACTIONS(692),
    [anon_sym_uint64] = ACTIONS(692),
    [anon_sym_uint72] = ACTIONS(692),
    [anon_sym_uint80] = ACTIONS(692),
    [anon_sym_uint88] = ACTIONS(692),
    [anon_sym_uint96] = ACTIONS(692),
    [anon_sym_uint104] = ACTIONS(692),
    [anon_sym_uint112] = ACTIONS(692),
    [anon_sym_uint120] = ACTIONS(692),
    [anon_sym_uint128] = ACTIONS(692),
    [anon_sym_uint136] = ACTIONS(692),
    [anon_sym_uint144] = ACTIONS(692),
    [anon_sym_uint152] = ACTIONS(692),
    [anon_sym_uint160] = ACTIONS(692),
    [anon_sym_uint168] = ACTIONS(692),
    [anon_sym_uint176] = ACTIONS(692),
    [anon_sym_uint184] = ACTIONS(692),
    [anon_sym_uint192] = ACTIONS(692),
    [anon_sym_uint200] = ACTIONS(692),
    [anon_sym_uint208] = ACTIONS(692),
    [anon_sym_uint216] = ACTIONS(692),
    [anon_sym_uint224] = ACTIONS(692),
    [anon_sym_uint232] = ACTIONS(692),
    [anon_sym_uint240] = ACTIONS(692),
    [anon_sym_uint248] = ACTIONS(692),
    [anon_sym_uint256] = ACTIONS(692),
    [anon_sym_bytes] = ACTIONS(692),
    [anon_sym_bytes1] = ACTIONS(692),
    [anon_sym_bytes2] = ACTIONS(692),
    [anon_sym_bytes3] = ACTIONS(692),
    [anon_sym_bytes4] = ACTIONS(692),
    [anon_sym_bytes5] = ACTIONS(692),
    [anon_sym_bytes6] = ACTIONS(692),
    [anon_sym_bytes7] = ACTIONS(692),
    [anon_sym_bytes8] = ACTIONS(692),
    [anon_sym_bytes9] = ACTIONS(692),
    [anon_sym_bytes10] = ACTIONS(692),
    [anon_sym_bytes11] = ACTIONS(692),
    [anon_sym_bytes12] = ACTIONS(692),
    [anon_sym_bytes13] = ACTIONS(692),
    [anon_sym_bytes14] = ACTIONS(692),
    [anon_sym_bytes15] = ACTIONS(692),
    [anon_sym_bytes16] = ACTIONS(692),
    [anon_sym_bytes17] = ACTIONS(692),
    [anon_sym_bytes18] = ACTIONS(692),
    [anon_sym_bytes19] = ACTIONS(692),
    [anon_sym_bytes20] = ACTIONS(692),
    [anon_sym_bytes21] = ACTIONS(692),
    [anon_sym_bytes22] = ACTIONS(692),
    [anon_sym_bytes23] = ACTIONS(692),
    [anon_sym_bytes24] = ACTIONS(692),
    [anon_sym_bytes25] = ACTIONS(692),
    [anon_sym_bytes26] = ACTIONS(692),
    [anon_sym_bytes27] = ACTIONS(692),
    [anon_sym_bytes28] = ACTIONS(692),
    [anon_sym_bytes29] = ACTIONS(692),
    [anon_sym_bytes30] = ACTIONS(692),
    [anon_sym_bytes31] = ACTIONS(692),
    [anon_sym_bytes32] = ACTIONS(692),
    [anon_sym_fixed] = ACTIONS(692),
    [aux_sym__fixed_token1] = ACTIONS(692),
    [anon_sym_ufixed] = ACTIONS(692),
    [aux_sym__ufixed_token1] = ACTIONS(692),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(174)] = {
    [ts_builtin_sym_end] = ACTIONS(694),
    [sym_identifier] = ACTIONS(696),
    [anon_sym_pragma] = ACTIONS(696),
    [anon_sym_import] = ACTIONS(696),
    [anon_sym_type] = ACTIONS(696),
    [anon_sym_abstract] = ACTIONS(696),
    [anon_sym_contract] = ACTIONS(696),
    [anon_sym_error] = ACTIONS(696),
    [anon_sym_interface] = ACTIONS(696),
    [anon_sym_library] = ACTIONS(696),
    [anon_sym_struct] = ACTIONS(696),
    [anon_sym_enum] = ACTIONS(696),
    [anon_sym_event] = ACTIONS(696),
    [anon_sym_using] = ACTIONS(696),
    [anon_sym_function] = ACTIONS(696),
    [anon_sym_byte] = ACTIONS(696),
    [anon_sym_address] = ACTIONS(696),
    [anon_sym_var] = ACTIONS(696),
    [anon_sym_mapping] = ACTIONS(696),
    [anon_sym_bool] = ACTIONS(696),
    [anon_sym_string] = ACTIONS(696),
    [anon_sym_int] = ACTIONS(696),
    [anon_sym_int8] = ACTIONS(696),
    [anon_sym_int16] = ACTIONS(696),
    [anon_sym_int24] = ACTIONS(696),
    [anon_sym_int32] = ACTIONS(696),
    [anon_sym_int40] = ACTIONS(696),
    [anon_sym_int48] = ACTIONS(696),
    [anon_sym_int56] = ACTIONS(696),
    [anon_sym_int64] = ACTIONS(696),
    [anon_sym_int72] = ACTIONS(696),
    [anon_sym_int80] = ACTIONS(696),
    [anon_sym_int88] = ACTIONS(696),
    [anon_sym_int96] = ACTIONS(696),
    [anon_sym_int104] = ACTIONS(696),
    [anon_sym_int112] = ACTIONS(696),
    [anon_sym_int120] = ACTIONS(696),
    [anon_sym_int128] = ACTIONS(696),
    [anon_sym_int136] = ACTIONS(696),
    [anon_sym_int144] = ACTIONS(696),
    [anon_sym_int152] = ACTIONS(696),
    [anon_sym_int160] = ACTIONS(696),
    [anon_sym_int168] = ACTIONS(696),
    [anon_sym_int176] = ACTIONS(696),
    [anon_sym_int184] = ACTIONS(696),
    [anon_sym_int192] = ACTIONS(696),
    [anon_sym_int200] = ACTIONS(696),
    [anon_sym_int208] = ACTIONS(696),
    [anon_sym_int216] = ACTIONS(696),
    [anon_sym_int224] = ACTIONS(696),
    [anon_sym_int232] = ACTIONS(696),
    [anon_sym_int240] = ACTIONS(696),
    [anon_sym_int248] = ACTIONS(696),
    [anon_sym_int256] = ACTIONS(696),
    [anon_sym_uint] = ACTIONS(696),
    [anon_sym_uint8] = ACTIONS(696),
    [anon_sym_uint16] = ACTIONS(696),
    [anon_sym_uint24] = ACTIONS(696),
    [anon_sym_uint32] = ACTIONS(696),
    [anon_sym_uint40] = ACTIONS(696),
    [anon_sym_uint48] = ACTIONS(696),
    [anon_sym_uint56] = ACTIONS(696),
    [anon_sym_uint64] = ACTIONS(696),
    [anon_sym_uint72] = ACTIONS(696),
    [anon_sym_uint80] = ACTIONS(696),
    [anon_sym_uint88] = ACTIONS(696),
    [anon_sym_uint96] = ACTIONS(696),
    [anon_sym_uint104] = ACTIONS(696),
    [anon_sym_uint112] = ACTIONS(696),
    [anon_sym_uint120] = ACTIONS(696),
    [anon_sym_uint128] = ACTIONS(696),
    [anon_sym_uint136] = ACTIONS(696),
    [anon_sym_uint144] = ACTIONS(696),
    [anon_sym_uint152] = ACTIONS(696),
    [anon_sym_uint160] = ACTIONS(696),
    [anon_sym_uint168] = ACTIONS(696),
    [anon_sym_uint176] = ACTIONS(696),
    [anon_sym_uint184] = ACTIONS(696),
    [anon_sym_uint192] = ACTIONS(696),
    [anon_sym_uint200] = ACTIONS(696),
    [anon_sym_uint208] = ACTIONS(696),
    [anon_sym_uint216] = ACTIONS(696),
    [anon_sym_uint224] = ACTIONS(696),
    [anon_sym_uint232] = ACTIONS(696),
    [anon_sym_uint240] = ACTIONS(696),
    [anon_sym_uint248] = ACTIONS(696),
    [anon_sym_uint256] = ACTIONS(696),
    [anon_sym_bytes] = ACTIONS(696),
    [anon_sym_bytes1] = ACTIONS(696),
    [anon_sym_bytes2] = ACTIONS(696),
    [anon_sym_bytes3] = ACTIONS(696),
    [anon_sym_bytes4] = ACTIONS(696),
    [anon_sym_bytes5] = ACTIONS(696),
    [anon_sym_bytes6] = ACTIONS(696),
    [anon_sym_bytes7] = ACTIONS(696),
    [anon_sym_bytes8] = ACTIONS(696),
    [anon_sym_bytes9] = ACTIONS(696),
    [anon_sym_bytes10] = ACTIONS(696),
    [anon_sym_bytes11] = ACTIONS(696),
    [anon_sym_bytes12] = ACTIONS(696),
    [anon_sym_bytes13] = ACTIONS(696),
    [anon_sym_bytes14] = ACTIONS(696),
    [anon_sym_bytes15] = ACTIONS(696),
    [anon_sym_bytes16] = ACTIONS(696),
    [anon_sym_bytes17] = ACTIONS(696),
    [anon_sym_bytes18] = ACTIONS(696),
    [anon_sym_bytes19] = ACTIONS(696),
    [anon_sym_bytes20] = ACTIONS(696),
    [anon_sym_bytes21] = ACTIONS(696),
    [anon_sym_bytes22] = ACTIONS(696),
    [anon_sym_bytes23] = ACTIONS(696),
    [anon_sym_bytes24] = ACTIONS(696),
    [anon_sym_bytes25] = ACTIONS(696),
    [anon_sym_bytes26] = ACTIONS(696),
    [anon_sym_bytes27] = ACTIONS(696),
    [anon_sym_bytes28] = ACTIONS(696),
    [anon_sym_bytes29] = ACTIONS(696),
    [anon_sym_bytes30] = ACTIONS(696),
    [anon_sym_bytes31] = ACTIONS(696),
    [anon_sym_bytes32] = ACTIONS(696),
    [anon_sym_fixed] = ACTIONS(696),
    [aux_sym__fixed_token1] = ACTIONS(696),
    [anon_sym_ufixed] = ACTIONS(696),
    [aux_sym__ufixed_token1] = ACTIONS(696),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(175)] = {
    [ts_builtin_sym_end] = ACTIONS(698),
    [sym_identifier] = ACTIONS(700),
    [anon_sym_pragma] = ACTIONS(700),
    [anon_sym_import] = ACTIONS(700),
    [anon_sym_type] = ACTIONS(700),
    [anon_sym_abstract] = ACTIONS(700),
    [anon_sym_contract] = ACTIONS(700),
    [anon_sym_error] = ACTIONS(700),
    [anon_sym_interface] = ACTIONS(700),
    [anon_sym_library] = ACTIONS(700),
    [anon_sym_struct] = ACTIONS(700),
    [anon_sym_enum] = ACTIONS(700),
    [anon_sym_event] = ACTIONS(700),
    [anon_sym_using] = ACTIONS(700),
    [anon_sym_function] = ACTIONS(700),
    [anon_sym_byte] = ACTIONS(700),
    [anon_sym_address] = ACTIONS(700),
    [anon_sym_var] = ACTIONS(700),
    [anon_sym_mapping] = ACTIONS(700),
    [anon_sym_bool] = ACTIONS(700),
    [anon_sym_string] = ACTIONS(700),
    [anon_sym_int] = ACTIONS(700),
    [anon_sym_int8] = ACTIONS(700),
    [anon_sym_int16] = ACTIONS(700),
    [anon_sym_int24] = ACTIONS(700),
    [anon_sym_int32] = ACTIONS(700),
    [anon_sym_int40] = ACTIONS(700),
    [anon_sym_int48] = ACTIONS(700),
    [anon_sym_int56] = ACTIONS(700),
    [anon_sym_int64] = ACTIONS(700),
    [anon_sym_int72] = ACTIONS(700),
    [anon_sym_int80] = ACTIONS(700),
    [anon_sym_int88] = ACTIONS(700),
    [anon_sym_int96] = ACTIONS(700),
    [anon_sym_int104] = ACTIONS(700),
    [anon_sym_int112] = ACTIONS(700),
    [anon_sym_int120] = ACTIONS(700),
    [anon_sym_int128] = ACTIONS(700),
    [anon_sym_int136] = ACTIONS(700),
    [anon_sym_int144] = ACTIONS(700),
    [anon_sym_int152] = ACTIONS(700),
    [anon_sym_int160] = ACTIONS(700),
    [anon_sym_int168] = ACTIONS(700),
    [anon_sym_int176] = ACTIONS(700),
    [anon_sym_int184] = ACTIONS(700),
    [anon_sym_int192] = ACTIONS(700),
    [anon_sym_int200] = ACTIONS(700),
    [anon_sym_int208] = ACTIONS(700),
    [anon_sym_int216] = ACTIONS(700),
    [anon_sym_int224] = ACTIONS(700),
    [anon_sym_int232] = ACTIONS(700),
    [anon_sym_int240] = ACTIONS(700),
    [anon_sym_int248] = ACTIONS(700),
    [anon_sym_int256] = ACTIONS(700),
    [anon_sym_uint] = ACTIONS(700),
    [anon_sym_uint8] = ACTIONS(700),
    [anon_sym_uint16] = ACTIONS(700),
    [anon_sym_uint24] = ACTIONS(700),
    [anon_sym_uint32] = ACTIONS(700),
    [anon_sym_uint40] = ACTIONS(700),
    [anon_sym_uint48] = ACTIONS(700),
    [anon_sym_uint56] = ACTIONS(700),
    [anon_sym_uint64] = ACTIONS(700),
    [anon_sym_uint72] = ACTIONS(700),
    [anon_sym_uint80] = ACTIONS(700),
    [anon_sym_uint88] = ACTIONS(700),
    [anon_sym_uint96] = ACTIONS(700),
    [anon_sym_uint104] = ACTIONS(700),
    [anon_sym_uint112] = ACTIONS(700),
    [anon_sym_uint120] = ACTIONS(700),
    [anon_sym_uint128] = ACTIONS(700),
    [anon_sym_uint136] = ACTIONS(700),
    [anon_sym_uint144] = ACTIONS(700),
    [anon_sym_uint152] = ACTIONS(700),
    [anon_sym_uint160] = ACTIONS(700),
    [anon_sym_uint168] = ACTIONS(700),
    [anon_sym_uint176] = ACTIONS(700),
    [anon_sym_uint184] = ACTIONS(700),
    [anon_sym_uint192] = ACTIONS(700),
    [anon_sym_uint200] = ACTIONS(700),
    [anon_sym_uint208] = ACTIONS(700),
    [anon_sym_uint216] = ACTIONS(700),
    [anon_sym_uint224] = ACTIONS(700),
    [anon_sym_uint232] = ACTIONS(700),
    [anon_sym_uint240] = ACTIONS(700),
    [anon_sym_uint248] = ACTIONS(700),
    [anon_sym_uint256] = ACTIONS(700),
    [anon_sym_bytes] = ACTIONS(700),
    [anon_sym_bytes1] = ACTIONS(700),
    [anon_sym_bytes2] = ACTIONS(700),
    [anon_sym_bytes3] = ACTIONS(700),
    [anon_sym_bytes4] = ACTIONS(700),
    [anon_sym_bytes5] = ACTIONS(700),
    [anon_sym_bytes6] = ACTIONS(700),
    [anon_sym_bytes7] = ACTIONS(700),
    [anon_sym_bytes8] = ACTIONS(700),
    [anon_sym_bytes9] = ACTIONS(700),
    [anon_sym_bytes10] = ACTIONS(700),
    [anon_sym_bytes11] = ACTIONS(700),
    [anon_sym_bytes12] = ACTIONS(700),
    [anon_sym_bytes13] = ACTIONS(700),
    [anon_sym_bytes14] = ACTIONS(700),
    [anon_sym_bytes15] = ACTIONS(700),
    [anon_sym_bytes16] = ACTIONS(700),
    [anon_sym_bytes17] = ACTIONS(700),
    [anon_sym_bytes18] = ACTIONS(700),
    [anon_sym_bytes19] = ACTIONS(700),
    [anon_sym_bytes20] = ACTIONS(700),
    [anon_sym_bytes21] = ACTIONS(700),
    [anon_sym_bytes22] = ACTIONS(700),
    [anon_sym_bytes23] = ACTIONS(700),
    [anon_sym_bytes24] = ACTIONS(700),
    [anon_sym_bytes25] = ACTIONS(700),
    [anon_sym_bytes26] = ACTIONS(700),
    [anon_sym_bytes27] = ACTIONS(700),
    [anon_sym_bytes28] = ACTIONS(700),
    [anon_sym_bytes29] = ACTIONS(700),
    [anon_sym_bytes30] = ACTIONS(700),
    [anon_sym_bytes31] = ACTIONS(700),
    [anon_sym_bytes32] = ACTIONS(700),
    [anon_sym_fixed] = ACTIONS(700),
    [aux_sym__fixed_token1] = ACTIONS(700),
    [anon_sym_ufixed] = ACTIONS(700),
    [aux_sym__ufixed_token1] = ACTIONS(700),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(176)] = {
    [ts_builtin_sym_end] = ACTIONS(702),
    [sym_identifier] = ACTIONS(704),
    [anon_sym_pragma] = ACTIONS(704),
    [anon_sym_import] = ACTIONS(704),
    [anon_sym_type] = ACTIONS(704),
    [anon_sym_abstract] = ACTIONS(704),
    [anon_sym_contract] = ACTIONS(704),
    [anon_sym_error] = ACTIONS(704),
    [anon_sym_interface] = ACTIONS(704),
    [anon_sym_library] = ACTIONS(704),
    [anon_sym_struct] = ACTIONS(704),
    [anon_sym_enum] = ACTIONS(704),
    [anon_sym_event] = ACTIONS(704),
    [anon_sym_using] = ACTIONS(704),
    [anon_sym_function] = ACTIONS(704),
    [anon_sym_byte] = ACTIONS(704),
    [anon_sym_address] = ACTIONS(704),
    [anon_sym_var] = ACTIONS(704),
    [anon_sym_mapping] = ACTIONS(704),
    [anon_sym_bool] = ACTIONS(704),
    [anon_sym_string] = ACTIONS(704),
    [anon_sym_int] = ACTIONS(704),
    [anon_sym_int8] = ACTIONS(704),
    [anon_sym_int16] = ACTIONS(704),
    [anon_sym_int24] = ACTIONS(704),
    [anon_sym_int32] = ACTIONS(704),
    [anon_sym_int40] = ACTIONS(704),
    [anon_sym_int48] = ACTIONS(704),
    [anon_sym_int56] = ACTIONS(704),
    [anon_sym_int64] = ACTIONS(704),
    [anon_sym_int72] = ACTIONS(704),
    [anon_sym_int80] = ACTIONS(704),
    [anon_sym_int88] = ACTIONS(704),
    [anon_sym_int96] = ACTIONS(704),
    [anon_sym_int104] = ACTIONS(704),
    [anon_sym_int112] = ACTIONS(704),
    [anon_sym_int120] = ACTIONS(704),
    [anon_sym_int128] = ACTIONS(704),
    [anon_sym_int136] = ACTIONS(704),
    [anon_sym_int144] = ACTIONS(704),
    [anon_sym_int152] = ACTIONS(704),
    [anon_sym_int160] = ACTIONS(704),
    [anon_sym_int168] = ACTIONS(704),
    [anon_sym_int176] = ACTIONS(704),
    [anon_sym_int184] = ACTIONS(704),
    [anon_sym_int192] = ACTIONS(704),
    [anon_sym_int200] = ACTIONS(704),
    [anon_sym_int208] = ACTIONS(704),
    [anon_sym_int216] = ACTIONS(704),
    [anon_sym_int224] = ACTIONS(704),
    [anon_sym_int232] = ACTIONS(704),
    [anon_sym_int240] = ACTIONS(704),
    [anon_sym_int248] = ACTIONS(704),
    [anon_sym_int256] = ACTIONS(704),
    [anon_sym_uint] = ACTIONS(704),
    [anon_sym_uint8] = ACTIONS(704),
    [anon_sym_uint16] = ACTIONS(704),
    [anon_sym_uint24] = ACTIONS(704),
    [anon_sym_uint32] = ACTIONS(704),
    [anon_sym_uint40] = ACTIONS(704),
    [anon_sym_uint48] = ACTIONS(704),
    [anon_sym_uint56] = ACTIONS(704),
    [anon_sym_uint64] = ACTIONS(704),
    [anon_sym_uint72] = ACTIONS(704),
    [anon_sym_uint80] = ACTIONS(704),
    [anon_sym_uint88] = ACTIONS(704),
    [anon_sym_uint96] = ACTIONS(704),
    [anon_sym_uint104] = ACTIONS(704),
    [anon_sym_uint112] = ACTIONS(704),
    [anon_sym_uint120] = ACTIONS(704),
    [anon_sym_uint128] = ACTIONS(704),
    [anon_sym_uint136] = ACTIONS(704),
    [anon_sym_uint144] = ACTIONS(704),
    [anon_sym_uint152] = ACTIONS(704),
    [anon_sym_uint160] = ACTIONS(704),
    [anon_sym_uint168] = ACTIONS(704),
    [anon_sym_uint176] = ACTIONS(704),
    [anon_sym_uint184] = ACTIONS(704),
    [anon_sym_uint192] = ACTIONS(704),
    [anon_sym_uint200] = ACTIONS(704),
    [anon_sym_uint208] = ACTIONS(704),
    [anon_sym_uint216] = ACTIONS(704),
    [anon_sym_uint224] = ACTIONS(704),
    [anon_sym_uint232] = ACTIONS(704),
    [anon_sym_uint240] = ACTIONS(704),
    [anon_sym_uint248] = ACTIONS(704),
    [anon_sym_uint256] = ACTIONS(704),
    [anon_sym_bytes] = ACTIONS(704),
    [anon_sym_bytes1] = ACTIONS(704),
    [anon_sym_bytes2] = ACTIONS(704),
    [anon_sym_bytes3] = ACTIONS(704),
    [anon_sym_bytes4] = ACTIONS(704),
    [anon_sym_bytes5] = ACTIONS(704),
    [anon_sym_bytes6] = ACTIONS(704),
    [anon_sym_bytes7] = ACTIONS(704),
    [anon_sym_bytes8] = ACTIONS(704),
    [anon_sym_bytes9] = ACTIONS(704),
    [anon_sym_bytes10] = ACTIONS(704),
    [anon_sym_bytes11] = ACTIONS(704),
    [anon_sym_bytes12] = ACTIONS(704),
    [anon_sym_bytes13] = ACTIONS(704),
    [anon_sym_bytes14] = ACTIONS(704),
    [anon_sym_bytes15] = ACTIONS(704),
    [anon_sym_bytes16] = ACTIONS(704),
    [anon_sym_bytes17] = ACTIONS(704),
    [anon_sym_bytes18] = ACTIONS(704),
    [anon_sym_bytes19] = ACTIONS(704),
    [anon_sym_bytes20] = ACTIONS(704),
    [anon_sym_bytes21] = ACTIONS(704),
    [anon_sym_bytes22] = ACTIONS(704),
    [anon_sym_bytes23] = ACTIONS(704),
    [anon_sym_bytes24] = ACTIONS(704),
    [anon_sym_bytes25] = ACTIONS(704),
    [anon_sym_bytes26] = ACTIONS(704),
    [anon_sym_bytes27] = ACTIONS(704),
    [anon_sym_bytes28] = ACTIONS(704),
    [anon_sym_bytes29] = ACTIONS(704),
    [anon_sym_bytes30] = ACTIONS(704),
    [anon_sym_bytes31] = ACTIONS(704),
    [anon_sym_bytes32] = ACTIONS(704),
    [anon_sym_fixed] = ACTIONS(704),
    [aux_sym__fixed_token1] = ACTIONS(704),
    [anon_sym_ufixed] = ACTIONS(704),
    [aux_sym__ufixed_token1] = ACTIONS(704),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(177)] = {
    [ts_builtin_sym_end] = ACTIONS(706),
    [sym_identifier] = ACTIONS(708),
    [anon_sym_pragma] = ACTIONS(708),
    [anon_sym_import] = ACTIONS(708),
    [anon_sym_type] = ACTIONS(708),
    [anon_sym_abstract] = ACTIONS(708),
    [anon_sym_contract] = ACTIONS(708),
    [anon_sym_error] = ACTIONS(708),
    [anon_sym_interface] = ACTIONS(708),
    [anon_sym_library] = ACTIONS(708),
    [anon_sym_struct] = ACTIONS(708),
    [anon_sym_enum] = ACTIONS(708),
    [anon_sym_event] = ACTIONS(708),
    [anon_sym_using] = ACTIONS(708),
    [anon_sym_function] = ACTIONS(708),
    [anon_sym_byte] = ACTIONS(708),
    [anon_sym_address] = ACTIONS(708),
    [anon_sym_var] = ACTIONS(708),
    [anon_sym_mapping] = ACTIONS(708),
    [anon_sym_bool] = ACTIONS(708),
    [anon_sym_string] = ACTIONS(708),
    [anon_sym_int] = ACTIONS(708),
    [anon_sym_int8] = ACTIONS(708),
    [anon_sym_int16] = ACTIONS(708),
    [anon_sym_int24] = ACTIONS(708),
    [anon_sym_int32] = ACTIONS(708),
    [anon_sym_int40] = ACTIONS(708),
    [anon_sym_int48] = ACTIONS(708),
    [anon_sym_int56] = ACTIONS(708),
    [anon_sym_int64] = ACTIONS(708),
    [anon_sym_int72] = ACTIONS(708),
    [anon_sym_int80] = ACTIONS(708),
    [anon_sym_int88] = ACTIONS(708),
    [anon_sym_int96] = ACTIONS(708),
    [anon_sym_int104] = ACTIONS(708),
    [anon_sym_int112] = ACTIONS(708),
    [anon_sym_int120] = ACTIONS(708),
    [anon_sym_int128] = ACTIONS(708),
    [anon_sym_int136] = ACTIONS(708),
    [anon_sym_int144] = ACTIONS(708),
    [anon_sym_int152] = ACTIONS(708),
    [anon_sym_int160] = ACTIONS(708),
    [anon_sym_int168] = ACTIONS(708),
    [anon_sym_int176] = ACTIONS(708),
    [anon_sym_int184] = ACTIONS(708),
    [anon_sym_int192] = ACTIONS(708),
    [anon_sym_int200] = ACTIONS(708),
    [anon_sym_int208] = ACTIONS(708),
    [anon_sym_int216] = ACTIONS(708),
    [anon_sym_int224] = ACTIONS(708),
    [anon_sym_int232] = ACTIONS(708),
    [anon_sym_int240] = ACTIONS(708),
    [anon_sym_int248] = ACTIONS(708),
    [anon_sym_int256] = ACTIONS(708),
    [anon_sym_uint] = ACTIONS(708),
    [anon_sym_uint8] = ACTIONS(708),
    [anon_sym_uint16] = ACTIONS(708),
    [anon_sym_uint24] = ACTIONS(708),
    [anon_sym_uint32] = ACTIONS(708),
    [anon_sym_uint40] = ACTIONS(708),
    [anon_sym_uint48] = ACTIONS(708),
    [anon_sym_uint56] = ACTIONS(708),
    [anon_sym_uint64] = ACTIONS(708),
    [anon_sym_uint72] = ACTIONS(708),
    [anon_sym_uint80] = ACTIONS(708),
    [anon_sym_uint88] = ACTIONS(708),
    [anon_sym_uint96] = ACTIONS(708),
    [anon_sym_uint104] = ACTIONS(708),
    [anon_sym_uint112] = ACTIONS(708),
    [anon_sym_uint120] = ACTIONS(708),
    [anon_sym_uint128] = ACTIONS(708),
    [anon_sym_uint136] = ACTIONS(708),
    [anon_sym_uint144] = ACTIONS(708),
    [anon_sym_uint152] = ACTIONS(708),
    [anon_sym_uint160] = ACTIONS(708),
    [anon_sym_uint168] = ACTIONS(708),
    [anon_sym_uint176] = ACTIONS(708),
    [anon_sym_uint184] = ACTIONS(708),
    [anon_sym_uint192] = ACTIONS(708),
    [anon_sym_uint200] = ACTIONS(708),
    [anon_sym_uint208] = ACTIONS(708),
    [anon_sym_uint216] = ACTIONS(708),
    [anon_sym_uint224] = ACTIONS(708),
    [anon_sym_uint232] = ACTIONS(708),
    [anon_sym_uint240] = ACTIONS(708),
    [anon_sym_uint248] = ACTIONS(708),
    [anon_sym_uint256] = ACTIONS(708),
    [anon_sym_bytes] = ACTIONS(708),
    [anon_sym_bytes1] = ACTIONS(708),
    [anon_sym_bytes2] = ACTIONS(708),
    [anon_sym_bytes3] = ACTIONS(708),
    [anon_sym_bytes4] = ACTIONS(708),
    [anon_sym_bytes5] = ACTIONS(708),
    [anon_sym_bytes6] = ACTIONS(708),
    [anon_sym_bytes7] = ACTIONS(708),
    [anon_sym_bytes8] = ACTIONS(708),
    [anon_sym_bytes9] = ACTIONS(708),
    [anon_sym_bytes10] = ACTIONS(708),
    [anon_sym_bytes11] = ACTIONS(708),
    [anon_sym_bytes12] = ACTIONS(708),
    [anon_sym_bytes13] = ACTIONS(708),
    [anon_sym_bytes14] = ACTIONS(708),
    [anon_sym_bytes15] = ACTIONS(708),
    [anon_sym_bytes16] = ACTIONS(708),
    [anon_sym_bytes17] = ACTIONS(708),
    [anon_sym_bytes18] = ACTIONS(708),
    [anon_sym_bytes19] = ACTIONS(708),
    [anon_sym_bytes20] = ACTIONS(708),
    [anon_sym_bytes21] = ACTIONS(708),
    [anon_sym_bytes22] = ACTIONS(708),
    [anon_sym_bytes23] = ACTIONS(708),
    [anon_sym_bytes24] = ACTIONS(708),
    [anon_sym_bytes25] = ACTIONS(708),
    [anon_sym_bytes26] = ACTIONS(708),
    [anon_sym_bytes27] = ACTIONS(708),
    [anon_sym_bytes28] = ACTIONS(708),
    [anon_sym_bytes29] = ACTIONS(708),
    [anon_sym_bytes30] = ACTIONS(708),
    [anon_sym_bytes31] = ACTIONS(708),
    [anon_sym_bytes32] = ACTIONS(708),
    [anon_sym_fixed] = ACTIONS(708),
    [aux_sym__fixed_token1] = ACTIONS(708),
    [anon_sym_ufixed] = ACTIONS(708),
    [aux_sym__ufixed_token1] = ACTIONS(708),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(178)] = {
    [ts_builtin_sym_end] = ACTIONS(710),
    [sym_identifier] = ACTIONS(712),
    [anon_sym_pragma] = ACTIONS(712),
    [anon_sym_import] = ACTIONS(712),
    [anon_sym_type] = ACTIONS(712),
    [anon_sym_abstract] = ACTIONS(712),
    [anon_sym_contract] = ACTIONS(712),
    [anon_sym_error] = ACTIONS(712),
    [anon_sym_interface] = ACTIONS(712),
    [anon_sym_library] = ACTIONS(712),
    [anon_sym_struct] = ACTIONS(712),
    [anon_sym_enum] = ACTIONS(712),
    [anon_sym_event] = ACTIONS(712),
    [anon_sym_using] = ACTIONS(712),
    [anon_sym_function] = ACTIONS(712),
    [anon_sym_byte] = ACTIONS(712),
    [anon_sym_address] = ACTIONS(712),
    [anon_sym_var] = ACTIONS(712),
    [anon_sym_mapping] = ACTIONS(712),
    [anon_sym_bool] = ACTIONS(712),
    [anon_sym_string] = ACTIONS(712),
    [anon_sym_int] = ACTIONS(712),
    [anon_sym_int8] = ACTIONS(712),
    [anon_sym_int16] = ACTIONS(712),
    [anon_sym_int24] = ACTIONS(712),
    [anon_sym_int32] = ACTIONS(712),
    [anon_sym_int40] = ACTIONS(712),
    [anon_sym_int48] = ACTIONS(712),
    [anon_sym_int56] = ACTIONS(712),
    [anon_sym_int64] = ACTIONS(712),
    [anon_sym_int72] = ACTIONS(712),
    [anon_sym_int80] = ACTIONS(712),
    [anon_sym_int88] = ACTIONS(712),
    [anon_sym_int96] = ACTIONS(712),
    [anon_sym_int104] = ACTIONS(712),
    [anon_sym_int112] = ACTIONS(712),
    [anon_sym_int120] = ACTIONS(712),
    [anon_sym_int128] = ACTIONS(712),
    [anon_sym_int136] = ACTIONS(712),
    [anon_sym_int144] = ACTIONS(712),
    [anon_sym_int152] = ACTIONS(712),
    [anon_sym_int160] = ACTIONS(712),
    [anon_sym_int168] = ACTIONS(712),
    [anon_sym_int176] = ACTIONS(712),
    [anon_sym_int184] = ACTIONS(712),
    [anon_sym_int192] = ACTIONS(712),
    [anon_sym_int200] = ACTIONS(712),
    [anon_sym_int208] = ACTIONS(712),
    [anon_sym_int216] = ACTIONS(712),
    [anon_sym_int224] = ACTIONS(712),
    [anon_sym_int232] = ACTIONS(712),
    [anon_sym_int240] = ACTIONS(712),
    [anon_sym_int248] = ACTIONS(712),
    [anon_sym_int256] = ACTIONS(712),
    [anon_sym_uint] = ACTIONS(712),
    [anon_sym_uint8] = ACTIONS(712),
    [anon_sym_uint16] = ACTIONS(712),
    [anon_sym_uint24] = ACTIONS(712),
    [anon_sym_uint32] = ACTIONS(712),
    [anon_sym_uint40] = ACTIONS(712),
    [anon_sym_uint48] = ACTIONS(712),
    [anon_sym_uint56] = ACTIONS(712),
    [anon_sym_uint64] = ACTIONS(712),
    [anon_sym_uint72] = ACTIONS(712),
    [anon_sym_uint80] = ACTIONS(712),
    [anon_sym_uint88] = ACTIONS(712),
    [anon_sym_uint96] = ACTIONS(712),
    [anon_sym_uint104] = ACTIONS(712),
    [anon_sym_uint112] = ACTIONS(712),
    [anon_sym_uint120] = ACTIONS(712),
    [anon_sym_uint128] = ACTIONS(712),
    [anon_sym_uint136] = ACTIONS(712),
    [anon_sym_uint144] = ACTIONS(712),
    [anon_sym_uint152] = ACTIONS(712),
    [anon_sym_uint160] = ACTIONS(712),
    [anon_sym_uint168] = ACTIONS(712),
    [anon_sym_uint176] = ACTIONS(712),
    [anon_sym_uint184] = ACTIONS(712),
    [anon_sym_uint192] = ACTIONS(712),
    [anon_sym_uint200] = ACTIONS(712),
    [anon_sym_uint208] = ACTIONS(712),
    [anon_sym_uint216] = ACTIONS(712),
    [anon_sym_uint224] = ACTIONS(712),
    [anon_sym_uint232] = ACTIONS(712),
    [anon_sym_uint240] = ACTIONS(712),
    [anon_sym_uint248] = ACTIONS(712),
    [anon_sym_uint256] = ACTIONS(712),
    [anon_sym_bytes] = ACTIONS(712),
    [anon_sym_bytes1] = ACTIONS(712),
    [anon_sym_bytes2] = ACTIONS(712),
    [anon_sym_bytes3] = ACTIONS(712),
    [anon_sym_bytes4] = ACTIONS(712),
    [anon_sym_bytes5] = ACTIONS(712),
    [anon_sym_bytes6] = ACTIONS(712),
    [anon_sym_bytes7] = ACTIONS(712),
    [anon_sym_bytes8] = ACTIONS(712),
    [anon_sym_bytes9] = ACTIONS(712),
    [anon_sym_bytes10] = ACTIONS(712),
    [anon_sym_bytes11] = ACTIONS(712),
    [anon_sym_bytes12] = ACTIONS(712),
    [anon_sym_bytes13] = ACTIONS(712),
    [anon_sym_bytes14] = ACTIONS(712),
    [anon_sym_bytes15] = ACTIONS(712),
    [anon_sym_bytes16] = ACTIONS(712),
    [anon_sym_bytes17] = ACTIONS(712),
    [anon_sym_bytes18] = ACTIONS(712),
    [anon_sym_bytes19] = ACTIONS(712),
    [anon_sym_bytes20] = ACTIONS(712),
    [anon_sym_bytes21] = ACTIONS(712),
    [anon_sym_bytes22] = ACTIONS(712),
    [anon_sym_bytes23] = ACTIONS(712),
    [anon_sym_bytes24] = ACTIONS(712),
    [anon_sym_bytes25] = ACTIONS(712),
    [anon_sym_bytes26] = ACTIONS(712),
    [anon_sym_bytes27] = ACTIONS(712),
    [anon_sym_bytes28] = ACTIONS(712),
    [anon_sym_bytes29] = ACTIONS(712),
    [anon_sym_bytes30] = ACTIONS(712),
    [anon_sym_bytes31] = ACTIONS(712),
    [anon_sym_bytes32] = ACTIONS(712),
    [anon_sym_fixed] = ACTIONS(712),
    [aux_sym__fixed_token1] = ACTIONS(712),
    [anon_sym_ufixed] = ACTIONS(712),
    [aux_sym__ufixed_token1] = ACTIONS(712),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(179)] = {
    [ts_builtin_sym_end] = ACTIONS(714),
    [sym_identifier] = ACTIONS(716),
    [anon_sym_pragma] = ACTIONS(716),
    [anon_sym_import] = ACTIONS(716),
    [anon_sym_type] = ACTIONS(716),
    [anon_sym_abstract] = ACTIONS(716),
    [anon_sym_contract] = ACTIONS(716),
    [anon_sym_error] = ACTIONS(716),
    [anon_sym_interface] = ACTIONS(716),
    [anon_sym_library] = ACTIONS(716),
    [anon_sym_struct] = ACTIONS(716),
    [anon_sym_enum] = ACTIONS(716),
    [anon_sym_event] = ACTIONS(716),
    [anon_sym_using] = ACTIONS(716),
    [anon_sym_function] = ACTIONS(716),
    [anon_sym_byte] = ACTIONS(716),
    [anon_sym_address] = ACTIONS(716),
    [anon_sym_var] = ACTIONS(716),
    [anon_sym_mapping] = ACTIONS(716),
    [anon_sym_bool] = ACTIONS(716),
    [anon_sym_string] = ACTIONS(716),
    [anon_sym_int] = ACTIONS(716),
    [anon_sym_int8] = ACTIONS(716),
    [anon_sym_int16] = ACTIONS(716),
    [anon_sym_int24] = ACTIONS(716),
    [anon_sym_int32] = ACTIONS(716),
    [anon_sym_int40] = ACTIONS(716),
    [anon_sym_int48] = ACTIONS(716),
    [anon_sym_int56] = ACTIONS(716),
    [anon_sym_int64] = ACTIONS(716),
    [anon_sym_int72] = ACTIONS(716),
    [anon_sym_int80] = ACTIONS(716),
    [anon_sym_int88] = ACTIONS(716),
    [anon_sym_int96] = ACTIONS(716),
    [anon_sym_int104] = ACTIONS(716),
    [anon_sym_int112] = ACTIONS(716),
    [anon_sym_int120] = ACTIONS(716),
    [anon_sym_int128] = ACTIONS(716),
    [anon_sym_int136] = ACTIONS(716),
    [anon_sym_int144] = ACTIONS(716),
    [anon_sym_int152] = ACTIONS(716),
    [anon_sym_int160] = ACTIONS(716),
    [anon_sym_int168] = ACTIONS(716),
    [anon_sym_int176] = ACTIONS(716),
    [anon_sym_int184] = ACTIONS(716),
    [anon_sym_int192] = ACTIONS(716),
    [anon_sym_int200] = ACTIONS(716),
    [anon_sym_int208] = ACTIONS(716),
    [anon_sym_int216] = ACTIONS(716),
    [anon_sym_int224] = ACTIONS(716),
    [anon_sym_int232] = ACTIONS(716),
    [anon_sym_int240] = ACTIONS(716),
    [anon_sym_int248] = ACTIONS(716),
    [anon_sym_int256] = ACTIONS(716),
    [anon_sym_uint] = ACTIONS(716),
    [anon_sym_uint8] = ACTIONS(716),
    [anon_sym_uint16] = ACTIONS(716),
    [anon_sym_uint24] = ACTIONS(716),
    [anon_sym_uint32] = ACTIONS(716),
    [anon_sym_uint40] = ACTIONS(716),
    [anon_sym_uint48] = ACTIONS(716),
    [anon_sym_uint56] = ACTIONS(716),
    [anon_sym_uint64] = ACTIONS(716),
    [anon_sym_uint72] = ACTIONS(716),
    [anon_sym_uint80] = ACTIONS(716),
    [anon_sym_uint88] = ACTIONS(716),
    [anon_sym_uint96] = ACTIONS(716),
    [anon_sym_uint104] = ACTIONS(716),
    [anon_sym_uint112] = ACTIONS(716),
    [anon_sym_uint120] = ACTIONS(716),
    [anon_sym_uint128] = ACTIONS(716),
    [anon_sym_uint136] = ACTIONS(716),
    [anon_sym_uint144] = ACTIONS(716),
    [anon_sym_uint152] = ACTIONS(716),
    [anon_sym_uint160] = ACTIONS(716),
    [anon_sym_uint168] = ACTIONS(716),
    [anon_sym_uint176] = ACTIONS(716),
    [anon_sym_uint184] = ACTIONS(716),
    [anon_sym_uint192] = ACTIONS(716),
    [anon_sym_uint200] = ACTIONS(716),
    [anon_sym_uint208] = ACTIONS(716),
    [anon_sym_uint216] = ACTIONS(716),
    [anon_sym_uint224] = ACTIONS(716),
    [anon_sym_uint232] = ACTIONS(716),
    [anon_sym_uint240] = ACTIONS(716),
    [anon_sym_uint248] = ACTIONS(716),
    [anon_sym_uint256] = ACTIONS(716),
    [anon_sym_bytes] = ACTIONS(716),
    [anon_sym_bytes1] = ACTIONS(716),
    [anon_sym_bytes2] = ACTIONS(716),
    [anon_sym_bytes3] = ACTIONS(716),
    [anon_sym_bytes4] = ACTIONS(716),
    [anon_sym_bytes5] = ACTIONS(716),
    [anon_sym_bytes6] = ACTIONS(716),
    [anon_sym_bytes7] = ACTIONS(716),
    [anon_sym_bytes8] = ACTIONS(716),
    [anon_sym_bytes9] = ACTIONS(716),
    [anon_sym_bytes10] = ACTIONS(716),
    [anon_sym_bytes11] = ACTIONS(716),
    [anon_sym_bytes12] = ACTIONS(716),
    [anon_sym_bytes13] = ACTIONS(716),
    [anon_sym_bytes14] = ACTIONS(716),
    [anon_sym_bytes15] = ACTIONS(716),
    [anon_sym_bytes16] = ACTIONS(716),
    [anon_sym_bytes17] = ACTIONS(716),
    [anon_sym_bytes18] = ACTIONS(716),
    [anon_sym_bytes19] = ACTIONS(716),
    [anon_sym_bytes20] = ACTIONS(716),
    [anon_sym_bytes21] = ACTIONS(716),
    [anon_sym_bytes22] = ACTIONS(716),
    [anon_sym_bytes23] = ACTIONS(716),
    [anon_sym_bytes24] = ACTIONS(716),
    [anon_sym_bytes25] = ACTIONS(716),
    [anon_sym_bytes26] = ACTIONS(716),
    [anon_sym_bytes27] = ACTIONS(716),
    [anon_sym_bytes28] = ACTIONS(716),
    [anon_sym_bytes29] = ACTIONS(716),
    [anon_sym_bytes30] = ACTIONS(716),
    [anon_sym_bytes31] = ACTIONS(716),
    [anon_sym_bytes32] = ACTIONS(716),
    [anon_sym_fixed] = ACTIONS(716),
    [aux_sym__fixed_token1] = ACTIONS(716),
    [anon_sym_ufixed] = ACTIONS(716),
    [aux_sym__ufixed_token1] = ACTIONS(716),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(180)] = {
    [sym_type_name] = STATE(542),
    [sym__array_type] = STATE(380),
    [sym__function_type] = STATE(379),
    [sym_parameter] = STATE(845),
    [sym_user_defined_type] = STATE(380),
    [sym__identifier_path] = STATE(367),
    [sym__mapping] = STATE(381),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym_identifier] = ACTIONS(7),
    [anon_sym_function] = ACTIONS(75),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_mapping] = ACTIONS(39),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(181)] = {
    [sym_error_parameter] = STATE(794),
    [sym_type_name] = STATE(638),
    [sym__array_type] = STATE(380),
    [sym__function_type] = STATE(379),
    [sym_user_defined_type] = STATE(380),
    [sym__identifier_path] = STATE(367),
    [sym__mapping] = STATE(381),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym_identifier] = ACTIONS(7),
    [anon_sym_function] = ACTIONS(75),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_mapping] = ACTIONS(39),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(182)] = {
    [ts_builtin_sym_end] = ACTIONS(718),
    [sym_identifier] = ACTIONS(720),
    [anon_sym_pragma] = ACTIONS(720),
    [anon_sym_import] = ACTIONS(720),
    [anon_sym_type] = ACTIONS(720),
    [anon_sym_abstract] = ACTIONS(720),
    [anon_sym_contract] = ACTIONS(720),
    [anon_sym_error] = ACTIONS(720),
    [anon_sym_interface] = ACTIONS(720),
    [anon_sym_library] = ACTIONS(720),
    [anon_sym_struct] = ACTIONS(720),
    [anon_sym_enum] = ACTIONS(720),
    [anon_sym_event] = ACTIONS(720),
    [anon_sym_using] = ACTIONS(720),
    [anon_sym_function] = ACTIONS(720),
    [anon_sym_byte] = ACTIONS(720),
    [anon_sym_address] = ACTIONS(720),
    [anon_sym_var] = ACTIONS(720),
    [anon_sym_mapping] = ACTIONS(720),
    [anon_sym_bool] = ACTIONS(720),
    [anon_sym_string] = ACTIONS(720),
    [anon_sym_int] = ACTIONS(720),
    [anon_sym_int8] = ACTIONS(720),
    [anon_sym_int16] = ACTIONS(720),
    [anon_sym_int24] = ACTIONS(720),
    [anon_sym_int32] = ACTIONS(720),
    [anon_sym_int40] = ACTIONS(720),
    [anon_sym_int48] = ACTIONS(720),
    [anon_sym_int56] = ACTIONS(720),
    [anon_sym_int64] = ACTIONS(720),
    [anon_sym_int72] = ACTIONS(720),
    [anon_sym_int80] = ACTIONS(720),
    [anon_sym_int88] = ACTIONS(720),
    [anon_sym_int96] = ACTIONS(720),
    [anon_sym_int104] = ACTIONS(720),
    [anon_sym_int112] = ACTIONS(720),
    [anon_sym_int120] = ACTIONS(720),
    [anon_sym_int128] = ACTIONS(720),
    [anon_sym_int136] = ACTIONS(720),
    [anon_sym_int144] = ACTIONS(720),
    [anon_sym_int152] = ACTIONS(720),
    [anon_sym_int160] = ACTIONS(720),
    [anon_sym_int168] = ACTIONS(720),
    [anon_sym_int176] = ACTIONS(720),
    [anon_sym_int184] = ACTIONS(720),
    [anon_sym_int192] = ACTIONS(720),
    [anon_sym_int200] = ACTIONS(720),
    [anon_sym_int208] = ACTIONS(720),
    [anon_sym_int216] = ACTIONS(720),
    [anon_sym_int224] = ACTIONS(720),
    [anon_sym_int232] = ACTIONS(720),
    [anon_sym_int240] = ACTIONS(720),
    [anon_sym_int248] = ACTIONS(720),
    [anon_sym_int256] = ACTIONS(720),
    [anon_sym_uint] = ACTIONS(720),
    [anon_sym_uint8] = ACTIONS(720),
    [anon_sym_uint16] = ACTIONS(720),
    [anon_sym_uint24] = ACTIONS(720),
    [anon_sym_uint32] = ACTIONS(720),
    [anon_sym_uint40] = ACTIONS(720),
    [anon_sym_uint48] = ACTIONS(720),
    [anon_sym_uint56] = ACTIONS(720),
    [anon_sym_uint64] = ACTIONS(720),
    [anon_sym_uint72] = ACTIONS(720),
    [anon_sym_uint80] = ACTIONS(720),
    [anon_sym_uint88] = ACTIONS(720),
    [anon_sym_uint96] = ACTIONS(720),
    [anon_sym_uint104] = ACTIONS(720),
    [anon_sym_uint112] = ACTIONS(720),
    [anon_sym_uint120] = ACTIONS(720),
    [anon_sym_uint128] = ACTIONS(720),
    [anon_sym_uint136] = ACTIONS(720),
    [anon_sym_uint144] = ACTIONS(720),
    [anon_sym_uint152] = ACTIONS(720),
    [anon_sym_uint160] = ACTIONS(720),
    [anon_sym_uint168] = ACTIONS(720),
    [anon_sym_uint176] = ACTIONS(720),
    [anon_sym_uint184] = ACTIONS(720),
    [anon_sym_uint192] = ACTIONS(720),
    [anon_sym_uint200] = ACTIONS(720),
    [anon_sym_uint208] = ACTIONS(720),
    [anon_sym_uint216] = ACTIONS(720),
    [anon_sym_uint224] = ACTIONS(720),
    [anon_sym_uint232] = ACTIONS(720),
    [anon_sym_uint240] = ACTIONS(720),
    [anon_sym_uint248] = ACTIONS(720),
    [anon_sym_uint256] = ACTIONS(720),
    [anon_sym_bytes] = ACTIONS(720),
    [anon_sym_bytes1] = ACTIONS(720),
    [anon_sym_bytes2] = ACTIONS(720),
    [anon_sym_bytes3] = ACTIONS(720),
    [anon_sym_bytes4] = ACTIONS(720),
    [anon_sym_bytes5] = ACTIONS(720),
    [anon_sym_bytes6] = ACTIONS(720),
    [anon_sym_bytes7] = ACTIONS(720),
    [anon_sym_bytes8] = ACTIONS(720),
    [anon_sym_bytes9] = ACTIONS(720),
    [anon_sym_bytes10] = ACTIONS(720),
    [anon_sym_bytes11] = ACTIONS(720),
    [anon_sym_bytes12] = ACTIONS(720),
    [anon_sym_bytes13] = ACTIONS(720),
    [anon_sym_bytes14] = ACTIONS(720),
    [anon_sym_bytes15] = ACTIONS(720),
    [anon_sym_bytes16] = ACTIONS(720),
    [anon_sym_bytes17] = ACTIONS(720),
    [anon_sym_bytes18] = ACTIONS(720),
    [anon_sym_bytes19] = ACTIONS(720),
    [anon_sym_bytes20] = ACTIONS(720),
    [anon_sym_bytes21] = ACTIONS(720),
    [anon_sym_bytes22] = ACTIONS(720),
    [anon_sym_bytes23] = ACTIONS(720),
    [anon_sym_bytes24] = ACTIONS(720),
    [anon_sym_bytes25] = ACTIONS(720),
    [anon_sym_bytes26] = ACTIONS(720),
    [anon_sym_bytes27] = ACTIONS(720),
    [anon_sym_bytes28] = ACTIONS(720),
    [anon_sym_bytes29] = ACTIONS(720),
    [anon_sym_bytes30] = ACTIONS(720),
    [anon_sym_bytes31] = ACTIONS(720),
    [anon_sym_bytes32] = ACTIONS(720),
    [anon_sym_fixed] = ACTIONS(720),
    [aux_sym__fixed_token1] = ACTIONS(720),
    [anon_sym_ufixed] = ACTIONS(720),
    [aux_sym__ufixed_token1] = ACTIONS(720),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(183)] = {
    [ts_builtin_sym_end] = ACTIONS(722),
    [sym_identifier] = ACTIONS(724),
    [anon_sym_pragma] = ACTIONS(724),
    [anon_sym_import] = ACTIONS(724),
    [anon_sym_type] = ACTIONS(724),
    [anon_sym_abstract] = ACTIONS(724),
    [anon_sym_contract] = ACTIONS(724),
    [anon_sym_error] = ACTIONS(724),
    [anon_sym_interface] = ACTIONS(724),
    [anon_sym_library] = ACTIONS(724),
    [anon_sym_struct] = ACTIONS(724),
    [anon_sym_enum] = ACTIONS(724),
    [anon_sym_event] = ACTIONS(724),
    [anon_sym_using] = ACTIONS(724),
    [anon_sym_function] = ACTIONS(724),
    [anon_sym_byte] = ACTIONS(724),
    [anon_sym_address] = ACTIONS(724),
    [anon_sym_var] = ACTIONS(724),
    [anon_sym_mapping] = ACTIONS(724),
    [anon_sym_bool] = ACTIONS(724),
    [anon_sym_string] = ACTIONS(724),
    [anon_sym_int] = ACTIONS(724),
    [anon_sym_int8] = ACTIONS(724),
    [anon_sym_int16] = ACTIONS(724),
    [anon_sym_int24] = ACTIONS(724),
    [anon_sym_int32] = ACTIONS(724),
    [anon_sym_int40] = ACTIONS(724),
    [anon_sym_int48] = ACTIONS(724),
    [anon_sym_int56] = ACTIONS(724),
    [anon_sym_int64] = ACTIONS(724),
    [anon_sym_int72] = ACTIONS(724),
    [anon_sym_int80] = ACTIONS(724),
    [anon_sym_int88] = ACTIONS(724),
    [anon_sym_int96] = ACTIONS(724),
    [anon_sym_int104] = ACTIONS(724),
    [anon_sym_int112] = ACTIONS(724),
    [anon_sym_int120] = ACTIONS(724),
    [anon_sym_int128] = ACTIONS(724),
    [anon_sym_int136] = ACTIONS(724),
    [anon_sym_int144] = ACTIONS(724),
    [anon_sym_int152] = ACTIONS(724),
    [anon_sym_int160] = ACTIONS(724),
    [anon_sym_int168] = ACTIONS(724),
    [anon_sym_int176] = ACTIONS(724),
    [anon_sym_int184] = ACTIONS(724),
    [anon_sym_int192] = ACTIONS(724),
    [anon_sym_int200] = ACTIONS(724),
    [anon_sym_int208] = ACTIONS(724),
    [anon_sym_int216] = ACTIONS(724),
    [anon_sym_int224] = ACTIONS(724),
    [anon_sym_int232] = ACTIONS(724),
    [anon_sym_int240] = ACTIONS(724),
    [anon_sym_int248] = ACTIONS(724),
    [anon_sym_int256] = ACTIONS(724),
    [anon_sym_uint] = ACTIONS(724),
    [anon_sym_uint8] = ACTIONS(724),
    [anon_sym_uint16] = ACTIONS(724),
    [anon_sym_uint24] = ACTIONS(724),
    [anon_sym_uint32] = ACTIONS(724),
    [anon_sym_uint40] = ACTIONS(724),
    [anon_sym_uint48] = ACTIONS(724),
    [anon_sym_uint56] = ACTIONS(724),
    [anon_sym_uint64] = ACTIONS(724),
    [anon_sym_uint72] = ACTIONS(724),
    [anon_sym_uint80] = ACTIONS(724),
    [anon_sym_uint88] = ACTIONS(724),
    [anon_sym_uint96] = ACTIONS(724),
    [anon_sym_uint104] = ACTIONS(724),
    [anon_sym_uint112] = ACTIONS(724),
    [anon_sym_uint120] = ACTIONS(724),
    [anon_sym_uint128] = ACTIONS(724),
    [anon_sym_uint136] = ACTIONS(724),
    [anon_sym_uint144] = ACTIONS(724),
    [anon_sym_uint152] = ACTIONS(724),
    [anon_sym_uint160] = ACTIONS(724),
    [anon_sym_uint168] = ACTIONS(724),
    [anon_sym_uint176] = ACTIONS(724),
    [anon_sym_uint184] = ACTIONS(724),
    [anon_sym_uint192] = ACTIONS(724),
    [anon_sym_uint200] = ACTIONS(724),
    [anon_sym_uint208] = ACTIONS(724),
    [anon_sym_uint216] = ACTIONS(724),
    [anon_sym_uint224] = ACTIONS(724),
    [anon_sym_uint232] = ACTIONS(724),
    [anon_sym_uint240] = ACTIONS(724),
    [anon_sym_uint248] = ACTIONS(724),
    [anon_sym_uint256] = ACTIONS(724),
    [anon_sym_bytes] = ACTIONS(724),
    [anon_sym_bytes1] = ACTIONS(724),
    [anon_sym_bytes2] = ACTIONS(724),
    [anon_sym_bytes3] = ACTIONS(724),
    [anon_sym_bytes4] = ACTIONS(724),
    [anon_sym_bytes5] = ACTIONS(724),
    [anon_sym_bytes6] = ACTIONS(724),
    [anon_sym_bytes7] = ACTIONS(724),
    [anon_sym_bytes8] = ACTIONS(724),
    [anon_sym_bytes9] = ACTIONS(724),
    [anon_sym_bytes10] = ACTIONS(724),
    [anon_sym_bytes11] = ACTIONS(724),
    [anon_sym_bytes12] = ACTIONS(724),
    [anon_sym_bytes13] = ACTIONS(724),
    [anon_sym_bytes14] = ACTIONS(724),
    [anon_sym_bytes15] = ACTIONS(724),
    [anon_sym_bytes16] = ACTIONS(724),
    [anon_sym_bytes17] = ACTIONS(724),
    [anon_sym_bytes18] = ACTIONS(724),
    [anon_sym_bytes19] = ACTIONS(724),
    [anon_sym_bytes20] = ACTIONS(724),
    [anon_sym_bytes21] = ACTIONS(724),
    [anon_sym_bytes22] = ACTIONS(724),
    [anon_sym_bytes23] = ACTIONS(724),
    [anon_sym_bytes24] = ACTIONS(724),
    [anon_sym_bytes25] = ACTIONS(724),
    [anon_sym_bytes26] = ACTIONS(724),
    [anon_sym_bytes27] = ACTIONS(724),
    [anon_sym_bytes28] = ACTIONS(724),
    [anon_sym_bytes29] = ACTIONS(724),
    [anon_sym_bytes30] = ACTIONS(724),
    [anon_sym_bytes31] = ACTIONS(724),
    [anon_sym_bytes32] = ACTIONS(724),
    [anon_sym_fixed] = ACTIONS(724),
    [aux_sym__fixed_token1] = ACTIONS(724),
    [anon_sym_ufixed] = ACTIONS(724),
    [aux_sym__ufixed_token1] = ACTIONS(724),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(184)] = {
    [ts_builtin_sym_end] = ACTIONS(726),
    [sym_identifier] = ACTIONS(728),
    [anon_sym_pragma] = ACTIONS(728),
    [anon_sym_import] = ACTIONS(728),
    [anon_sym_type] = ACTIONS(728),
    [anon_sym_abstract] = ACTIONS(728),
    [anon_sym_contract] = ACTIONS(728),
    [anon_sym_error] = ACTIONS(728),
    [anon_sym_interface] = ACTIONS(728),
    [anon_sym_library] = ACTIONS(728),
    [anon_sym_struct] = ACTIONS(728),
    [anon_sym_enum] = ACTIONS(728),
    [anon_sym_event] = ACTIONS(728),
    [anon_sym_using] = ACTIONS(728),
    [anon_sym_function] = ACTIONS(728),
    [anon_sym_byte] = ACTIONS(728),
    [anon_sym_address] = ACTIONS(728),
    [anon_sym_var] = ACTIONS(728),
    [anon_sym_mapping] = ACTIONS(728),
    [anon_sym_bool] = ACTIONS(728),
    [anon_sym_string] = ACTIONS(728),
    [anon_sym_int] = ACTIONS(728),
    [anon_sym_int8] = ACTIONS(728),
    [anon_sym_int16] = ACTIONS(728),
    [anon_sym_int24] = ACTIONS(728),
    [anon_sym_int32] = ACTIONS(728),
    [anon_sym_int40] = ACTIONS(728),
    [anon_sym_int48] = ACTIONS(728),
    [anon_sym_int56] = ACTIONS(728),
    [anon_sym_int64] = ACTIONS(728),
    [anon_sym_int72] = ACTIONS(728),
    [anon_sym_int80] = ACTIONS(728),
    [anon_sym_int88] = ACTIONS(728),
    [anon_sym_int96] = ACTIONS(728),
    [anon_sym_int104] = ACTIONS(728),
    [anon_sym_int112] = ACTIONS(728),
    [anon_sym_int120] = ACTIONS(728),
    [anon_sym_int128] = ACTIONS(728),
    [anon_sym_int136] = ACTIONS(728),
    [anon_sym_int144] = ACTIONS(728),
    [anon_sym_int152] = ACTIONS(728),
    [anon_sym_int160] = ACTIONS(728),
    [anon_sym_int168] = ACTIONS(728),
    [anon_sym_int176] = ACTIONS(728),
    [anon_sym_int184] = ACTIONS(728),
    [anon_sym_int192] = ACTIONS(728),
    [anon_sym_int200] = ACTIONS(728),
    [anon_sym_int208] = ACTIONS(728),
    [anon_sym_int216] = ACTIONS(728),
    [anon_sym_int224] = ACTIONS(728),
    [anon_sym_int232] = ACTIONS(728),
    [anon_sym_int240] = ACTIONS(728),
    [anon_sym_int248] = ACTIONS(728),
    [anon_sym_int256] = ACTIONS(728),
    [anon_sym_uint] = ACTIONS(728),
    [anon_sym_uint8] = ACTIONS(728),
    [anon_sym_uint16] = ACTIONS(728),
    [anon_sym_uint24] = ACTIONS(728),
    [anon_sym_uint32] = ACTIONS(728),
    [anon_sym_uint40] = ACTIONS(728),
    [anon_sym_uint48] = ACTIONS(728),
    [anon_sym_uint56] = ACTIONS(728),
    [anon_sym_uint64] = ACTIONS(728),
    [anon_sym_uint72] = ACTIONS(728),
    [anon_sym_uint80] = ACTIONS(728),
    [anon_sym_uint88] = ACTIONS(728),
    [anon_sym_uint96] = ACTIONS(728),
    [anon_sym_uint104] = ACTIONS(728),
    [anon_sym_uint112] = ACTIONS(728),
    [anon_sym_uint120] = ACTIONS(728),
    [anon_sym_uint128] = ACTIONS(728),
    [anon_sym_uint136] = ACTIONS(728),
    [anon_sym_uint144] = ACTIONS(728),
    [anon_sym_uint152] = ACTIONS(728),
    [anon_sym_uint160] = ACTIONS(728),
    [anon_sym_uint168] = ACTIONS(728),
    [anon_sym_uint176] = ACTIONS(728),
    [anon_sym_uint184] = ACTIONS(728),
    [anon_sym_uint192] = ACTIONS(728),
    [anon_sym_uint200] = ACTIONS(728),
    [anon_sym_uint208] = ACTIONS(728),
    [anon_sym_uint216] = ACTIONS(728),
    [anon_sym_uint224] = ACTIONS(728),
    [anon_sym_uint232] = ACTIONS(728),
    [anon_sym_uint240] = ACTIONS(728),
    [anon_sym_uint248] = ACTIONS(728),
    [anon_sym_uint256] = ACTIONS(728),
    [anon_sym_bytes] = ACTIONS(728),
    [anon_sym_bytes1] = ACTIONS(728),
    [anon_sym_bytes2] = ACTIONS(728),
    [anon_sym_bytes3] = ACTIONS(728),
    [anon_sym_bytes4] = ACTIONS(728),
    [anon_sym_bytes5] = ACTIONS(728),
    [anon_sym_bytes6] = ACTIONS(728),
    [anon_sym_bytes7] = ACTIONS(728),
    [anon_sym_bytes8] = ACTIONS(728),
    [anon_sym_bytes9] = ACTIONS(728),
    [anon_sym_bytes10] = ACTIONS(728),
    [anon_sym_bytes11] = ACTIONS(728),
    [anon_sym_bytes12] = ACTIONS(728),
    [anon_sym_bytes13] = ACTIONS(728),
    [anon_sym_bytes14] = ACTIONS(728),
    [anon_sym_bytes15] = ACTIONS(728),
    [anon_sym_bytes16] = ACTIONS(728),
    [anon_sym_bytes17] = ACTIONS(728),
    [anon_sym_bytes18] = ACTIONS(728),
    [anon_sym_bytes19] = ACTIONS(728),
    [anon_sym_bytes20] = ACTIONS(728),
    [anon_sym_bytes21] = ACTIONS(728),
    [anon_sym_bytes22] = ACTIONS(728),
    [anon_sym_bytes23] = ACTIONS(728),
    [anon_sym_bytes24] = ACTIONS(728),
    [anon_sym_bytes25] = ACTIONS(728),
    [anon_sym_bytes26] = ACTIONS(728),
    [anon_sym_bytes27] = ACTIONS(728),
    [anon_sym_bytes28] = ACTIONS(728),
    [anon_sym_bytes29] = ACTIONS(728),
    [anon_sym_bytes30] = ACTIONS(728),
    [anon_sym_bytes31] = ACTIONS(728),
    [anon_sym_bytes32] = ACTIONS(728),
    [anon_sym_fixed] = ACTIONS(728),
    [aux_sym__fixed_token1] = ACTIONS(728),
    [anon_sym_ufixed] = ACTIONS(728),
    [aux_sym__ufixed_token1] = ACTIONS(728),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(185)] = {
    [ts_builtin_sym_end] = ACTIONS(730),
    [sym_identifier] = ACTIONS(732),
    [anon_sym_pragma] = ACTIONS(732),
    [anon_sym_import] = ACTIONS(732),
    [anon_sym_type] = ACTIONS(732),
    [anon_sym_abstract] = ACTIONS(732),
    [anon_sym_contract] = ACTIONS(732),
    [anon_sym_error] = ACTIONS(732),
    [anon_sym_interface] = ACTIONS(732),
    [anon_sym_library] = ACTIONS(732),
    [anon_sym_struct] = ACTIONS(732),
    [anon_sym_enum] = ACTIONS(732),
    [anon_sym_event] = ACTIONS(732),
    [anon_sym_using] = ACTIONS(732),
    [anon_sym_function] = ACTIONS(732),
    [anon_sym_byte] = ACTIONS(732),
    [anon_sym_address] = ACTIONS(732),
    [anon_sym_var] = ACTIONS(732),
    [anon_sym_mapping] = ACTIONS(732),
    [anon_sym_bool] = ACTIONS(732),
    [anon_sym_string] = ACTIONS(732),
    [anon_sym_int] = ACTIONS(732),
    [anon_sym_int8] = ACTIONS(732),
    [anon_sym_int16] = ACTIONS(732),
    [anon_sym_int24] = ACTIONS(732),
    [anon_sym_int32] = ACTIONS(732),
    [anon_sym_int40] = ACTIONS(732),
    [anon_sym_int48] = ACTIONS(732),
    [anon_sym_int56] = ACTIONS(732),
    [anon_sym_int64] = ACTIONS(732),
    [anon_sym_int72] = ACTIONS(732),
    [anon_sym_int80] = ACTIONS(732),
    [anon_sym_int88] = ACTIONS(732),
    [anon_sym_int96] = ACTIONS(732),
    [anon_sym_int104] = ACTIONS(732),
    [anon_sym_int112] = ACTIONS(732),
    [anon_sym_int120] = ACTIONS(732),
    [anon_sym_int128] = ACTIONS(732),
    [anon_sym_int136] = ACTIONS(732),
    [anon_sym_int144] = ACTIONS(732),
    [anon_sym_int152] = ACTIONS(732),
    [anon_sym_int160] = ACTIONS(732),
    [anon_sym_int168] = ACTIONS(732),
    [anon_sym_int176] = ACTIONS(732),
    [anon_sym_int184] = ACTIONS(732),
    [anon_sym_int192] = ACTIONS(732),
    [anon_sym_int200] = ACTIONS(732),
    [anon_sym_int208] = ACTIONS(732),
    [anon_sym_int216] = ACTIONS(732),
    [anon_sym_int224] = ACTIONS(732),
    [anon_sym_int232] = ACTIONS(732),
    [anon_sym_int240] = ACTIONS(732),
    [anon_sym_int248] = ACTIONS(732),
    [anon_sym_int256] = ACTIONS(732),
    [anon_sym_uint] = ACTIONS(732),
    [anon_sym_uint8] = ACTIONS(732),
    [anon_sym_uint16] = ACTIONS(732),
    [anon_sym_uint24] = ACTIONS(732),
    [anon_sym_uint32] = ACTIONS(732),
    [anon_sym_uint40] = ACTIONS(732),
    [anon_sym_uint48] = ACTIONS(732),
    [anon_sym_uint56] = ACTIONS(732),
    [anon_sym_uint64] = ACTIONS(732),
    [anon_sym_uint72] = ACTIONS(732),
    [anon_sym_uint80] = ACTIONS(732),
    [anon_sym_uint88] = ACTIONS(732),
    [anon_sym_uint96] = ACTIONS(732),
    [anon_sym_uint104] = ACTIONS(732),
    [anon_sym_uint112] = ACTIONS(732),
    [anon_sym_uint120] = ACTIONS(732),
    [anon_sym_uint128] = ACTIONS(732),
    [anon_sym_uint136] = ACTIONS(732),
    [anon_sym_uint144] = ACTIONS(732),
    [anon_sym_uint152] = ACTIONS(732),
    [anon_sym_uint160] = ACTIONS(732),
    [anon_sym_uint168] = ACTIONS(732),
    [anon_sym_uint176] = ACTIONS(732),
    [anon_sym_uint184] = ACTIONS(732),
    [anon_sym_uint192] = ACTIONS(732),
    [anon_sym_uint200] = ACTIONS(732),
    [anon_sym_uint208] = ACTIONS(732),
    [anon_sym_uint216] = ACTIONS(732),
    [anon_sym_uint224] = ACTIONS(732),
    [anon_sym_uint232] = ACTIONS(732),
    [anon_sym_uint240] = ACTIONS(732),
    [anon_sym_uint248] = ACTIONS(732),
    [anon_sym_uint256] = ACTIONS(732),
    [anon_sym_bytes] = ACTIONS(732),
    [anon_sym_bytes1] = ACTIONS(732),
    [anon_sym_bytes2] = ACTIONS(732),
    [anon_sym_bytes3] = ACTIONS(732),
    [anon_sym_bytes4] = ACTIONS(732),
    [anon_sym_bytes5] = ACTIONS(732),
    [anon_sym_bytes6] = ACTIONS(732),
    [anon_sym_bytes7] = ACTIONS(732),
    [anon_sym_bytes8] = ACTIONS(732),
    [anon_sym_bytes9] = ACTIONS(732),
    [anon_sym_bytes10] = ACTIONS(732),
    [anon_sym_bytes11] = ACTIONS(732),
    [anon_sym_bytes12] = ACTIONS(732),
    [anon_sym_bytes13] = ACTIONS(732),
    [anon_sym_bytes14] = ACTIONS(732),
    [anon_sym_bytes15] = ACTIONS(732),
    [anon_sym_bytes16] = ACTIONS(732),
    [anon_sym_bytes17] = ACTIONS(732),
    [anon_sym_bytes18] = ACTIONS(732),
    [anon_sym_bytes19] = ACTIONS(732),
    [anon_sym_bytes20] = ACTIONS(732),
    [anon_sym_bytes21] = ACTIONS(732),
    [anon_sym_bytes22] = ACTIONS(732),
    [anon_sym_bytes23] = ACTIONS(732),
    [anon_sym_bytes24] = ACTIONS(732),
    [anon_sym_bytes25] = ACTIONS(732),
    [anon_sym_bytes26] = ACTIONS(732),
    [anon_sym_bytes27] = ACTIONS(732),
    [anon_sym_bytes28] = ACTIONS(732),
    [anon_sym_bytes29] = ACTIONS(732),
    [anon_sym_bytes30] = ACTIONS(732),
    [anon_sym_bytes31] = ACTIONS(732),
    [anon_sym_bytes32] = ACTIONS(732),
    [anon_sym_fixed] = ACTIONS(732),
    [aux_sym__fixed_token1] = ACTIONS(732),
    [anon_sym_ufixed] = ACTIONS(732),
    [aux_sym__ufixed_token1] = ACTIONS(732),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(186)] = {
    [ts_builtin_sym_end] = ACTIONS(734),
    [sym_identifier] = ACTIONS(736),
    [anon_sym_pragma] = ACTIONS(736),
    [anon_sym_import] = ACTIONS(736),
    [anon_sym_type] = ACTIONS(736),
    [anon_sym_abstract] = ACTIONS(736),
    [anon_sym_contract] = ACTIONS(736),
    [anon_sym_error] = ACTIONS(736),
    [anon_sym_interface] = ACTIONS(736),
    [anon_sym_library] = ACTIONS(736),
    [anon_sym_struct] = ACTIONS(736),
    [anon_sym_enum] = ACTIONS(736),
    [anon_sym_event] = ACTIONS(736),
    [anon_sym_using] = ACTIONS(736),
    [anon_sym_function] = ACTIONS(736),
    [anon_sym_byte] = ACTIONS(736),
    [anon_sym_address] = ACTIONS(736),
    [anon_sym_var] = ACTIONS(736),
    [anon_sym_mapping] = ACTIONS(736),
    [anon_sym_bool] = ACTIONS(736),
    [anon_sym_string] = ACTIONS(736),
    [anon_sym_int] = ACTIONS(736),
    [anon_sym_int8] = ACTIONS(736),
    [anon_sym_int16] = ACTIONS(736),
    [anon_sym_int24] = ACTIONS(736),
    [anon_sym_int32] = ACTIONS(736),
    [anon_sym_int40] = ACTIONS(736),
    [anon_sym_int48] = ACTIONS(736),
    [anon_sym_int56] = ACTIONS(736),
    [anon_sym_int64] = ACTIONS(736),
    [anon_sym_int72] = ACTIONS(736),
    [anon_sym_int80] = ACTIONS(736),
    [anon_sym_int88] = ACTIONS(736),
    [anon_sym_int96] = ACTIONS(736),
    [anon_sym_int104] = ACTIONS(736),
    [anon_sym_int112] = ACTIONS(736),
    [anon_sym_int120] = ACTIONS(736),
    [anon_sym_int128] = ACTIONS(736),
    [anon_sym_int136] = ACTIONS(736),
    [anon_sym_int144] = ACTIONS(736),
    [anon_sym_int152] = ACTIONS(736),
    [anon_sym_int160] = ACTIONS(736),
    [anon_sym_int168] = ACTIONS(736),
    [anon_sym_int176] = ACTIONS(736),
    [anon_sym_int184] = ACTIONS(736),
    [anon_sym_int192] = ACTIONS(736),
    [anon_sym_int200] = ACTIONS(736),
    [anon_sym_int208] = ACTIONS(736),
    [anon_sym_int216] = ACTIONS(736),
    [anon_sym_int224] = ACTIONS(736),
    [anon_sym_int232] = ACTIONS(736),
    [anon_sym_int240] = ACTIONS(736),
    [anon_sym_int248] = ACTIONS(736),
    [anon_sym_int256] = ACTIONS(736),
    [anon_sym_uint] = ACTIONS(736),
    [anon_sym_uint8] = ACTIONS(736),
    [anon_sym_uint16] = ACTIONS(736),
    [anon_sym_uint24] = ACTIONS(736),
    [anon_sym_uint32] = ACTIONS(736),
    [anon_sym_uint40] = ACTIONS(736),
    [anon_sym_uint48] = ACTIONS(736),
    [anon_sym_uint56] = ACTIONS(736),
    [anon_sym_uint64] = ACTIONS(736),
    [anon_sym_uint72] = ACTIONS(736),
    [anon_sym_uint80] = ACTIONS(736),
    [anon_sym_uint88] = ACTIONS(736),
    [anon_sym_uint96] = ACTIONS(736),
    [anon_sym_uint104] = ACTIONS(736),
    [anon_sym_uint112] = ACTIONS(736),
    [anon_sym_uint120] = ACTIONS(736),
    [anon_sym_uint128] = ACTIONS(736),
    [anon_sym_uint136] = ACTIONS(736),
    [anon_sym_uint144] = ACTIONS(736),
    [anon_sym_uint152] = ACTIONS(736),
    [anon_sym_uint160] = ACTIONS(736),
    [anon_sym_uint168] = ACTIONS(736),
    [anon_sym_uint176] = ACTIONS(736),
    [anon_sym_uint184] = ACTIONS(736),
    [anon_sym_uint192] = ACTIONS(736),
    [anon_sym_uint200] = ACTIONS(736),
    [anon_sym_uint208] = ACTIONS(736),
    [anon_sym_uint216] = ACTIONS(736),
    [anon_sym_uint224] = ACTIONS(736),
    [anon_sym_uint232] = ACTIONS(736),
    [anon_sym_uint240] = ACTIONS(736),
    [anon_sym_uint248] = ACTIONS(736),
    [anon_sym_uint256] = ACTIONS(736),
    [anon_sym_bytes] = ACTIONS(736),
    [anon_sym_bytes1] = ACTIONS(736),
    [anon_sym_bytes2] = ACTIONS(736),
    [anon_sym_bytes3] = ACTIONS(736),
    [anon_sym_bytes4] = ACTIONS(736),
    [anon_sym_bytes5] = ACTIONS(736),
    [anon_sym_bytes6] = ACTIONS(736),
    [anon_sym_bytes7] = ACTIONS(736),
    [anon_sym_bytes8] = ACTIONS(736),
    [anon_sym_bytes9] = ACTIONS(736),
    [anon_sym_bytes10] = ACTIONS(736),
    [anon_sym_bytes11] = ACTIONS(736),
    [anon_sym_bytes12] = ACTIONS(736),
    [anon_sym_bytes13] = ACTIONS(736),
    [anon_sym_bytes14] = ACTIONS(736),
    [anon_sym_bytes15] = ACTIONS(736),
    [anon_sym_bytes16] = ACTIONS(736),
    [anon_sym_bytes17] = ACTIONS(736),
    [anon_sym_bytes18] = ACTIONS(736),
    [anon_sym_bytes19] = ACTIONS(736),
    [anon_sym_bytes20] = ACTIONS(736),
    [anon_sym_bytes21] = ACTIONS(736),
    [anon_sym_bytes22] = ACTIONS(736),
    [anon_sym_bytes23] = ACTIONS(736),
    [anon_sym_bytes24] = ACTIONS(736),
    [anon_sym_bytes25] = ACTIONS(736),
    [anon_sym_bytes26] = ACTIONS(736),
    [anon_sym_bytes27] = ACTIONS(736),
    [anon_sym_bytes28] = ACTIONS(736),
    [anon_sym_bytes29] = ACTIONS(736),
    [anon_sym_bytes30] = ACTIONS(736),
    [anon_sym_bytes31] = ACTIONS(736),
    [anon_sym_bytes32] = ACTIONS(736),
    [anon_sym_fixed] = ACTIONS(736),
    [aux_sym__fixed_token1] = ACTIONS(736),
    [anon_sym_ufixed] = ACTIONS(736),
    [aux_sym__ufixed_token1] = ACTIONS(736),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(187)] = {
    [ts_builtin_sym_end] = ACTIONS(738),
    [sym_identifier] = ACTIONS(740),
    [anon_sym_pragma] = ACTIONS(740),
    [anon_sym_import] = ACTIONS(740),
    [anon_sym_type] = ACTIONS(740),
    [anon_sym_abstract] = ACTIONS(740),
    [anon_sym_contract] = ACTIONS(740),
    [anon_sym_error] = ACTIONS(740),
    [anon_sym_interface] = ACTIONS(740),
    [anon_sym_library] = ACTIONS(740),
    [anon_sym_struct] = ACTIONS(740),
    [anon_sym_enum] = ACTIONS(740),
    [anon_sym_event] = ACTIONS(740),
    [anon_sym_using] = ACTIONS(740),
    [anon_sym_function] = ACTIONS(740),
    [anon_sym_byte] = ACTIONS(740),
    [anon_sym_address] = ACTIONS(740),
    [anon_sym_var] = ACTIONS(740),
    [anon_sym_mapping] = ACTIONS(740),
    [anon_sym_bool] = ACTIONS(740),
    [anon_sym_string] = ACTIONS(740),
    [anon_sym_int] = ACTIONS(740),
    [anon_sym_int8] = ACTIONS(740),
    [anon_sym_int16] = ACTIONS(740),
    [anon_sym_int24] = ACTIONS(740),
    [anon_sym_int32] = ACTIONS(740),
    [anon_sym_int40] = ACTIONS(740),
    [anon_sym_int48] = ACTIONS(740),
    [anon_sym_int56] = ACTIONS(740),
    [anon_sym_int64] = ACTIONS(740),
    [anon_sym_int72] = ACTIONS(740),
    [anon_sym_int80] = ACTIONS(740),
    [anon_sym_int88] = ACTIONS(740),
    [anon_sym_int96] = ACTIONS(740),
    [anon_sym_int104] = ACTIONS(740),
    [anon_sym_int112] = ACTIONS(740),
    [anon_sym_int120] = ACTIONS(740),
    [anon_sym_int128] = ACTIONS(740),
    [anon_sym_int136] = ACTIONS(740),
    [anon_sym_int144] = ACTIONS(740),
    [anon_sym_int152] = ACTIONS(740),
    [anon_sym_int160] = ACTIONS(740),
    [anon_sym_int168] = ACTIONS(740),
    [anon_sym_int176] = ACTIONS(740),
    [anon_sym_int184] = ACTIONS(740),
    [anon_sym_int192] = ACTIONS(740),
    [anon_sym_int200] = ACTIONS(740),
    [anon_sym_int208] = ACTIONS(740),
    [anon_sym_int216] = ACTIONS(740),
    [anon_sym_int224] = ACTIONS(740),
    [anon_sym_int232] = ACTIONS(740),
    [anon_sym_int240] = ACTIONS(740),
    [anon_sym_int248] = ACTIONS(740),
    [anon_sym_int256] = ACTIONS(740),
    [anon_sym_uint] = ACTIONS(740),
    [anon_sym_uint8] = ACTIONS(740),
    [anon_sym_uint16] = ACTIONS(740),
    [anon_sym_uint24] = ACTIONS(740),
    [anon_sym_uint32] = ACTIONS(740),
    [anon_sym_uint40] = ACTIONS(740),
    [anon_sym_uint48] = ACTIONS(740),
    [anon_sym_uint56] = ACTIONS(740),
    [anon_sym_uint64] = ACTIONS(740),
    [anon_sym_uint72] = ACTIONS(740),
    [anon_sym_uint80] = ACTIONS(740),
    [anon_sym_uint88] = ACTIONS(740),
    [anon_sym_uint96] = ACTIONS(740),
    [anon_sym_uint104] = ACTIONS(740),
    [anon_sym_uint112] = ACTIONS(740),
    [anon_sym_uint120] = ACTIONS(740),
    [anon_sym_uint128] = ACTIONS(740),
    [anon_sym_uint136] = ACTIONS(740),
    [anon_sym_uint144] = ACTIONS(740),
    [anon_sym_uint152] = ACTIONS(740),
    [anon_sym_uint160] = ACTIONS(740),
    [anon_sym_uint168] = ACTIONS(740),
    [anon_sym_uint176] = ACTIONS(740),
    [anon_sym_uint184] = ACTIONS(740),
    [anon_sym_uint192] = ACTIONS(740),
    [anon_sym_uint200] = ACTIONS(740),
    [anon_sym_uint208] = ACTIONS(740),
    [anon_sym_uint216] = ACTIONS(740),
    [anon_sym_uint224] = ACTIONS(740),
    [anon_sym_uint232] = ACTIONS(740),
    [anon_sym_uint240] = ACTIONS(740),
    [anon_sym_uint248] = ACTIONS(740),
    [anon_sym_uint256] = ACTIONS(740),
    [anon_sym_bytes] = ACTIONS(740),
    [anon_sym_bytes1] = ACTIONS(740),
    [anon_sym_bytes2] = ACTIONS(740),
    [anon_sym_bytes3] = ACTIONS(740),
    [anon_sym_bytes4] = ACTIONS(740),
    [anon_sym_bytes5] = ACTIONS(740),
    [anon_sym_bytes6] = ACTIONS(740),
    [anon_sym_bytes7] = ACTIONS(740),
    [anon_sym_bytes8] = ACTIONS(740),
    [anon_sym_bytes9] = ACTIONS(740),
    [anon_sym_bytes10] = ACTIONS(740),
    [anon_sym_bytes11] = ACTIONS(740),
    [anon_sym_bytes12] = ACTIONS(740),
    [anon_sym_bytes13] = ACTIONS(740),
    [anon_sym_bytes14] = ACTIONS(740),
    [anon_sym_bytes15] = ACTIONS(740),
    [anon_sym_bytes16] = ACTIONS(740),
    [anon_sym_bytes17] = ACTIONS(740),
    [anon_sym_bytes18] = ACTIONS(740),
    [anon_sym_bytes19] = ACTIONS(740),
    [anon_sym_bytes20] = ACTIONS(740),
    [anon_sym_bytes21] = ACTIONS(740),
    [anon_sym_bytes22] = ACTIONS(740),
    [anon_sym_bytes23] = ACTIONS(740),
    [anon_sym_bytes24] = ACTIONS(740),
    [anon_sym_bytes25] = ACTIONS(740),
    [anon_sym_bytes26] = ACTIONS(740),
    [anon_sym_bytes27] = ACTIONS(740),
    [anon_sym_bytes28] = ACTIONS(740),
    [anon_sym_bytes29] = ACTIONS(740),
    [anon_sym_bytes30] = ACTIONS(740),
    [anon_sym_bytes31] = ACTIONS(740),
    [anon_sym_bytes32] = ACTIONS(740),
    [anon_sym_fixed] = ACTIONS(740),
    [aux_sym__fixed_token1] = ACTIONS(740),
    [anon_sym_ufixed] = ACTIONS(740),
    [aux_sym__ufixed_token1] = ACTIONS(740),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(188)] = {
    [ts_builtin_sym_end] = ACTIONS(742),
    [sym_identifier] = ACTIONS(744),
    [anon_sym_pragma] = ACTIONS(744),
    [anon_sym_import] = ACTIONS(744),
    [anon_sym_type] = ACTIONS(744),
    [anon_sym_abstract] = ACTIONS(744),
    [anon_sym_contract] = ACTIONS(744),
    [anon_sym_error] = ACTIONS(744),
    [anon_sym_interface] = ACTIONS(744),
    [anon_sym_library] = ACTIONS(744),
    [anon_sym_struct] = ACTIONS(744),
    [anon_sym_enum] = ACTIONS(744),
    [anon_sym_event] = ACTIONS(744),
    [anon_sym_using] = ACTIONS(744),
    [anon_sym_function] = ACTIONS(744),
    [anon_sym_byte] = ACTIONS(744),
    [anon_sym_address] = ACTIONS(744),
    [anon_sym_var] = ACTIONS(744),
    [anon_sym_mapping] = ACTIONS(744),
    [anon_sym_bool] = ACTIONS(744),
    [anon_sym_string] = ACTIONS(744),
    [anon_sym_int] = ACTIONS(744),
    [anon_sym_int8] = ACTIONS(744),
    [anon_sym_int16] = ACTIONS(744),
    [anon_sym_int24] = ACTIONS(744),
    [anon_sym_int32] = ACTIONS(744),
    [anon_sym_int40] = ACTIONS(744),
    [anon_sym_int48] = ACTIONS(744),
    [anon_sym_int56] = ACTIONS(744),
    [anon_sym_int64] = ACTIONS(744),
    [anon_sym_int72] = ACTIONS(744),
    [anon_sym_int80] = ACTIONS(744),
    [anon_sym_int88] = ACTIONS(744),
    [anon_sym_int96] = ACTIONS(744),
    [anon_sym_int104] = ACTIONS(744),
    [anon_sym_int112] = ACTIONS(744),
    [anon_sym_int120] = ACTIONS(744),
    [anon_sym_int128] = ACTIONS(744),
    [anon_sym_int136] = ACTIONS(744),
    [anon_sym_int144] = ACTIONS(744),
    [anon_sym_int152] = ACTIONS(744),
    [anon_sym_int160] = ACTIONS(744),
    [anon_sym_int168] = ACTIONS(744),
    [anon_sym_int176] = ACTIONS(744),
    [anon_sym_int184] = ACTIONS(744),
    [anon_sym_int192] = ACTIONS(744),
    [anon_sym_int200] = ACTIONS(744),
    [anon_sym_int208] = ACTIONS(744),
    [anon_sym_int216] = ACTIONS(744),
    [anon_sym_int224] = ACTIONS(744),
    [anon_sym_int232] = ACTIONS(744),
    [anon_sym_int240] = ACTIONS(744),
    [anon_sym_int248] = ACTIONS(744),
    [anon_sym_int256] = ACTIONS(744),
    [anon_sym_uint] = ACTIONS(744),
    [anon_sym_uint8] = ACTIONS(744),
    [anon_sym_uint16] = ACTIONS(744),
    [anon_sym_uint24] = ACTIONS(744),
    [anon_sym_uint32] = ACTIONS(744),
    [anon_sym_uint40] = ACTIONS(744),
    [anon_sym_uint48] = ACTIONS(744),
    [anon_sym_uint56] = ACTIONS(744),
    [anon_sym_uint64] = ACTIONS(744),
    [anon_sym_uint72] = ACTIONS(744),
    [anon_sym_uint80] = ACTIONS(744),
    [anon_sym_uint88] = ACTIONS(744),
    [anon_sym_uint96] = ACTIONS(744),
    [anon_sym_uint104] = ACTIONS(744),
    [anon_sym_uint112] = ACTIONS(744),
    [anon_sym_uint120] = ACTIONS(744),
    [anon_sym_uint128] = ACTIONS(744),
    [anon_sym_uint136] = ACTIONS(744),
    [anon_sym_uint144] = ACTIONS(744),
    [anon_sym_uint152] = ACTIONS(744),
    [anon_sym_uint160] = ACTIONS(744),
    [anon_sym_uint168] = ACTIONS(744),
    [anon_sym_uint176] = ACTIONS(744),
    [anon_sym_uint184] = ACTIONS(744),
    [anon_sym_uint192] = ACTIONS(744),
    [anon_sym_uint200] = ACTIONS(744),
    [anon_sym_uint208] = ACTIONS(744),
    [anon_sym_uint216] = ACTIONS(744),
    [anon_sym_uint224] = ACTIONS(744),
    [anon_sym_uint232] = ACTIONS(744),
    [anon_sym_uint240] = ACTIONS(744),
    [anon_sym_uint248] = ACTIONS(744),
    [anon_sym_uint256] = ACTIONS(744),
    [anon_sym_bytes] = ACTIONS(744),
    [anon_sym_bytes1] = ACTIONS(744),
    [anon_sym_bytes2] = ACTIONS(744),
    [anon_sym_bytes3] = ACTIONS(744),
    [anon_sym_bytes4] = ACTIONS(744),
    [anon_sym_bytes5] = ACTIONS(744),
    [anon_sym_bytes6] = ACTIONS(744),
    [anon_sym_bytes7] = ACTIONS(744),
    [anon_sym_bytes8] = ACTIONS(744),
    [anon_sym_bytes9] = ACTIONS(744),
    [anon_sym_bytes10] = ACTIONS(744),
    [anon_sym_bytes11] = ACTIONS(744),
    [anon_sym_bytes12] = ACTIONS(744),
    [anon_sym_bytes13] = ACTIONS(744),
    [anon_sym_bytes14] = ACTIONS(744),
    [anon_sym_bytes15] = ACTIONS(744),
    [anon_sym_bytes16] = ACTIONS(744),
    [anon_sym_bytes17] = ACTIONS(744),
    [anon_sym_bytes18] = ACTIONS(744),
    [anon_sym_bytes19] = ACTIONS(744),
    [anon_sym_bytes20] = ACTIONS(744),
    [anon_sym_bytes21] = ACTIONS(744),
    [anon_sym_bytes22] = ACTIONS(744),
    [anon_sym_bytes23] = ACTIONS(744),
    [anon_sym_bytes24] = ACTIONS(744),
    [anon_sym_bytes25] = ACTIONS(744),
    [anon_sym_bytes26] = ACTIONS(744),
    [anon_sym_bytes27] = ACTIONS(744),
    [anon_sym_bytes28] = ACTIONS(744),
    [anon_sym_bytes29] = ACTIONS(744),
    [anon_sym_bytes30] = ACTIONS(744),
    [anon_sym_bytes31] = ACTIONS(744),
    [anon_sym_bytes32] = ACTIONS(744),
    [anon_sym_fixed] = ACTIONS(744),
    [aux_sym__fixed_token1] = ACTIONS(744),
    [anon_sym_ufixed] = ACTIONS(744),
    [aux_sym__ufixed_token1] = ACTIONS(744),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(189)] = {
    [ts_builtin_sym_end] = ACTIONS(746),
    [sym_identifier] = ACTIONS(748),
    [anon_sym_pragma] = ACTIONS(748),
    [anon_sym_import] = ACTIONS(748),
    [anon_sym_type] = ACTIONS(748),
    [anon_sym_abstract] = ACTIONS(748),
    [anon_sym_contract] = ACTIONS(748),
    [anon_sym_error] = ACTIONS(748),
    [anon_sym_interface] = ACTIONS(748),
    [anon_sym_library] = ACTIONS(748),
    [anon_sym_struct] = ACTIONS(748),
    [anon_sym_enum] = ACTIONS(748),
    [anon_sym_event] = ACTIONS(748),
    [anon_sym_using] = ACTIONS(748),
    [anon_sym_function] = ACTIONS(748),
    [anon_sym_byte] = ACTIONS(748),
    [anon_sym_address] = ACTIONS(748),
    [anon_sym_var] = ACTIONS(748),
    [anon_sym_mapping] = ACTIONS(748),
    [anon_sym_bool] = ACTIONS(748),
    [anon_sym_string] = ACTIONS(748),
    [anon_sym_int] = ACTIONS(748),
    [anon_sym_int8] = ACTIONS(748),
    [anon_sym_int16] = ACTIONS(748),
    [anon_sym_int24] = ACTIONS(748),
    [anon_sym_int32] = ACTIONS(748),
    [anon_sym_int40] = ACTIONS(748),
    [anon_sym_int48] = ACTIONS(748),
    [anon_sym_int56] = ACTIONS(748),
    [anon_sym_int64] = ACTIONS(748),
    [anon_sym_int72] = ACTIONS(748),
    [anon_sym_int80] = ACTIONS(748),
    [anon_sym_int88] = ACTIONS(748),
    [anon_sym_int96] = ACTIONS(748),
    [anon_sym_int104] = ACTIONS(748),
    [anon_sym_int112] = ACTIONS(748),
    [anon_sym_int120] = ACTIONS(748),
    [anon_sym_int128] = ACTIONS(748),
    [anon_sym_int136] = ACTIONS(748),
    [anon_sym_int144] = ACTIONS(748),
    [anon_sym_int152] = ACTIONS(748),
    [anon_sym_int160] = ACTIONS(748),
    [anon_sym_int168] = ACTIONS(748),
    [anon_sym_int176] = ACTIONS(748),
    [anon_sym_int184] = ACTIONS(748),
    [anon_sym_int192] = ACTIONS(748),
    [anon_sym_int200] = ACTIONS(748),
    [anon_sym_int208] = ACTIONS(748),
    [anon_sym_int216] = ACTIONS(748),
    [anon_sym_int224] = ACTIONS(748),
    [anon_sym_int232] = ACTIONS(748),
    [anon_sym_int240] = ACTIONS(748),
    [anon_sym_int248] = ACTIONS(748),
    [anon_sym_int256] = ACTIONS(748),
    [anon_sym_uint] = ACTIONS(748),
    [anon_sym_uint8] = ACTIONS(748),
    [anon_sym_uint16] = ACTIONS(748),
    [anon_sym_uint24] = ACTIONS(748),
    [anon_sym_uint32] = ACTIONS(748),
    [anon_sym_uint40] = ACTIONS(748),
    [anon_sym_uint48] = ACTIONS(748),
    [anon_sym_uint56] = ACTIONS(748),
    [anon_sym_uint64] = ACTIONS(748),
    [anon_sym_uint72] = ACTIONS(748),
    [anon_sym_uint80] = ACTIONS(748),
    [anon_sym_uint88] = ACTIONS(748),
    [anon_sym_uint96] = ACTIONS(748),
    [anon_sym_uint104] = ACTIONS(748),
    [anon_sym_uint112] = ACTIONS(748),
    [anon_sym_uint120] = ACTIONS(748),
    [anon_sym_uint128] = ACTIONS(748),
    [anon_sym_uint136] = ACTIONS(748),
    [anon_sym_uint144] = ACTIONS(748),
    [anon_sym_uint152] = ACTIONS(748),
    [anon_sym_uint160] = ACTIONS(748),
    [anon_sym_uint168] = ACTIONS(748),
    [anon_sym_uint176] = ACTIONS(748),
    [anon_sym_uint184] = ACTIONS(748),
    [anon_sym_uint192] = ACTIONS(748),
    [anon_sym_uint200] = ACTIONS(748),
    [anon_sym_uint208] = ACTIONS(748),
    [anon_sym_uint216] = ACTIONS(748),
    [anon_sym_uint224] = ACTIONS(748),
    [anon_sym_uint232] = ACTIONS(748),
    [anon_sym_uint240] = ACTIONS(748),
    [anon_sym_uint248] = ACTIONS(748),
    [anon_sym_uint256] = ACTIONS(748),
    [anon_sym_bytes] = ACTIONS(748),
    [anon_sym_bytes1] = ACTIONS(748),
    [anon_sym_bytes2] = ACTIONS(748),
    [anon_sym_bytes3] = ACTIONS(748),
    [anon_sym_bytes4] = ACTIONS(748),
    [anon_sym_bytes5] = ACTIONS(748),
    [anon_sym_bytes6] = ACTIONS(748),
    [anon_sym_bytes7] = ACTIONS(748),
    [anon_sym_bytes8] = ACTIONS(748),
    [anon_sym_bytes9] = ACTIONS(748),
    [anon_sym_bytes10] = ACTIONS(748),
    [anon_sym_bytes11] = ACTIONS(748),
    [anon_sym_bytes12] = ACTIONS(748),
    [anon_sym_bytes13] = ACTIONS(748),
    [anon_sym_bytes14] = ACTIONS(748),
    [anon_sym_bytes15] = ACTIONS(748),
    [anon_sym_bytes16] = ACTIONS(748),
    [anon_sym_bytes17] = ACTIONS(748),
    [anon_sym_bytes18] = ACTIONS(748),
    [anon_sym_bytes19] = ACTIONS(748),
    [anon_sym_bytes20] = ACTIONS(748),
    [anon_sym_bytes21] = ACTIONS(748),
    [anon_sym_bytes22] = ACTIONS(748),
    [anon_sym_bytes23] = ACTIONS(748),
    [anon_sym_bytes24] = ACTIONS(748),
    [anon_sym_bytes25] = ACTIONS(748),
    [anon_sym_bytes26] = ACTIONS(748),
    [anon_sym_bytes27] = ACTIONS(748),
    [anon_sym_bytes28] = ACTIONS(748),
    [anon_sym_bytes29] = ACTIONS(748),
    [anon_sym_bytes30] = ACTIONS(748),
    [anon_sym_bytes31] = ACTIONS(748),
    [anon_sym_bytes32] = ACTIONS(748),
    [anon_sym_fixed] = ACTIONS(748),
    [aux_sym__fixed_token1] = ACTIONS(748),
    [anon_sym_ufixed] = ACTIONS(748),
    [aux_sym__ufixed_token1] = ACTIONS(748),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(190)] = {
    [ts_builtin_sym_end] = ACTIONS(750),
    [sym_identifier] = ACTIONS(752),
    [anon_sym_pragma] = ACTIONS(752),
    [anon_sym_import] = ACTIONS(752),
    [anon_sym_type] = ACTIONS(752),
    [anon_sym_abstract] = ACTIONS(752),
    [anon_sym_contract] = ACTIONS(752),
    [anon_sym_error] = ACTIONS(752),
    [anon_sym_interface] = ACTIONS(752),
    [anon_sym_library] = ACTIONS(752),
    [anon_sym_struct] = ACTIONS(752),
    [anon_sym_enum] = ACTIONS(752),
    [anon_sym_event] = ACTIONS(752),
    [anon_sym_using] = ACTIONS(752),
    [anon_sym_function] = ACTIONS(752),
    [anon_sym_byte] = ACTIONS(752),
    [anon_sym_address] = ACTIONS(752),
    [anon_sym_var] = ACTIONS(752),
    [anon_sym_mapping] = ACTIONS(752),
    [anon_sym_bool] = ACTIONS(752),
    [anon_sym_string] = ACTIONS(752),
    [anon_sym_int] = ACTIONS(752),
    [anon_sym_int8] = ACTIONS(752),
    [anon_sym_int16] = ACTIONS(752),
    [anon_sym_int24] = ACTIONS(752),
    [anon_sym_int32] = ACTIONS(752),
    [anon_sym_int40] = ACTIONS(752),
    [anon_sym_int48] = ACTIONS(752),
    [anon_sym_int56] = ACTIONS(752),
    [anon_sym_int64] = ACTIONS(752),
    [anon_sym_int72] = ACTIONS(752),
    [anon_sym_int80] = ACTIONS(752),
    [anon_sym_int88] = ACTIONS(752),
    [anon_sym_int96] = ACTIONS(752),
    [anon_sym_int104] = ACTIONS(752),
    [anon_sym_int112] = ACTIONS(752),
    [anon_sym_int120] = ACTIONS(752),
    [anon_sym_int128] = ACTIONS(752),
    [anon_sym_int136] = ACTIONS(752),
    [anon_sym_int144] = ACTIONS(752),
    [anon_sym_int152] = ACTIONS(752),
    [anon_sym_int160] = ACTIONS(752),
    [anon_sym_int168] = ACTIONS(752),
    [anon_sym_int176] = ACTIONS(752),
    [anon_sym_int184] = ACTIONS(752),
    [anon_sym_int192] = ACTIONS(752),
    [anon_sym_int200] = ACTIONS(752),
    [anon_sym_int208] = ACTIONS(752),
    [anon_sym_int216] = ACTIONS(752),
    [anon_sym_int224] = ACTIONS(752),
    [anon_sym_int232] = ACTIONS(752),
    [anon_sym_int240] = ACTIONS(752),
    [anon_sym_int248] = ACTIONS(752),
    [anon_sym_int256] = ACTIONS(752),
    [anon_sym_uint] = ACTIONS(752),
    [anon_sym_uint8] = ACTIONS(752),
    [anon_sym_uint16] = ACTIONS(752),
    [anon_sym_uint24] = ACTIONS(752),
    [anon_sym_uint32] = ACTIONS(752),
    [anon_sym_uint40] = ACTIONS(752),
    [anon_sym_uint48] = ACTIONS(752),
    [anon_sym_uint56] = ACTIONS(752),
    [anon_sym_uint64] = ACTIONS(752),
    [anon_sym_uint72] = ACTIONS(752),
    [anon_sym_uint80] = ACTIONS(752),
    [anon_sym_uint88] = ACTIONS(752),
    [anon_sym_uint96] = ACTIONS(752),
    [anon_sym_uint104] = ACTIONS(752),
    [anon_sym_uint112] = ACTIONS(752),
    [anon_sym_uint120] = ACTIONS(752),
    [anon_sym_uint128] = ACTIONS(752),
    [anon_sym_uint136] = ACTIONS(752),
    [anon_sym_uint144] = ACTIONS(752),
    [anon_sym_uint152] = ACTIONS(752),
    [anon_sym_uint160] = ACTIONS(752),
    [anon_sym_uint168] = ACTIONS(752),
    [anon_sym_uint176] = ACTIONS(752),
    [anon_sym_uint184] = ACTIONS(752),
    [anon_sym_uint192] = ACTIONS(752),
    [anon_sym_uint200] = ACTIONS(752),
    [anon_sym_uint208] = ACTIONS(752),
    [anon_sym_uint216] = ACTIONS(752),
    [anon_sym_uint224] = ACTIONS(752),
    [anon_sym_uint232] = ACTIONS(752),
    [anon_sym_uint240] = ACTIONS(752),
    [anon_sym_uint248] = ACTIONS(752),
    [anon_sym_uint256] = ACTIONS(752),
    [anon_sym_bytes] = ACTIONS(752),
    [anon_sym_bytes1] = ACTIONS(752),
    [anon_sym_bytes2] = ACTIONS(752),
    [anon_sym_bytes3] = ACTIONS(752),
    [anon_sym_bytes4] = ACTIONS(752),
    [anon_sym_bytes5] = ACTIONS(752),
    [anon_sym_bytes6] = ACTIONS(752),
    [anon_sym_bytes7] = ACTIONS(752),
    [anon_sym_bytes8] = ACTIONS(752),
    [anon_sym_bytes9] = ACTIONS(752),
    [anon_sym_bytes10] = ACTIONS(752),
    [anon_sym_bytes11] = ACTIONS(752),
    [anon_sym_bytes12] = ACTIONS(752),
    [anon_sym_bytes13] = ACTIONS(752),
    [anon_sym_bytes14] = ACTIONS(752),
    [anon_sym_bytes15] = ACTIONS(752),
    [anon_sym_bytes16] = ACTIONS(752),
    [anon_sym_bytes17] = ACTIONS(752),
    [anon_sym_bytes18] = ACTIONS(752),
    [anon_sym_bytes19] = ACTIONS(752),
    [anon_sym_bytes20] = ACTIONS(752),
    [anon_sym_bytes21] = ACTIONS(752),
    [anon_sym_bytes22] = ACTIONS(752),
    [anon_sym_bytes23] = ACTIONS(752),
    [anon_sym_bytes24] = ACTIONS(752),
    [anon_sym_bytes25] = ACTIONS(752),
    [anon_sym_bytes26] = ACTIONS(752),
    [anon_sym_bytes27] = ACTIONS(752),
    [anon_sym_bytes28] = ACTIONS(752),
    [anon_sym_bytes29] = ACTIONS(752),
    [anon_sym_bytes30] = ACTIONS(752),
    [anon_sym_bytes31] = ACTIONS(752),
    [anon_sym_bytes32] = ACTIONS(752),
    [anon_sym_fixed] = ACTIONS(752),
    [aux_sym__fixed_token1] = ACTIONS(752),
    [anon_sym_ufixed] = ACTIONS(752),
    [aux_sym__ufixed_token1] = ACTIONS(752),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(191)] = {
    [sym_event_parameter] = STATE(808),
    [sym_type_name] = STATE(560),
    [sym__array_type] = STATE(380),
    [sym__function_type] = STATE(379),
    [sym_user_defined_type] = STATE(380),
    [sym__identifier_path] = STATE(367),
    [sym__mapping] = STATE(381),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym_identifier] = ACTIONS(7),
    [anon_sym_function] = ACTIONS(75),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_mapping] = ACTIONS(39),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(192)] = {
    [ts_builtin_sym_end] = ACTIONS(754),
    [sym_identifier] = ACTIONS(756),
    [anon_sym_pragma] = ACTIONS(756),
    [anon_sym_import] = ACTIONS(756),
    [anon_sym_type] = ACTIONS(756),
    [anon_sym_abstract] = ACTIONS(756),
    [anon_sym_contract] = ACTIONS(756),
    [anon_sym_error] = ACTIONS(756),
    [anon_sym_interface] = ACTIONS(756),
    [anon_sym_library] = ACTIONS(756),
    [anon_sym_struct] = ACTIONS(756),
    [anon_sym_enum] = ACTIONS(756),
    [anon_sym_event] = ACTIONS(756),
    [anon_sym_using] = ACTIONS(756),
    [anon_sym_function] = ACTIONS(756),
    [anon_sym_byte] = ACTIONS(756),
    [anon_sym_address] = ACTIONS(756),
    [anon_sym_var] = ACTIONS(756),
    [anon_sym_mapping] = ACTIONS(756),
    [anon_sym_bool] = ACTIONS(756),
    [anon_sym_string] = ACTIONS(756),
    [anon_sym_int] = ACTIONS(756),
    [anon_sym_int8] = ACTIONS(756),
    [anon_sym_int16] = ACTIONS(756),
    [anon_sym_int24] = ACTIONS(756),
    [anon_sym_int32] = ACTIONS(756),
    [anon_sym_int40] = ACTIONS(756),
    [anon_sym_int48] = ACTIONS(756),
    [anon_sym_int56] = ACTIONS(756),
    [anon_sym_int64] = ACTIONS(756),
    [anon_sym_int72] = ACTIONS(756),
    [anon_sym_int80] = ACTIONS(756),
    [anon_sym_int88] = ACTIONS(756),
    [anon_sym_int96] = ACTIONS(756),
    [anon_sym_int104] = ACTIONS(756),
    [anon_sym_int112] = ACTIONS(756),
    [anon_sym_int120] = ACTIONS(756),
    [anon_sym_int128] = ACTIONS(756),
    [anon_sym_int136] = ACTIONS(756),
    [anon_sym_int144] = ACTIONS(756),
    [anon_sym_int152] = ACTIONS(756),
    [anon_sym_int160] = ACTIONS(756),
    [anon_sym_int168] = ACTIONS(756),
    [anon_sym_int176] = ACTIONS(756),
    [anon_sym_int184] = ACTIONS(756),
    [anon_sym_int192] = ACTIONS(756),
    [anon_sym_int200] = ACTIONS(756),
    [anon_sym_int208] = ACTIONS(756),
    [anon_sym_int216] = ACTIONS(756),
    [anon_sym_int224] = ACTIONS(756),
    [anon_sym_int232] = ACTIONS(756),
    [anon_sym_int240] = ACTIONS(756),
    [anon_sym_int248] = ACTIONS(756),
    [anon_sym_int256] = ACTIONS(756),
    [anon_sym_uint] = ACTIONS(756),
    [anon_sym_uint8] = ACTIONS(756),
    [anon_sym_uint16] = ACTIONS(756),
    [anon_sym_uint24] = ACTIONS(756),
    [anon_sym_uint32] = ACTIONS(756),
    [anon_sym_uint40] = ACTIONS(756),
    [anon_sym_uint48] = ACTIONS(756),
    [anon_sym_uint56] = ACTIONS(756),
    [anon_sym_uint64] = ACTIONS(756),
    [anon_sym_uint72] = ACTIONS(756),
    [anon_sym_uint80] = ACTIONS(756),
    [anon_sym_uint88] = ACTIONS(756),
    [anon_sym_uint96] = ACTIONS(756),
    [anon_sym_uint104] = ACTIONS(756),
    [anon_sym_uint112] = ACTIONS(756),
    [anon_sym_uint120] = ACTIONS(756),
    [anon_sym_uint128] = ACTIONS(756),
    [anon_sym_uint136] = ACTIONS(756),
    [anon_sym_uint144] = ACTIONS(756),
    [anon_sym_uint152] = ACTIONS(756),
    [anon_sym_uint160] = ACTIONS(756),
    [anon_sym_uint168] = ACTIONS(756),
    [anon_sym_uint176] = ACTIONS(756),
    [anon_sym_uint184] = ACTIONS(756),
    [anon_sym_uint192] = ACTIONS(756),
    [anon_sym_uint200] = ACTIONS(756),
    [anon_sym_uint208] = ACTIONS(756),
    [anon_sym_uint216] = ACTIONS(756),
    [anon_sym_uint224] = ACTIONS(756),
    [anon_sym_uint232] = ACTIONS(756),
    [anon_sym_uint240] = ACTIONS(756),
    [anon_sym_uint248] = ACTIONS(756),
    [anon_sym_uint256] = ACTIONS(756),
    [anon_sym_bytes] = ACTIONS(756),
    [anon_sym_bytes1] = ACTIONS(756),
    [anon_sym_bytes2] = ACTIONS(756),
    [anon_sym_bytes3] = ACTIONS(756),
    [anon_sym_bytes4] = ACTIONS(756),
    [anon_sym_bytes5] = ACTIONS(756),
    [anon_sym_bytes6] = ACTIONS(756),
    [anon_sym_bytes7] = ACTIONS(756),
    [anon_sym_bytes8] = ACTIONS(756),
    [anon_sym_bytes9] = ACTIONS(756),
    [anon_sym_bytes10] = ACTIONS(756),
    [anon_sym_bytes11] = ACTIONS(756),
    [anon_sym_bytes12] = ACTIONS(756),
    [anon_sym_bytes13] = ACTIONS(756),
    [anon_sym_bytes14] = ACTIONS(756),
    [anon_sym_bytes15] = ACTIONS(756),
    [anon_sym_bytes16] = ACTIONS(756),
    [anon_sym_bytes17] = ACTIONS(756),
    [anon_sym_bytes18] = ACTIONS(756),
    [anon_sym_bytes19] = ACTIONS(756),
    [anon_sym_bytes20] = ACTIONS(756),
    [anon_sym_bytes21] = ACTIONS(756),
    [anon_sym_bytes22] = ACTIONS(756),
    [anon_sym_bytes23] = ACTIONS(756),
    [anon_sym_bytes24] = ACTIONS(756),
    [anon_sym_bytes25] = ACTIONS(756),
    [anon_sym_bytes26] = ACTIONS(756),
    [anon_sym_bytes27] = ACTIONS(756),
    [anon_sym_bytes28] = ACTIONS(756),
    [anon_sym_bytes29] = ACTIONS(756),
    [anon_sym_bytes30] = ACTIONS(756),
    [anon_sym_bytes31] = ACTIONS(756),
    [anon_sym_bytes32] = ACTIONS(756),
    [anon_sym_fixed] = ACTIONS(756),
    [aux_sym__fixed_token1] = ACTIONS(756),
    [anon_sym_ufixed] = ACTIONS(756),
    [aux_sym__ufixed_token1] = ACTIONS(756),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(193)] = {
    [ts_builtin_sym_end] = ACTIONS(758),
    [sym_identifier] = ACTIONS(760),
    [anon_sym_pragma] = ACTIONS(760),
    [anon_sym_import] = ACTIONS(760),
    [anon_sym_type] = ACTIONS(760),
    [anon_sym_abstract] = ACTIONS(760),
    [anon_sym_contract] = ACTIONS(760),
    [anon_sym_error] = ACTIONS(760),
    [anon_sym_interface] = ACTIONS(760),
    [anon_sym_library] = ACTIONS(760),
    [anon_sym_struct] = ACTIONS(760),
    [anon_sym_enum] = ACTIONS(760),
    [anon_sym_event] = ACTIONS(760),
    [anon_sym_using] = ACTIONS(760),
    [anon_sym_function] = ACTIONS(760),
    [anon_sym_byte] = ACTIONS(760),
    [anon_sym_address] = ACTIONS(760),
    [anon_sym_var] = ACTIONS(760),
    [anon_sym_mapping] = ACTIONS(760),
    [anon_sym_bool] = ACTIONS(760),
    [anon_sym_string] = ACTIONS(760),
    [anon_sym_int] = ACTIONS(760),
    [anon_sym_int8] = ACTIONS(760),
    [anon_sym_int16] = ACTIONS(760),
    [anon_sym_int24] = ACTIONS(760),
    [anon_sym_int32] = ACTIONS(760),
    [anon_sym_int40] = ACTIONS(760),
    [anon_sym_int48] = ACTIONS(760),
    [anon_sym_int56] = ACTIONS(760),
    [anon_sym_int64] = ACTIONS(760),
    [anon_sym_int72] = ACTIONS(760),
    [anon_sym_int80] = ACTIONS(760),
    [anon_sym_int88] = ACTIONS(760),
    [anon_sym_int96] = ACTIONS(760),
    [anon_sym_int104] = ACTIONS(760),
    [anon_sym_int112] = ACTIONS(760),
    [anon_sym_int120] = ACTIONS(760),
    [anon_sym_int128] = ACTIONS(760),
    [anon_sym_int136] = ACTIONS(760),
    [anon_sym_int144] = ACTIONS(760),
    [anon_sym_int152] = ACTIONS(760),
    [anon_sym_int160] = ACTIONS(760),
    [anon_sym_int168] = ACTIONS(760),
    [anon_sym_int176] = ACTIONS(760),
    [anon_sym_int184] = ACTIONS(760),
    [anon_sym_int192] = ACTIONS(760),
    [anon_sym_int200] = ACTIONS(760),
    [anon_sym_int208] = ACTIONS(760),
    [anon_sym_int216] = ACTIONS(760),
    [anon_sym_int224] = ACTIONS(760),
    [anon_sym_int232] = ACTIONS(760),
    [anon_sym_int240] = ACTIONS(760),
    [anon_sym_int248] = ACTIONS(760),
    [anon_sym_int256] = ACTIONS(760),
    [anon_sym_uint] = ACTIONS(760),
    [anon_sym_uint8] = ACTIONS(760),
    [anon_sym_uint16] = ACTIONS(760),
    [anon_sym_uint24] = ACTIONS(760),
    [anon_sym_uint32] = ACTIONS(760),
    [anon_sym_uint40] = ACTIONS(760),
    [anon_sym_uint48] = ACTIONS(760),
    [anon_sym_uint56] = ACTIONS(760),
    [anon_sym_uint64] = ACTIONS(760),
    [anon_sym_uint72] = ACTIONS(760),
    [anon_sym_uint80] = ACTIONS(760),
    [anon_sym_uint88] = ACTIONS(760),
    [anon_sym_uint96] = ACTIONS(760),
    [anon_sym_uint104] = ACTIONS(760),
    [anon_sym_uint112] = ACTIONS(760),
    [anon_sym_uint120] = ACTIONS(760),
    [anon_sym_uint128] = ACTIONS(760),
    [anon_sym_uint136] = ACTIONS(760),
    [anon_sym_uint144] = ACTIONS(760),
    [anon_sym_uint152] = ACTIONS(760),
    [anon_sym_uint160] = ACTIONS(760),
    [anon_sym_uint168] = ACTIONS(760),
    [anon_sym_uint176] = ACTIONS(760),
    [anon_sym_uint184] = ACTIONS(760),
    [anon_sym_uint192] = ACTIONS(760),
    [anon_sym_uint200] = ACTIONS(760),
    [anon_sym_uint208] = ACTIONS(760),
    [anon_sym_uint216] = ACTIONS(760),
    [anon_sym_uint224] = ACTIONS(760),
    [anon_sym_uint232] = ACTIONS(760),
    [anon_sym_uint240] = ACTIONS(760),
    [anon_sym_uint248] = ACTIONS(760),
    [anon_sym_uint256] = ACTIONS(760),
    [anon_sym_bytes] = ACTIONS(760),
    [anon_sym_bytes1] = ACTIONS(760),
    [anon_sym_bytes2] = ACTIONS(760),
    [anon_sym_bytes3] = ACTIONS(760),
    [anon_sym_bytes4] = ACTIONS(760),
    [anon_sym_bytes5] = ACTIONS(760),
    [anon_sym_bytes6] = ACTIONS(760),
    [anon_sym_bytes7] = ACTIONS(760),
    [anon_sym_bytes8] = ACTIONS(760),
    [anon_sym_bytes9] = ACTIONS(760),
    [anon_sym_bytes10] = ACTIONS(760),
    [anon_sym_bytes11] = ACTIONS(760),
    [anon_sym_bytes12] = ACTIONS(760),
    [anon_sym_bytes13] = ACTIONS(760),
    [anon_sym_bytes14] = ACTIONS(760),
    [anon_sym_bytes15] = ACTIONS(760),
    [anon_sym_bytes16] = ACTIONS(760),
    [anon_sym_bytes17] = ACTIONS(760),
    [anon_sym_bytes18] = ACTIONS(760),
    [anon_sym_bytes19] = ACTIONS(760),
    [anon_sym_bytes20] = ACTIONS(760),
    [anon_sym_bytes21] = ACTIONS(760),
    [anon_sym_bytes22] = ACTIONS(760),
    [anon_sym_bytes23] = ACTIONS(760),
    [anon_sym_bytes24] = ACTIONS(760),
    [anon_sym_bytes25] = ACTIONS(760),
    [anon_sym_bytes26] = ACTIONS(760),
    [anon_sym_bytes27] = ACTIONS(760),
    [anon_sym_bytes28] = ACTIONS(760),
    [anon_sym_bytes29] = ACTIONS(760),
    [anon_sym_bytes30] = ACTIONS(760),
    [anon_sym_bytes31] = ACTIONS(760),
    [anon_sym_bytes32] = ACTIONS(760),
    [anon_sym_fixed] = ACTIONS(760),
    [aux_sym__fixed_token1] = ACTIONS(760),
    [anon_sym_ufixed] = ACTIONS(760),
    [aux_sym__ufixed_token1] = ACTIONS(760),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(194)] = {
    [ts_builtin_sym_end] = ACTIONS(762),
    [sym_identifier] = ACTIONS(764),
    [anon_sym_pragma] = ACTIONS(764),
    [anon_sym_import] = ACTIONS(764),
    [anon_sym_type] = ACTIONS(764),
    [anon_sym_abstract] = ACTIONS(764),
    [anon_sym_contract] = ACTIONS(764),
    [anon_sym_error] = ACTIONS(764),
    [anon_sym_interface] = ACTIONS(764),
    [anon_sym_library] = ACTIONS(764),
    [anon_sym_struct] = ACTIONS(764),
    [anon_sym_enum] = ACTIONS(764),
    [anon_sym_event] = ACTIONS(764),
    [anon_sym_using] = ACTIONS(764),
    [anon_sym_function] = ACTIONS(764),
    [anon_sym_byte] = ACTIONS(764),
    [anon_sym_address] = ACTIONS(764),
    [anon_sym_var] = ACTIONS(764),
    [anon_sym_mapping] = ACTIONS(764),
    [anon_sym_bool] = ACTIONS(764),
    [anon_sym_string] = ACTIONS(764),
    [anon_sym_int] = ACTIONS(764),
    [anon_sym_int8] = ACTIONS(764),
    [anon_sym_int16] = ACTIONS(764),
    [anon_sym_int24] = ACTIONS(764),
    [anon_sym_int32] = ACTIONS(764),
    [anon_sym_int40] = ACTIONS(764),
    [anon_sym_int48] = ACTIONS(764),
    [anon_sym_int56] = ACTIONS(764),
    [anon_sym_int64] = ACTIONS(764),
    [anon_sym_int72] = ACTIONS(764),
    [anon_sym_int80] = ACTIONS(764),
    [anon_sym_int88] = ACTIONS(764),
    [anon_sym_int96] = ACTIONS(764),
    [anon_sym_int104] = ACTIONS(764),
    [anon_sym_int112] = ACTIONS(764),
    [anon_sym_int120] = ACTIONS(764),
    [anon_sym_int128] = ACTIONS(764),
    [anon_sym_int136] = ACTIONS(764),
    [anon_sym_int144] = ACTIONS(764),
    [anon_sym_int152] = ACTIONS(764),
    [anon_sym_int160] = ACTIONS(764),
    [anon_sym_int168] = ACTIONS(764),
    [anon_sym_int176] = ACTIONS(764),
    [anon_sym_int184] = ACTIONS(764),
    [anon_sym_int192] = ACTIONS(764),
    [anon_sym_int200] = ACTIONS(764),
    [anon_sym_int208] = ACTIONS(764),
    [anon_sym_int216] = ACTIONS(764),
    [anon_sym_int224] = ACTIONS(764),
    [anon_sym_int232] = ACTIONS(764),
    [anon_sym_int240] = ACTIONS(764),
    [anon_sym_int248] = ACTIONS(764),
    [anon_sym_int256] = ACTIONS(764),
    [anon_sym_uint] = ACTIONS(764),
    [anon_sym_uint8] = ACTIONS(764),
    [anon_sym_uint16] = ACTIONS(764),
    [anon_sym_uint24] = ACTIONS(764),
    [anon_sym_uint32] = ACTIONS(764),
    [anon_sym_uint40] = ACTIONS(764),
    [anon_sym_uint48] = ACTIONS(764),
    [anon_sym_uint56] = ACTIONS(764),
    [anon_sym_uint64] = ACTIONS(764),
    [anon_sym_uint72] = ACTIONS(764),
    [anon_sym_uint80] = ACTIONS(764),
    [anon_sym_uint88] = ACTIONS(764),
    [anon_sym_uint96] = ACTIONS(764),
    [anon_sym_uint104] = ACTIONS(764),
    [anon_sym_uint112] = ACTIONS(764),
    [anon_sym_uint120] = ACTIONS(764),
    [anon_sym_uint128] = ACTIONS(764),
    [anon_sym_uint136] = ACTIONS(764),
    [anon_sym_uint144] = ACTIONS(764),
    [anon_sym_uint152] = ACTIONS(764),
    [anon_sym_uint160] = ACTIONS(764),
    [anon_sym_uint168] = ACTIONS(764),
    [anon_sym_uint176] = ACTIONS(764),
    [anon_sym_uint184] = ACTIONS(764),
    [anon_sym_uint192] = ACTIONS(764),
    [anon_sym_uint200] = ACTIONS(764),
    [anon_sym_uint208] = ACTIONS(764),
    [anon_sym_uint216] = ACTIONS(764),
    [anon_sym_uint224] = ACTIONS(764),
    [anon_sym_uint232] = ACTIONS(764),
    [anon_sym_uint240] = ACTIONS(764),
    [anon_sym_uint248] = ACTIONS(764),
    [anon_sym_uint256] = ACTIONS(764),
    [anon_sym_bytes] = ACTIONS(764),
    [anon_sym_bytes1] = ACTIONS(764),
    [anon_sym_bytes2] = ACTIONS(764),
    [anon_sym_bytes3] = ACTIONS(764),
    [anon_sym_bytes4] = ACTIONS(764),
    [anon_sym_bytes5] = ACTIONS(764),
    [anon_sym_bytes6] = ACTIONS(764),
    [anon_sym_bytes7] = ACTIONS(764),
    [anon_sym_bytes8] = ACTIONS(764),
    [anon_sym_bytes9] = ACTIONS(764),
    [anon_sym_bytes10] = ACTIONS(764),
    [anon_sym_bytes11] = ACTIONS(764),
    [anon_sym_bytes12] = ACTIONS(764),
    [anon_sym_bytes13] = ACTIONS(764),
    [anon_sym_bytes14] = ACTIONS(764),
    [anon_sym_bytes15] = ACTIONS(764),
    [anon_sym_bytes16] = ACTIONS(764),
    [anon_sym_bytes17] = ACTIONS(764),
    [anon_sym_bytes18] = ACTIONS(764),
    [anon_sym_bytes19] = ACTIONS(764),
    [anon_sym_bytes20] = ACTIONS(764),
    [anon_sym_bytes21] = ACTIONS(764),
    [anon_sym_bytes22] = ACTIONS(764),
    [anon_sym_bytes23] = ACTIONS(764),
    [anon_sym_bytes24] = ACTIONS(764),
    [anon_sym_bytes25] = ACTIONS(764),
    [anon_sym_bytes26] = ACTIONS(764),
    [anon_sym_bytes27] = ACTIONS(764),
    [anon_sym_bytes28] = ACTIONS(764),
    [anon_sym_bytes29] = ACTIONS(764),
    [anon_sym_bytes30] = ACTIONS(764),
    [anon_sym_bytes31] = ACTIONS(764),
    [anon_sym_bytes32] = ACTIONS(764),
    [anon_sym_fixed] = ACTIONS(764),
    [aux_sym__fixed_token1] = ACTIONS(764),
    [anon_sym_ufixed] = ACTIONS(764),
    [aux_sym__ufixed_token1] = ACTIONS(764),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(195)] = {
    [ts_builtin_sym_end] = ACTIONS(766),
    [sym_identifier] = ACTIONS(768),
    [anon_sym_pragma] = ACTIONS(768),
    [anon_sym_import] = ACTIONS(768),
    [anon_sym_type] = ACTIONS(768),
    [anon_sym_abstract] = ACTIONS(768),
    [anon_sym_contract] = ACTIONS(768),
    [anon_sym_error] = ACTIONS(768),
    [anon_sym_interface] = ACTIONS(768),
    [anon_sym_library] = ACTIONS(768),
    [anon_sym_struct] = ACTIONS(768),
    [anon_sym_enum] = ACTIONS(768),
    [anon_sym_event] = ACTIONS(768),
    [anon_sym_using] = ACTIONS(768),
    [anon_sym_function] = ACTIONS(768),
    [anon_sym_byte] = ACTIONS(768),
    [anon_sym_address] = ACTIONS(768),
    [anon_sym_var] = ACTIONS(768),
    [anon_sym_mapping] = ACTIONS(768),
    [anon_sym_bool] = ACTIONS(768),
    [anon_sym_string] = ACTIONS(768),
    [anon_sym_int] = ACTIONS(768),
    [anon_sym_int8] = ACTIONS(768),
    [anon_sym_int16] = ACTIONS(768),
    [anon_sym_int24] = ACTIONS(768),
    [anon_sym_int32] = ACTIONS(768),
    [anon_sym_int40] = ACTIONS(768),
    [anon_sym_int48] = ACTIONS(768),
    [anon_sym_int56] = ACTIONS(768),
    [anon_sym_int64] = ACTIONS(768),
    [anon_sym_int72] = ACTIONS(768),
    [anon_sym_int80] = ACTIONS(768),
    [anon_sym_int88] = ACTIONS(768),
    [anon_sym_int96] = ACTIONS(768),
    [anon_sym_int104] = ACTIONS(768),
    [anon_sym_int112] = ACTIONS(768),
    [anon_sym_int120] = ACTIONS(768),
    [anon_sym_int128] = ACTIONS(768),
    [anon_sym_int136] = ACTIONS(768),
    [anon_sym_int144] = ACTIONS(768),
    [anon_sym_int152] = ACTIONS(768),
    [anon_sym_int160] = ACTIONS(768),
    [anon_sym_int168] = ACTIONS(768),
    [anon_sym_int176] = ACTIONS(768),
    [anon_sym_int184] = ACTIONS(768),
    [anon_sym_int192] = ACTIONS(768),
    [anon_sym_int200] = ACTIONS(768),
    [anon_sym_int208] = ACTIONS(768),
    [anon_sym_int216] = ACTIONS(768),
    [anon_sym_int224] = ACTIONS(768),
    [anon_sym_int232] = ACTIONS(768),
    [anon_sym_int240] = ACTIONS(768),
    [anon_sym_int248] = ACTIONS(768),
    [anon_sym_int256] = ACTIONS(768),
    [anon_sym_uint] = ACTIONS(768),
    [anon_sym_uint8] = ACTIONS(768),
    [anon_sym_uint16] = ACTIONS(768),
    [anon_sym_uint24] = ACTIONS(768),
    [anon_sym_uint32] = ACTIONS(768),
    [anon_sym_uint40] = ACTIONS(768),
    [anon_sym_uint48] = ACTIONS(768),
    [anon_sym_uint56] = ACTIONS(768),
    [anon_sym_uint64] = ACTIONS(768),
    [anon_sym_uint72] = ACTIONS(768),
    [anon_sym_uint80] = ACTIONS(768),
    [anon_sym_uint88] = ACTIONS(768),
    [anon_sym_uint96] = ACTIONS(768),
    [anon_sym_uint104] = ACTIONS(768),
    [anon_sym_uint112] = ACTIONS(768),
    [anon_sym_uint120] = ACTIONS(768),
    [anon_sym_uint128] = ACTIONS(768),
    [anon_sym_uint136] = ACTIONS(768),
    [anon_sym_uint144] = ACTIONS(768),
    [anon_sym_uint152] = ACTIONS(768),
    [anon_sym_uint160] = ACTIONS(768),
    [anon_sym_uint168] = ACTIONS(768),
    [anon_sym_uint176] = ACTIONS(768),
    [anon_sym_uint184] = ACTIONS(768),
    [anon_sym_uint192] = ACTIONS(768),
    [anon_sym_uint200] = ACTIONS(768),
    [anon_sym_uint208] = ACTIONS(768),
    [anon_sym_uint216] = ACTIONS(768),
    [anon_sym_uint224] = ACTIONS(768),
    [anon_sym_uint232] = ACTIONS(768),
    [anon_sym_uint240] = ACTIONS(768),
    [anon_sym_uint248] = ACTIONS(768),
    [anon_sym_uint256] = ACTIONS(768),
    [anon_sym_bytes] = ACTIONS(768),
    [anon_sym_bytes1] = ACTIONS(768),
    [anon_sym_bytes2] = ACTIONS(768),
    [anon_sym_bytes3] = ACTIONS(768),
    [anon_sym_bytes4] = ACTIONS(768),
    [anon_sym_bytes5] = ACTIONS(768),
    [anon_sym_bytes6] = ACTIONS(768),
    [anon_sym_bytes7] = ACTIONS(768),
    [anon_sym_bytes8] = ACTIONS(768),
    [anon_sym_bytes9] = ACTIONS(768),
    [anon_sym_bytes10] = ACTIONS(768),
    [anon_sym_bytes11] = ACTIONS(768),
    [anon_sym_bytes12] = ACTIONS(768),
    [anon_sym_bytes13] = ACTIONS(768),
    [anon_sym_bytes14] = ACTIONS(768),
    [anon_sym_bytes15] = ACTIONS(768),
    [anon_sym_bytes16] = ACTIONS(768),
    [anon_sym_bytes17] = ACTIONS(768),
    [anon_sym_bytes18] = ACTIONS(768),
    [anon_sym_bytes19] = ACTIONS(768),
    [anon_sym_bytes20] = ACTIONS(768),
    [anon_sym_bytes21] = ACTIONS(768),
    [anon_sym_bytes22] = ACTIONS(768),
    [anon_sym_bytes23] = ACTIONS(768),
    [anon_sym_bytes24] = ACTIONS(768),
    [anon_sym_bytes25] = ACTIONS(768),
    [anon_sym_bytes26] = ACTIONS(768),
    [anon_sym_bytes27] = ACTIONS(768),
    [anon_sym_bytes28] = ACTIONS(768),
    [anon_sym_bytes29] = ACTIONS(768),
    [anon_sym_bytes30] = ACTIONS(768),
    [anon_sym_bytes31] = ACTIONS(768),
    [anon_sym_bytes32] = ACTIONS(768),
    [anon_sym_fixed] = ACTIONS(768),
    [aux_sym__fixed_token1] = ACTIONS(768),
    [anon_sym_ufixed] = ACTIONS(768),
    [aux_sym__ufixed_token1] = ACTIONS(768),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(196)] = {
    [ts_builtin_sym_end] = ACTIONS(770),
    [sym_identifier] = ACTIONS(772),
    [anon_sym_pragma] = ACTIONS(772),
    [anon_sym_import] = ACTIONS(772),
    [anon_sym_type] = ACTIONS(772),
    [anon_sym_abstract] = ACTIONS(772),
    [anon_sym_contract] = ACTIONS(772),
    [anon_sym_error] = ACTIONS(772),
    [anon_sym_interface] = ACTIONS(772),
    [anon_sym_library] = ACTIONS(772),
    [anon_sym_struct] = ACTIONS(772),
    [anon_sym_enum] = ACTIONS(772),
    [anon_sym_event] = ACTIONS(772),
    [anon_sym_using] = ACTIONS(772),
    [anon_sym_function] = ACTIONS(772),
    [anon_sym_byte] = ACTIONS(772),
    [anon_sym_address] = ACTIONS(772),
    [anon_sym_var] = ACTIONS(772),
    [anon_sym_mapping] = ACTIONS(772),
    [anon_sym_bool] = ACTIONS(772),
    [anon_sym_string] = ACTIONS(772),
    [anon_sym_int] = ACTIONS(772),
    [anon_sym_int8] = ACTIONS(772),
    [anon_sym_int16] = ACTIONS(772),
    [anon_sym_int24] = ACTIONS(772),
    [anon_sym_int32] = ACTIONS(772),
    [anon_sym_int40] = ACTIONS(772),
    [anon_sym_int48] = ACTIONS(772),
    [anon_sym_int56] = ACTIONS(772),
    [anon_sym_int64] = ACTIONS(772),
    [anon_sym_int72] = ACTIONS(772),
    [anon_sym_int80] = ACTIONS(772),
    [anon_sym_int88] = ACTIONS(772),
    [anon_sym_int96] = ACTIONS(772),
    [anon_sym_int104] = ACTIONS(772),
    [anon_sym_int112] = ACTIONS(772),
    [anon_sym_int120] = ACTIONS(772),
    [anon_sym_int128] = ACTIONS(772),
    [anon_sym_int136] = ACTIONS(772),
    [anon_sym_int144] = ACTIONS(772),
    [anon_sym_int152] = ACTIONS(772),
    [anon_sym_int160] = ACTIONS(772),
    [anon_sym_int168] = ACTIONS(772),
    [anon_sym_int176] = ACTIONS(772),
    [anon_sym_int184] = ACTIONS(772),
    [anon_sym_int192] = ACTIONS(772),
    [anon_sym_int200] = ACTIONS(772),
    [anon_sym_int208] = ACTIONS(772),
    [anon_sym_int216] = ACTIONS(772),
    [anon_sym_int224] = ACTIONS(772),
    [anon_sym_int232] = ACTIONS(772),
    [anon_sym_int240] = ACTIONS(772),
    [anon_sym_int248] = ACTIONS(772),
    [anon_sym_int256] = ACTIONS(772),
    [anon_sym_uint] = ACTIONS(772),
    [anon_sym_uint8] = ACTIONS(772),
    [anon_sym_uint16] = ACTIONS(772),
    [anon_sym_uint24] = ACTIONS(772),
    [anon_sym_uint32] = ACTIONS(772),
    [anon_sym_uint40] = ACTIONS(772),
    [anon_sym_uint48] = ACTIONS(772),
    [anon_sym_uint56] = ACTIONS(772),
    [anon_sym_uint64] = ACTIONS(772),
    [anon_sym_uint72] = ACTIONS(772),
    [anon_sym_uint80] = ACTIONS(772),
    [anon_sym_uint88] = ACTIONS(772),
    [anon_sym_uint96] = ACTIONS(772),
    [anon_sym_uint104] = ACTIONS(772),
    [anon_sym_uint112] = ACTIONS(772),
    [anon_sym_uint120] = ACTIONS(772),
    [anon_sym_uint128] = ACTIONS(772),
    [anon_sym_uint136] = ACTIONS(772),
    [anon_sym_uint144] = ACTIONS(772),
    [anon_sym_uint152] = ACTIONS(772),
    [anon_sym_uint160] = ACTIONS(772),
    [anon_sym_uint168] = ACTIONS(772),
    [anon_sym_uint176] = ACTIONS(772),
    [anon_sym_uint184] = ACTIONS(772),
    [anon_sym_uint192] = ACTIONS(772),
    [anon_sym_uint200] = ACTIONS(772),
    [anon_sym_uint208] = ACTIONS(772),
    [anon_sym_uint216] = ACTIONS(772),
    [anon_sym_uint224] = ACTIONS(772),
    [anon_sym_uint232] = ACTIONS(772),
    [anon_sym_uint240] = ACTIONS(772),
    [anon_sym_uint248] = ACTIONS(772),
    [anon_sym_uint256] = ACTIONS(772),
    [anon_sym_bytes] = ACTIONS(772),
    [anon_sym_bytes1] = ACTIONS(772),
    [anon_sym_bytes2] = ACTIONS(772),
    [anon_sym_bytes3] = ACTIONS(772),
    [anon_sym_bytes4] = ACTIONS(772),
    [anon_sym_bytes5] = ACTIONS(772),
    [anon_sym_bytes6] = ACTIONS(772),
    [anon_sym_bytes7] = ACTIONS(772),
    [anon_sym_bytes8] = ACTIONS(772),
    [anon_sym_bytes9] = ACTIONS(772),
    [anon_sym_bytes10] = ACTIONS(772),
    [anon_sym_bytes11] = ACTIONS(772),
    [anon_sym_bytes12] = ACTIONS(772),
    [anon_sym_bytes13] = ACTIONS(772),
    [anon_sym_bytes14] = ACTIONS(772),
    [anon_sym_bytes15] = ACTIONS(772),
    [anon_sym_bytes16] = ACTIONS(772),
    [anon_sym_bytes17] = ACTIONS(772),
    [anon_sym_bytes18] = ACTIONS(772),
    [anon_sym_bytes19] = ACTIONS(772),
    [anon_sym_bytes20] = ACTIONS(772),
    [anon_sym_bytes21] = ACTIONS(772),
    [anon_sym_bytes22] = ACTIONS(772),
    [anon_sym_bytes23] = ACTIONS(772),
    [anon_sym_bytes24] = ACTIONS(772),
    [anon_sym_bytes25] = ACTIONS(772),
    [anon_sym_bytes26] = ACTIONS(772),
    [anon_sym_bytes27] = ACTIONS(772),
    [anon_sym_bytes28] = ACTIONS(772),
    [anon_sym_bytes29] = ACTIONS(772),
    [anon_sym_bytes30] = ACTIONS(772),
    [anon_sym_bytes31] = ACTIONS(772),
    [anon_sym_bytes32] = ACTIONS(772),
    [anon_sym_fixed] = ACTIONS(772),
    [aux_sym__fixed_token1] = ACTIONS(772),
    [anon_sym_ufixed] = ACTIONS(772),
    [aux_sym__ufixed_token1] = ACTIONS(772),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(197)] = {
    [ts_builtin_sym_end] = ACTIONS(774),
    [sym_identifier] = ACTIONS(776),
    [anon_sym_pragma] = ACTIONS(776),
    [anon_sym_import] = ACTIONS(776),
    [anon_sym_type] = ACTIONS(776),
    [anon_sym_abstract] = ACTIONS(776),
    [anon_sym_contract] = ACTIONS(776),
    [anon_sym_error] = ACTIONS(776),
    [anon_sym_interface] = ACTIONS(776),
    [anon_sym_library] = ACTIONS(776),
    [anon_sym_struct] = ACTIONS(776),
    [anon_sym_enum] = ACTIONS(776),
    [anon_sym_event] = ACTIONS(776),
    [anon_sym_using] = ACTIONS(776),
    [anon_sym_function] = ACTIONS(776),
    [anon_sym_byte] = ACTIONS(776),
    [anon_sym_address] = ACTIONS(776),
    [anon_sym_var] = ACTIONS(776),
    [anon_sym_mapping] = ACTIONS(776),
    [anon_sym_bool] = ACTIONS(776),
    [anon_sym_string] = ACTIONS(776),
    [anon_sym_int] = ACTIONS(776),
    [anon_sym_int8] = ACTIONS(776),
    [anon_sym_int16] = ACTIONS(776),
    [anon_sym_int24] = ACTIONS(776),
    [anon_sym_int32] = ACTIONS(776),
    [anon_sym_int40] = ACTIONS(776),
    [anon_sym_int48] = ACTIONS(776),
    [anon_sym_int56] = ACTIONS(776),
    [anon_sym_int64] = ACTIONS(776),
    [anon_sym_int72] = ACTIONS(776),
    [anon_sym_int80] = ACTIONS(776),
    [anon_sym_int88] = ACTIONS(776),
    [anon_sym_int96] = ACTIONS(776),
    [anon_sym_int104] = ACTIONS(776),
    [anon_sym_int112] = ACTIONS(776),
    [anon_sym_int120] = ACTIONS(776),
    [anon_sym_int128] = ACTIONS(776),
    [anon_sym_int136] = ACTIONS(776),
    [anon_sym_int144] = ACTIONS(776),
    [anon_sym_int152] = ACTIONS(776),
    [anon_sym_int160] = ACTIONS(776),
    [anon_sym_int168] = ACTIONS(776),
    [anon_sym_int176] = ACTIONS(776),
    [anon_sym_int184] = ACTIONS(776),
    [anon_sym_int192] = ACTIONS(776),
    [anon_sym_int200] = ACTIONS(776),
    [anon_sym_int208] = ACTIONS(776),
    [anon_sym_int216] = ACTIONS(776),
    [anon_sym_int224] = ACTIONS(776),
    [anon_sym_int232] = ACTIONS(776),
    [anon_sym_int240] = ACTIONS(776),
    [anon_sym_int248] = ACTIONS(776),
    [anon_sym_int256] = ACTIONS(776),
    [anon_sym_uint] = ACTIONS(776),
    [anon_sym_uint8] = ACTIONS(776),
    [anon_sym_uint16] = ACTIONS(776),
    [anon_sym_uint24] = ACTIONS(776),
    [anon_sym_uint32] = ACTIONS(776),
    [anon_sym_uint40] = ACTIONS(776),
    [anon_sym_uint48] = ACTIONS(776),
    [anon_sym_uint56] = ACTIONS(776),
    [anon_sym_uint64] = ACTIONS(776),
    [anon_sym_uint72] = ACTIONS(776),
    [anon_sym_uint80] = ACTIONS(776),
    [anon_sym_uint88] = ACTIONS(776),
    [anon_sym_uint96] = ACTIONS(776),
    [anon_sym_uint104] = ACTIONS(776),
    [anon_sym_uint112] = ACTIONS(776),
    [anon_sym_uint120] = ACTIONS(776),
    [anon_sym_uint128] = ACTIONS(776),
    [anon_sym_uint136] = ACTIONS(776),
    [anon_sym_uint144] = ACTIONS(776),
    [anon_sym_uint152] = ACTIONS(776),
    [anon_sym_uint160] = ACTIONS(776),
    [anon_sym_uint168] = ACTIONS(776),
    [anon_sym_uint176] = ACTIONS(776),
    [anon_sym_uint184] = ACTIONS(776),
    [anon_sym_uint192] = ACTIONS(776),
    [anon_sym_uint200] = ACTIONS(776),
    [anon_sym_uint208] = ACTIONS(776),
    [anon_sym_uint216] = ACTIONS(776),
    [anon_sym_uint224] = ACTIONS(776),
    [anon_sym_uint232] = ACTIONS(776),
    [anon_sym_uint240] = ACTIONS(776),
    [anon_sym_uint248] = ACTIONS(776),
    [anon_sym_uint256] = ACTIONS(776),
    [anon_sym_bytes] = ACTIONS(776),
    [anon_sym_bytes1] = ACTIONS(776),
    [anon_sym_bytes2] = ACTIONS(776),
    [anon_sym_bytes3] = ACTIONS(776),
    [anon_sym_bytes4] = ACTIONS(776),
    [anon_sym_bytes5] = ACTIONS(776),
    [anon_sym_bytes6] = ACTIONS(776),
    [anon_sym_bytes7] = ACTIONS(776),
    [anon_sym_bytes8] = ACTIONS(776),
    [anon_sym_bytes9] = ACTIONS(776),
    [anon_sym_bytes10] = ACTIONS(776),
    [anon_sym_bytes11] = ACTIONS(776),
    [anon_sym_bytes12] = ACTIONS(776),
    [anon_sym_bytes13] = ACTIONS(776),
    [anon_sym_bytes14] = ACTIONS(776),
    [anon_sym_bytes15] = ACTIONS(776),
    [anon_sym_bytes16] = ACTIONS(776),
    [anon_sym_bytes17] = ACTIONS(776),
    [anon_sym_bytes18] = ACTIONS(776),
    [anon_sym_bytes19] = ACTIONS(776),
    [anon_sym_bytes20] = ACTIONS(776),
    [anon_sym_bytes21] = ACTIONS(776),
    [anon_sym_bytes22] = ACTIONS(776),
    [anon_sym_bytes23] = ACTIONS(776),
    [anon_sym_bytes24] = ACTIONS(776),
    [anon_sym_bytes25] = ACTIONS(776),
    [anon_sym_bytes26] = ACTIONS(776),
    [anon_sym_bytes27] = ACTIONS(776),
    [anon_sym_bytes28] = ACTIONS(776),
    [anon_sym_bytes29] = ACTIONS(776),
    [anon_sym_bytes30] = ACTIONS(776),
    [anon_sym_bytes31] = ACTIONS(776),
    [anon_sym_bytes32] = ACTIONS(776),
    [anon_sym_fixed] = ACTIONS(776),
    [aux_sym__fixed_token1] = ACTIONS(776),
    [anon_sym_ufixed] = ACTIONS(776),
    [aux_sym__ufixed_token1] = ACTIONS(776),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(198)] = {
    [ts_builtin_sym_end] = ACTIONS(778),
    [sym_identifier] = ACTIONS(780),
    [anon_sym_pragma] = ACTIONS(780),
    [anon_sym_import] = ACTIONS(780),
    [anon_sym_type] = ACTIONS(780),
    [anon_sym_abstract] = ACTIONS(780),
    [anon_sym_contract] = ACTIONS(780),
    [anon_sym_error] = ACTIONS(780),
    [anon_sym_interface] = ACTIONS(780),
    [anon_sym_library] = ACTIONS(780),
    [anon_sym_struct] = ACTIONS(780),
    [anon_sym_enum] = ACTIONS(780),
    [anon_sym_event] = ACTIONS(780),
    [anon_sym_using] = ACTIONS(780),
    [anon_sym_function] = ACTIONS(780),
    [anon_sym_byte] = ACTIONS(780),
    [anon_sym_address] = ACTIONS(780),
    [anon_sym_var] = ACTIONS(780),
    [anon_sym_mapping] = ACTIONS(780),
    [anon_sym_bool] = ACTIONS(780),
    [anon_sym_string] = ACTIONS(780),
    [anon_sym_int] = ACTIONS(780),
    [anon_sym_int8] = ACTIONS(780),
    [anon_sym_int16] = ACTIONS(780),
    [anon_sym_int24] = ACTIONS(780),
    [anon_sym_int32] = ACTIONS(780),
    [anon_sym_int40] = ACTIONS(780),
    [anon_sym_int48] = ACTIONS(780),
    [anon_sym_int56] = ACTIONS(780),
    [anon_sym_int64] = ACTIONS(780),
    [anon_sym_int72] = ACTIONS(780),
    [anon_sym_int80] = ACTIONS(780),
    [anon_sym_int88] = ACTIONS(780),
    [anon_sym_int96] = ACTIONS(780),
    [anon_sym_int104] = ACTIONS(780),
    [anon_sym_int112] = ACTIONS(780),
    [anon_sym_int120] = ACTIONS(780),
    [anon_sym_int128] = ACTIONS(780),
    [anon_sym_int136] = ACTIONS(780),
    [anon_sym_int144] = ACTIONS(780),
    [anon_sym_int152] = ACTIONS(780),
    [anon_sym_int160] = ACTIONS(780),
    [anon_sym_int168] = ACTIONS(780),
    [anon_sym_int176] = ACTIONS(780),
    [anon_sym_int184] = ACTIONS(780),
    [anon_sym_int192] = ACTIONS(780),
    [anon_sym_int200] = ACTIONS(780),
    [anon_sym_int208] = ACTIONS(780),
    [anon_sym_int216] = ACTIONS(780),
    [anon_sym_int224] = ACTIONS(780),
    [anon_sym_int232] = ACTIONS(780),
    [anon_sym_int240] = ACTIONS(780),
    [anon_sym_int248] = ACTIONS(780),
    [anon_sym_int256] = ACTIONS(780),
    [anon_sym_uint] = ACTIONS(780),
    [anon_sym_uint8] = ACTIONS(780),
    [anon_sym_uint16] = ACTIONS(780),
    [anon_sym_uint24] = ACTIONS(780),
    [anon_sym_uint32] = ACTIONS(780),
    [anon_sym_uint40] = ACTIONS(780),
    [anon_sym_uint48] = ACTIONS(780),
    [anon_sym_uint56] = ACTIONS(780),
    [anon_sym_uint64] = ACTIONS(780),
    [anon_sym_uint72] = ACTIONS(780),
    [anon_sym_uint80] = ACTIONS(780),
    [anon_sym_uint88] = ACTIONS(780),
    [anon_sym_uint96] = ACTIONS(780),
    [anon_sym_uint104] = ACTIONS(780),
    [anon_sym_uint112] = ACTIONS(780),
    [anon_sym_uint120] = ACTIONS(780),
    [anon_sym_uint128] = ACTIONS(780),
    [anon_sym_uint136] = ACTIONS(780),
    [anon_sym_uint144] = ACTIONS(780),
    [anon_sym_uint152] = ACTIONS(780),
    [anon_sym_uint160] = ACTIONS(780),
    [anon_sym_uint168] = ACTIONS(780),
    [anon_sym_uint176] = ACTIONS(780),
    [anon_sym_uint184] = ACTIONS(780),
    [anon_sym_uint192] = ACTIONS(780),
    [anon_sym_uint200] = ACTIONS(780),
    [anon_sym_uint208] = ACTIONS(780),
    [anon_sym_uint216] = ACTIONS(780),
    [anon_sym_uint224] = ACTIONS(780),
    [anon_sym_uint232] = ACTIONS(780),
    [anon_sym_uint240] = ACTIONS(780),
    [anon_sym_uint248] = ACTIONS(780),
    [anon_sym_uint256] = ACTIONS(780),
    [anon_sym_bytes] = ACTIONS(780),
    [anon_sym_bytes1] = ACTIONS(780),
    [anon_sym_bytes2] = ACTIONS(780),
    [anon_sym_bytes3] = ACTIONS(780),
    [anon_sym_bytes4] = ACTIONS(780),
    [anon_sym_bytes5] = ACTIONS(780),
    [anon_sym_bytes6] = ACTIONS(780),
    [anon_sym_bytes7] = ACTIONS(780),
    [anon_sym_bytes8] = ACTIONS(780),
    [anon_sym_bytes9] = ACTIONS(780),
    [anon_sym_bytes10] = ACTIONS(780),
    [anon_sym_bytes11] = ACTIONS(780),
    [anon_sym_bytes12] = ACTIONS(780),
    [anon_sym_bytes13] = ACTIONS(780),
    [anon_sym_bytes14] = ACTIONS(780),
    [anon_sym_bytes15] = ACTIONS(780),
    [anon_sym_bytes16] = ACTIONS(780),
    [anon_sym_bytes17] = ACTIONS(780),
    [anon_sym_bytes18] = ACTIONS(780),
    [anon_sym_bytes19] = ACTIONS(780),
    [anon_sym_bytes20] = ACTIONS(780),
    [anon_sym_bytes21] = ACTIONS(780),
    [anon_sym_bytes22] = ACTIONS(780),
    [anon_sym_bytes23] = ACTIONS(780),
    [anon_sym_bytes24] = ACTIONS(780),
    [anon_sym_bytes25] = ACTIONS(780),
    [anon_sym_bytes26] = ACTIONS(780),
    [anon_sym_bytes27] = ACTIONS(780),
    [anon_sym_bytes28] = ACTIONS(780),
    [anon_sym_bytes29] = ACTIONS(780),
    [anon_sym_bytes30] = ACTIONS(780),
    [anon_sym_bytes31] = ACTIONS(780),
    [anon_sym_bytes32] = ACTIONS(780),
    [anon_sym_fixed] = ACTIONS(780),
    [aux_sym__fixed_token1] = ACTIONS(780),
    [anon_sym_ufixed] = ACTIONS(780),
    [aux_sym__ufixed_token1] = ACTIONS(780),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(199)] = {
    [ts_builtin_sym_end] = ACTIONS(782),
    [sym_identifier] = ACTIONS(784),
    [anon_sym_pragma] = ACTIONS(784),
    [anon_sym_import] = ACTIONS(784),
    [anon_sym_type] = ACTIONS(784),
    [anon_sym_abstract] = ACTIONS(784),
    [anon_sym_contract] = ACTIONS(784),
    [anon_sym_error] = ACTIONS(784),
    [anon_sym_interface] = ACTIONS(784),
    [anon_sym_library] = ACTIONS(784),
    [anon_sym_struct] = ACTIONS(784),
    [anon_sym_enum] = ACTIONS(784),
    [anon_sym_event] = ACTIONS(784),
    [anon_sym_using] = ACTIONS(784),
    [anon_sym_function] = ACTIONS(784),
    [anon_sym_byte] = ACTIONS(784),
    [anon_sym_address] = ACTIONS(784),
    [anon_sym_var] = ACTIONS(784),
    [anon_sym_mapping] = ACTIONS(784),
    [anon_sym_bool] = ACTIONS(784),
    [anon_sym_string] = ACTIONS(784),
    [anon_sym_int] = ACTIONS(784),
    [anon_sym_int8] = ACTIONS(784),
    [anon_sym_int16] = ACTIONS(784),
    [anon_sym_int24] = ACTIONS(784),
    [anon_sym_int32] = ACTIONS(784),
    [anon_sym_int40] = ACTIONS(784),
    [anon_sym_int48] = ACTIONS(784),
    [anon_sym_int56] = ACTIONS(784),
    [anon_sym_int64] = ACTIONS(784),
    [anon_sym_int72] = ACTIONS(784),
    [anon_sym_int80] = ACTIONS(784),
    [anon_sym_int88] = ACTIONS(784),
    [anon_sym_int96] = ACTIONS(784),
    [anon_sym_int104] = ACTIONS(784),
    [anon_sym_int112] = ACTIONS(784),
    [anon_sym_int120] = ACTIONS(784),
    [anon_sym_int128] = ACTIONS(784),
    [anon_sym_int136] = ACTIONS(784),
    [anon_sym_int144] = ACTIONS(784),
    [anon_sym_int152] = ACTIONS(784),
    [anon_sym_int160] = ACTIONS(784),
    [anon_sym_int168] = ACTIONS(784),
    [anon_sym_int176] = ACTIONS(784),
    [anon_sym_int184] = ACTIONS(784),
    [anon_sym_int192] = ACTIONS(784),
    [anon_sym_int200] = ACTIONS(784),
    [anon_sym_int208] = ACTIONS(784),
    [anon_sym_int216] = ACTIONS(784),
    [anon_sym_int224] = ACTIONS(784),
    [anon_sym_int232] = ACTIONS(784),
    [anon_sym_int240] = ACTIONS(784),
    [anon_sym_int248] = ACTIONS(784),
    [anon_sym_int256] = ACTIONS(784),
    [anon_sym_uint] = ACTIONS(784),
    [anon_sym_uint8] = ACTIONS(784),
    [anon_sym_uint16] = ACTIONS(784),
    [anon_sym_uint24] = ACTIONS(784),
    [anon_sym_uint32] = ACTIONS(784),
    [anon_sym_uint40] = ACTIONS(784),
    [anon_sym_uint48] = ACTIONS(784),
    [anon_sym_uint56] = ACTIONS(784),
    [anon_sym_uint64] = ACTIONS(784),
    [anon_sym_uint72] = ACTIONS(784),
    [anon_sym_uint80] = ACTIONS(784),
    [anon_sym_uint88] = ACTIONS(784),
    [anon_sym_uint96] = ACTIONS(784),
    [anon_sym_uint104] = ACTIONS(784),
    [anon_sym_uint112] = ACTIONS(784),
    [anon_sym_uint120] = ACTIONS(784),
    [anon_sym_uint128] = ACTIONS(784),
    [anon_sym_uint136] = ACTIONS(784),
    [anon_sym_uint144] = ACTIONS(784),
    [anon_sym_uint152] = ACTIONS(784),
    [anon_sym_uint160] = ACTIONS(784),
    [anon_sym_uint168] = ACTIONS(784),
    [anon_sym_uint176] = ACTIONS(784),
    [anon_sym_uint184] = ACTIONS(784),
    [anon_sym_uint192] = ACTIONS(784),
    [anon_sym_uint200] = ACTIONS(784),
    [anon_sym_uint208] = ACTIONS(784),
    [anon_sym_uint216] = ACTIONS(784),
    [anon_sym_uint224] = ACTIONS(784),
    [anon_sym_uint232] = ACTIONS(784),
    [anon_sym_uint240] = ACTIONS(784),
    [anon_sym_uint248] = ACTIONS(784),
    [anon_sym_uint256] = ACTIONS(784),
    [anon_sym_bytes] = ACTIONS(784),
    [anon_sym_bytes1] = ACTIONS(784),
    [anon_sym_bytes2] = ACTIONS(784),
    [anon_sym_bytes3] = ACTIONS(784),
    [anon_sym_bytes4] = ACTIONS(784),
    [anon_sym_bytes5] = ACTIONS(784),
    [anon_sym_bytes6] = ACTIONS(784),
    [anon_sym_bytes7] = ACTIONS(784),
    [anon_sym_bytes8] = ACTIONS(784),
    [anon_sym_bytes9] = ACTIONS(784),
    [anon_sym_bytes10] = ACTIONS(784),
    [anon_sym_bytes11] = ACTIONS(784),
    [anon_sym_bytes12] = ACTIONS(784),
    [anon_sym_bytes13] = ACTIONS(784),
    [anon_sym_bytes14] = ACTIONS(784),
    [anon_sym_bytes15] = ACTIONS(784),
    [anon_sym_bytes16] = ACTIONS(784),
    [anon_sym_bytes17] = ACTIONS(784),
    [anon_sym_bytes18] = ACTIONS(784),
    [anon_sym_bytes19] = ACTIONS(784),
    [anon_sym_bytes20] = ACTIONS(784),
    [anon_sym_bytes21] = ACTIONS(784),
    [anon_sym_bytes22] = ACTIONS(784),
    [anon_sym_bytes23] = ACTIONS(784),
    [anon_sym_bytes24] = ACTIONS(784),
    [anon_sym_bytes25] = ACTIONS(784),
    [anon_sym_bytes26] = ACTIONS(784),
    [anon_sym_bytes27] = ACTIONS(784),
    [anon_sym_bytes28] = ACTIONS(784),
    [anon_sym_bytes29] = ACTIONS(784),
    [anon_sym_bytes30] = ACTIONS(784),
    [anon_sym_bytes31] = ACTIONS(784),
    [anon_sym_bytes32] = ACTIONS(784),
    [anon_sym_fixed] = ACTIONS(784),
    [aux_sym__fixed_token1] = ACTIONS(784),
    [anon_sym_ufixed] = ACTIONS(784),
    [aux_sym__ufixed_token1] = ACTIONS(784),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(200)] = {
    [ts_builtin_sym_end] = ACTIONS(786),
    [sym_identifier] = ACTIONS(788),
    [anon_sym_pragma] = ACTIONS(788),
    [anon_sym_import] = ACTIONS(788),
    [anon_sym_type] = ACTIONS(788),
    [anon_sym_abstract] = ACTIONS(788),
    [anon_sym_contract] = ACTIONS(788),
    [anon_sym_error] = ACTIONS(788),
    [anon_sym_interface] = ACTIONS(788),
    [anon_sym_library] = ACTIONS(788),
    [anon_sym_struct] = ACTIONS(788),
    [anon_sym_enum] = ACTIONS(788),
    [anon_sym_event] = ACTIONS(788),
    [anon_sym_using] = ACTIONS(788),
    [anon_sym_function] = ACTIONS(788),
    [anon_sym_byte] = ACTIONS(788),
    [anon_sym_address] = ACTIONS(788),
    [anon_sym_var] = ACTIONS(788),
    [anon_sym_mapping] = ACTIONS(788),
    [anon_sym_bool] = ACTIONS(788),
    [anon_sym_string] = ACTIONS(788),
    [anon_sym_int] = ACTIONS(788),
    [anon_sym_int8] = ACTIONS(788),
    [anon_sym_int16] = ACTIONS(788),
    [anon_sym_int24] = ACTIONS(788),
    [anon_sym_int32] = ACTIONS(788),
    [anon_sym_int40] = ACTIONS(788),
    [anon_sym_int48] = ACTIONS(788),
    [anon_sym_int56] = ACTIONS(788),
    [anon_sym_int64] = ACTIONS(788),
    [anon_sym_int72] = ACTIONS(788),
    [anon_sym_int80] = ACTIONS(788),
    [anon_sym_int88] = ACTIONS(788),
    [anon_sym_int96] = ACTIONS(788),
    [anon_sym_int104] = ACTIONS(788),
    [anon_sym_int112] = ACTIONS(788),
    [anon_sym_int120] = ACTIONS(788),
    [anon_sym_int128] = ACTIONS(788),
    [anon_sym_int136] = ACTIONS(788),
    [anon_sym_int144] = ACTIONS(788),
    [anon_sym_int152] = ACTIONS(788),
    [anon_sym_int160] = ACTIONS(788),
    [anon_sym_int168] = ACTIONS(788),
    [anon_sym_int176] = ACTIONS(788),
    [anon_sym_int184] = ACTIONS(788),
    [anon_sym_int192] = ACTIONS(788),
    [anon_sym_int200] = ACTIONS(788),
    [anon_sym_int208] = ACTIONS(788),
    [anon_sym_int216] = ACTIONS(788),
    [anon_sym_int224] = ACTIONS(788),
    [anon_sym_int232] = ACTIONS(788),
    [anon_sym_int240] = ACTIONS(788),
    [anon_sym_int248] = ACTIONS(788),
    [anon_sym_int256] = ACTIONS(788),
    [anon_sym_uint] = ACTIONS(788),
    [anon_sym_uint8] = ACTIONS(788),
    [anon_sym_uint16] = ACTIONS(788),
    [anon_sym_uint24] = ACTIONS(788),
    [anon_sym_uint32] = ACTIONS(788),
    [anon_sym_uint40] = ACTIONS(788),
    [anon_sym_uint48] = ACTIONS(788),
    [anon_sym_uint56] = ACTIONS(788),
    [anon_sym_uint64] = ACTIONS(788),
    [anon_sym_uint72] = ACTIONS(788),
    [anon_sym_uint80] = ACTIONS(788),
    [anon_sym_uint88] = ACTIONS(788),
    [anon_sym_uint96] = ACTIONS(788),
    [anon_sym_uint104] = ACTIONS(788),
    [anon_sym_uint112] = ACTIONS(788),
    [anon_sym_uint120] = ACTIONS(788),
    [anon_sym_uint128] = ACTIONS(788),
    [anon_sym_uint136] = ACTIONS(788),
    [anon_sym_uint144] = ACTIONS(788),
    [anon_sym_uint152] = ACTIONS(788),
    [anon_sym_uint160] = ACTIONS(788),
    [anon_sym_uint168] = ACTIONS(788),
    [anon_sym_uint176] = ACTIONS(788),
    [anon_sym_uint184] = ACTIONS(788),
    [anon_sym_uint192] = ACTIONS(788),
    [anon_sym_uint200] = ACTIONS(788),
    [anon_sym_uint208] = ACTIONS(788),
    [anon_sym_uint216] = ACTIONS(788),
    [anon_sym_uint224] = ACTIONS(788),
    [anon_sym_uint232] = ACTIONS(788),
    [anon_sym_uint240] = ACTIONS(788),
    [anon_sym_uint248] = ACTIONS(788),
    [anon_sym_uint256] = ACTIONS(788),
    [anon_sym_bytes] = ACTIONS(788),
    [anon_sym_bytes1] = ACTIONS(788),
    [anon_sym_bytes2] = ACTIONS(788),
    [anon_sym_bytes3] = ACTIONS(788),
    [anon_sym_bytes4] = ACTIONS(788),
    [anon_sym_bytes5] = ACTIONS(788),
    [anon_sym_bytes6] = ACTIONS(788),
    [anon_sym_bytes7] = ACTIONS(788),
    [anon_sym_bytes8] = ACTIONS(788),
    [anon_sym_bytes9] = ACTIONS(788),
    [anon_sym_bytes10] = ACTIONS(788),
    [anon_sym_bytes11] = ACTIONS(788),
    [anon_sym_bytes12] = ACTIONS(788),
    [anon_sym_bytes13] = ACTIONS(788),
    [anon_sym_bytes14] = ACTIONS(788),
    [anon_sym_bytes15] = ACTIONS(788),
    [anon_sym_bytes16] = ACTIONS(788),
    [anon_sym_bytes17] = ACTIONS(788),
    [anon_sym_bytes18] = ACTIONS(788),
    [anon_sym_bytes19] = ACTIONS(788),
    [anon_sym_bytes20] = ACTIONS(788),
    [anon_sym_bytes21] = ACTIONS(788),
    [anon_sym_bytes22] = ACTIONS(788),
    [anon_sym_bytes23] = ACTIONS(788),
    [anon_sym_bytes24] = ACTIONS(788),
    [anon_sym_bytes25] = ACTIONS(788),
    [anon_sym_bytes26] = ACTIONS(788),
    [anon_sym_bytes27] = ACTIONS(788),
    [anon_sym_bytes28] = ACTIONS(788),
    [anon_sym_bytes29] = ACTIONS(788),
    [anon_sym_bytes30] = ACTIONS(788),
    [anon_sym_bytes31] = ACTIONS(788),
    [anon_sym_bytes32] = ACTIONS(788),
    [anon_sym_fixed] = ACTIONS(788),
    [aux_sym__fixed_token1] = ACTIONS(788),
    [anon_sym_ufixed] = ACTIONS(788),
    [aux_sym__ufixed_token1] = ACTIONS(788),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(201)] = {
    [ts_builtin_sym_end] = ACTIONS(790),
    [sym_identifier] = ACTIONS(792),
    [anon_sym_pragma] = ACTIONS(792),
    [anon_sym_import] = ACTIONS(792),
    [anon_sym_type] = ACTIONS(792),
    [anon_sym_abstract] = ACTIONS(792),
    [anon_sym_contract] = ACTIONS(792),
    [anon_sym_error] = ACTIONS(792),
    [anon_sym_interface] = ACTIONS(792),
    [anon_sym_library] = ACTIONS(792),
    [anon_sym_struct] = ACTIONS(792),
    [anon_sym_enum] = ACTIONS(792),
    [anon_sym_event] = ACTIONS(792),
    [anon_sym_using] = ACTIONS(792),
    [anon_sym_function] = ACTIONS(792),
    [anon_sym_byte] = ACTIONS(792),
    [anon_sym_address] = ACTIONS(792),
    [anon_sym_var] = ACTIONS(792),
    [anon_sym_mapping] = ACTIONS(792),
    [anon_sym_bool] = ACTIONS(792),
    [anon_sym_string] = ACTIONS(792),
    [anon_sym_int] = ACTIONS(792),
    [anon_sym_int8] = ACTIONS(792),
    [anon_sym_int16] = ACTIONS(792),
    [anon_sym_int24] = ACTIONS(792),
    [anon_sym_int32] = ACTIONS(792),
    [anon_sym_int40] = ACTIONS(792),
    [anon_sym_int48] = ACTIONS(792),
    [anon_sym_int56] = ACTIONS(792),
    [anon_sym_int64] = ACTIONS(792),
    [anon_sym_int72] = ACTIONS(792),
    [anon_sym_int80] = ACTIONS(792),
    [anon_sym_int88] = ACTIONS(792),
    [anon_sym_int96] = ACTIONS(792),
    [anon_sym_int104] = ACTIONS(792),
    [anon_sym_int112] = ACTIONS(792),
    [anon_sym_int120] = ACTIONS(792),
    [anon_sym_int128] = ACTIONS(792),
    [anon_sym_int136] = ACTIONS(792),
    [anon_sym_int144] = ACTIONS(792),
    [anon_sym_int152] = ACTIONS(792),
    [anon_sym_int160] = ACTIONS(792),
    [anon_sym_int168] = ACTIONS(792),
    [anon_sym_int176] = ACTIONS(792),
    [anon_sym_int184] = ACTIONS(792),
    [anon_sym_int192] = ACTIONS(792),
    [anon_sym_int200] = ACTIONS(792),
    [anon_sym_int208] = ACTIONS(792),
    [anon_sym_int216] = ACTIONS(792),
    [anon_sym_int224] = ACTIONS(792),
    [anon_sym_int232] = ACTIONS(792),
    [anon_sym_int240] = ACTIONS(792),
    [anon_sym_int248] = ACTIONS(792),
    [anon_sym_int256] = ACTIONS(792),
    [anon_sym_uint] = ACTIONS(792),
    [anon_sym_uint8] = ACTIONS(792),
    [anon_sym_uint16] = ACTIONS(792),
    [anon_sym_uint24] = ACTIONS(792),
    [anon_sym_uint32] = ACTIONS(792),
    [anon_sym_uint40] = ACTIONS(792),
    [anon_sym_uint48] = ACTIONS(792),
    [anon_sym_uint56] = ACTIONS(792),
    [anon_sym_uint64] = ACTIONS(792),
    [anon_sym_uint72] = ACTIONS(792),
    [anon_sym_uint80] = ACTIONS(792),
    [anon_sym_uint88] = ACTIONS(792),
    [anon_sym_uint96] = ACTIONS(792),
    [anon_sym_uint104] = ACTIONS(792),
    [anon_sym_uint112] = ACTIONS(792),
    [anon_sym_uint120] = ACTIONS(792),
    [anon_sym_uint128] = ACTIONS(792),
    [anon_sym_uint136] = ACTIONS(792),
    [anon_sym_uint144] = ACTIONS(792),
    [anon_sym_uint152] = ACTIONS(792),
    [anon_sym_uint160] = ACTIONS(792),
    [anon_sym_uint168] = ACTIONS(792),
    [anon_sym_uint176] = ACTIONS(792),
    [anon_sym_uint184] = ACTIONS(792),
    [anon_sym_uint192] = ACTIONS(792),
    [anon_sym_uint200] = ACTIONS(792),
    [anon_sym_uint208] = ACTIONS(792),
    [anon_sym_uint216] = ACTIONS(792),
    [anon_sym_uint224] = ACTIONS(792),
    [anon_sym_uint232] = ACTIONS(792),
    [anon_sym_uint240] = ACTIONS(792),
    [anon_sym_uint248] = ACTIONS(792),
    [anon_sym_uint256] = ACTIONS(792),
    [anon_sym_bytes] = ACTIONS(792),
    [anon_sym_bytes1] = ACTIONS(792),
    [anon_sym_bytes2] = ACTIONS(792),
    [anon_sym_bytes3] = ACTIONS(792),
    [anon_sym_bytes4] = ACTIONS(792),
    [anon_sym_bytes5] = ACTIONS(792),
    [anon_sym_bytes6] = ACTIONS(792),
    [anon_sym_bytes7] = ACTIONS(792),
    [anon_sym_bytes8] = ACTIONS(792),
    [anon_sym_bytes9] = ACTIONS(792),
    [anon_sym_bytes10] = ACTIONS(792),
    [anon_sym_bytes11] = ACTIONS(792),
    [anon_sym_bytes12] = ACTIONS(792),
    [anon_sym_bytes13] = ACTIONS(792),
    [anon_sym_bytes14] = ACTIONS(792),
    [anon_sym_bytes15] = ACTIONS(792),
    [anon_sym_bytes16] = ACTIONS(792),
    [anon_sym_bytes17] = ACTIONS(792),
    [anon_sym_bytes18] = ACTIONS(792),
    [anon_sym_bytes19] = ACTIONS(792),
    [anon_sym_bytes20] = ACTIONS(792),
    [anon_sym_bytes21] = ACTIONS(792),
    [anon_sym_bytes22] = ACTIONS(792),
    [anon_sym_bytes23] = ACTIONS(792),
    [anon_sym_bytes24] = ACTIONS(792),
    [anon_sym_bytes25] = ACTIONS(792),
    [anon_sym_bytes26] = ACTIONS(792),
    [anon_sym_bytes27] = ACTIONS(792),
    [anon_sym_bytes28] = ACTIONS(792),
    [anon_sym_bytes29] = ACTIONS(792),
    [anon_sym_bytes30] = ACTIONS(792),
    [anon_sym_bytes31] = ACTIONS(792),
    [anon_sym_bytes32] = ACTIONS(792),
    [anon_sym_fixed] = ACTIONS(792),
    [aux_sym__fixed_token1] = ACTIONS(792),
    [anon_sym_ufixed] = ACTIONS(792),
    [aux_sym__ufixed_token1] = ACTIONS(792),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(202)] = {
    [ts_builtin_sym_end] = ACTIONS(794),
    [sym_identifier] = ACTIONS(796),
    [anon_sym_pragma] = ACTIONS(796),
    [anon_sym_import] = ACTIONS(796),
    [anon_sym_type] = ACTIONS(796),
    [anon_sym_abstract] = ACTIONS(796),
    [anon_sym_contract] = ACTIONS(796),
    [anon_sym_error] = ACTIONS(796),
    [anon_sym_interface] = ACTIONS(796),
    [anon_sym_library] = ACTIONS(796),
    [anon_sym_struct] = ACTIONS(796),
    [anon_sym_enum] = ACTIONS(796),
    [anon_sym_event] = ACTIONS(796),
    [anon_sym_using] = ACTIONS(796),
    [anon_sym_function] = ACTIONS(796),
    [anon_sym_byte] = ACTIONS(796),
    [anon_sym_address] = ACTIONS(796),
    [anon_sym_var] = ACTIONS(796),
    [anon_sym_mapping] = ACTIONS(796),
    [anon_sym_bool] = ACTIONS(796),
    [anon_sym_string] = ACTIONS(796),
    [anon_sym_int] = ACTIONS(796),
    [anon_sym_int8] = ACTIONS(796),
    [anon_sym_int16] = ACTIONS(796),
    [anon_sym_int24] = ACTIONS(796),
    [anon_sym_int32] = ACTIONS(796),
    [anon_sym_int40] = ACTIONS(796),
    [anon_sym_int48] = ACTIONS(796),
    [anon_sym_int56] = ACTIONS(796),
    [anon_sym_int64] = ACTIONS(796),
    [anon_sym_int72] = ACTIONS(796),
    [anon_sym_int80] = ACTIONS(796),
    [anon_sym_int88] = ACTIONS(796),
    [anon_sym_int96] = ACTIONS(796),
    [anon_sym_int104] = ACTIONS(796),
    [anon_sym_int112] = ACTIONS(796),
    [anon_sym_int120] = ACTIONS(796),
    [anon_sym_int128] = ACTIONS(796),
    [anon_sym_int136] = ACTIONS(796),
    [anon_sym_int144] = ACTIONS(796),
    [anon_sym_int152] = ACTIONS(796),
    [anon_sym_int160] = ACTIONS(796),
    [anon_sym_int168] = ACTIONS(796),
    [anon_sym_int176] = ACTIONS(796),
    [anon_sym_int184] = ACTIONS(796),
    [anon_sym_int192] = ACTIONS(796),
    [anon_sym_int200] = ACTIONS(796),
    [anon_sym_int208] = ACTIONS(796),
    [anon_sym_int216] = ACTIONS(796),
    [anon_sym_int224] = ACTIONS(796),
    [anon_sym_int232] = ACTIONS(796),
    [anon_sym_int240] = ACTIONS(796),
    [anon_sym_int248] = ACTIONS(796),
    [anon_sym_int256] = ACTIONS(796),
    [anon_sym_uint] = ACTIONS(796),
    [anon_sym_uint8] = ACTIONS(796),
    [anon_sym_uint16] = ACTIONS(796),
    [anon_sym_uint24] = ACTIONS(796),
    [anon_sym_uint32] = ACTIONS(796),
    [anon_sym_uint40] = ACTIONS(796),
    [anon_sym_uint48] = ACTIONS(796),
    [anon_sym_uint56] = ACTIONS(796),
    [anon_sym_uint64] = ACTIONS(796),
    [anon_sym_uint72] = ACTIONS(796),
    [anon_sym_uint80] = ACTIONS(796),
    [anon_sym_uint88] = ACTIONS(796),
    [anon_sym_uint96] = ACTIONS(796),
    [anon_sym_uint104] = ACTIONS(796),
    [anon_sym_uint112] = ACTIONS(796),
    [anon_sym_uint120] = ACTIONS(796),
    [anon_sym_uint128] = ACTIONS(796),
    [anon_sym_uint136] = ACTIONS(796),
    [anon_sym_uint144] = ACTIONS(796),
    [anon_sym_uint152] = ACTIONS(796),
    [anon_sym_uint160] = ACTIONS(796),
    [anon_sym_uint168] = ACTIONS(796),
    [anon_sym_uint176] = ACTIONS(796),
    [anon_sym_uint184] = ACTIONS(796),
    [anon_sym_uint192] = ACTIONS(796),
    [anon_sym_uint200] = ACTIONS(796),
    [anon_sym_uint208] = ACTIONS(796),
    [anon_sym_uint216] = ACTIONS(796),
    [anon_sym_uint224] = ACTIONS(796),
    [anon_sym_uint232] = ACTIONS(796),
    [anon_sym_uint240] = ACTIONS(796),
    [anon_sym_uint248] = ACTIONS(796),
    [anon_sym_uint256] = ACTIONS(796),
    [anon_sym_bytes] = ACTIONS(796),
    [anon_sym_bytes1] = ACTIONS(796),
    [anon_sym_bytes2] = ACTIONS(796),
    [anon_sym_bytes3] = ACTIONS(796),
    [anon_sym_bytes4] = ACTIONS(796),
    [anon_sym_bytes5] = ACTIONS(796),
    [anon_sym_bytes6] = ACTIONS(796),
    [anon_sym_bytes7] = ACTIONS(796),
    [anon_sym_bytes8] = ACTIONS(796),
    [anon_sym_bytes9] = ACTIONS(796),
    [anon_sym_bytes10] = ACTIONS(796),
    [anon_sym_bytes11] = ACTIONS(796),
    [anon_sym_bytes12] = ACTIONS(796),
    [anon_sym_bytes13] = ACTIONS(796),
    [anon_sym_bytes14] = ACTIONS(796),
    [anon_sym_bytes15] = ACTIONS(796),
    [anon_sym_bytes16] = ACTIONS(796),
    [anon_sym_bytes17] = ACTIONS(796),
    [anon_sym_bytes18] = ACTIONS(796),
    [anon_sym_bytes19] = ACTIONS(796),
    [anon_sym_bytes20] = ACTIONS(796),
    [anon_sym_bytes21] = ACTIONS(796),
    [anon_sym_bytes22] = ACTIONS(796),
    [anon_sym_bytes23] = ACTIONS(796),
    [anon_sym_bytes24] = ACTIONS(796),
    [anon_sym_bytes25] = ACTIONS(796),
    [anon_sym_bytes26] = ACTIONS(796),
    [anon_sym_bytes27] = ACTIONS(796),
    [anon_sym_bytes28] = ACTIONS(796),
    [anon_sym_bytes29] = ACTIONS(796),
    [anon_sym_bytes30] = ACTIONS(796),
    [anon_sym_bytes31] = ACTIONS(796),
    [anon_sym_bytes32] = ACTIONS(796),
    [anon_sym_fixed] = ACTIONS(796),
    [aux_sym__fixed_token1] = ACTIONS(796),
    [anon_sym_ufixed] = ACTIONS(796),
    [aux_sym__ufixed_token1] = ACTIONS(796),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(203)] = {
    [ts_builtin_sym_end] = ACTIONS(798),
    [sym_identifier] = ACTIONS(800),
    [anon_sym_pragma] = ACTIONS(800),
    [anon_sym_import] = ACTIONS(800),
    [anon_sym_type] = ACTIONS(800),
    [anon_sym_abstract] = ACTIONS(800),
    [anon_sym_contract] = ACTIONS(800),
    [anon_sym_error] = ACTIONS(800),
    [anon_sym_interface] = ACTIONS(800),
    [anon_sym_library] = ACTIONS(800),
    [anon_sym_struct] = ACTIONS(800),
    [anon_sym_enum] = ACTIONS(800),
    [anon_sym_event] = ACTIONS(800),
    [anon_sym_using] = ACTIONS(800),
    [anon_sym_function] = ACTIONS(800),
    [anon_sym_byte] = ACTIONS(800),
    [anon_sym_address] = ACTIONS(800),
    [anon_sym_var] = ACTIONS(800),
    [anon_sym_mapping] = ACTIONS(800),
    [anon_sym_bool] = ACTIONS(800),
    [anon_sym_string] = ACTIONS(800),
    [anon_sym_int] = ACTIONS(800),
    [anon_sym_int8] = ACTIONS(800),
    [anon_sym_int16] = ACTIONS(800),
    [anon_sym_int24] = ACTIONS(800),
    [anon_sym_int32] = ACTIONS(800),
    [anon_sym_int40] = ACTIONS(800),
    [anon_sym_int48] = ACTIONS(800),
    [anon_sym_int56] = ACTIONS(800),
    [anon_sym_int64] = ACTIONS(800),
    [anon_sym_int72] = ACTIONS(800),
    [anon_sym_int80] = ACTIONS(800),
    [anon_sym_int88] = ACTIONS(800),
    [anon_sym_int96] = ACTIONS(800),
    [anon_sym_int104] = ACTIONS(800),
    [anon_sym_int112] = ACTIONS(800),
    [anon_sym_int120] = ACTIONS(800),
    [anon_sym_int128] = ACTIONS(800),
    [anon_sym_int136] = ACTIONS(800),
    [anon_sym_int144] = ACTIONS(800),
    [anon_sym_int152] = ACTIONS(800),
    [anon_sym_int160] = ACTIONS(800),
    [anon_sym_int168] = ACTIONS(800),
    [anon_sym_int176] = ACTIONS(800),
    [anon_sym_int184] = ACTIONS(800),
    [anon_sym_int192] = ACTIONS(800),
    [anon_sym_int200] = ACTIONS(800),
    [anon_sym_int208] = ACTIONS(800),
    [anon_sym_int216] = ACTIONS(800),
    [anon_sym_int224] = ACTIONS(800),
    [anon_sym_int232] = ACTIONS(800),
    [anon_sym_int240] = ACTIONS(800),
    [anon_sym_int248] = ACTIONS(800),
    [anon_sym_int256] = ACTIONS(800),
    [anon_sym_uint] = ACTIONS(800),
    [anon_sym_uint8] = ACTIONS(800),
    [anon_sym_uint16] = ACTIONS(800),
    [anon_sym_uint24] = ACTIONS(800),
    [anon_sym_uint32] = ACTIONS(800),
    [anon_sym_uint40] = ACTIONS(800),
    [anon_sym_uint48] = ACTIONS(800),
    [anon_sym_uint56] = ACTIONS(800),
    [anon_sym_uint64] = ACTIONS(800),
    [anon_sym_uint72] = ACTIONS(800),
    [anon_sym_uint80] = ACTIONS(800),
    [anon_sym_uint88] = ACTIONS(800),
    [anon_sym_uint96] = ACTIONS(800),
    [anon_sym_uint104] = ACTIONS(800),
    [anon_sym_uint112] = ACTIONS(800),
    [anon_sym_uint120] = ACTIONS(800),
    [anon_sym_uint128] = ACTIONS(800),
    [anon_sym_uint136] = ACTIONS(800),
    [anon_sym_uint144] = ACTIONS(800),
    [anon_sym_uint152] = ACTIONS(800),
    [anon_sym_uint160] = ACTIONS(800),
    [anon_sym_uint168] = ACTIONS(800),
    [anon_sym_uint176] = ACTIONS(800),
    [anon_sym_uint184] = ACTIONS(800),
    [anon_sym_uint192] = ACTIONS(800),
    [anon_sym_uint200] = ACTIONS(800),
    [anon_sym_uint208] = ACTIONS(800),
    [anon_sym_uint216] = ACTIONS(800),
    [anon_sym_uint224] = ACTIONS(800),
    [anon_sym_uint232] = ACTIONS(800),
    [anon_sym_uint240] = ACTIONS(800),
    [anon_sym_uint248] = ACTIONS(800),
    [anon_sym_uint256] = ACTIONS(800),
    [anon_sym_bytes] = ACTIONS(800),
    [anon_sym_bytes1] = ACTIONS(800),
    [anon_sym_bytes2] = ACTIONS(800),
    [anon_sym_bytes3] = ACTIONS(800),
    [anon_sym_bytes4] = ACTIONS(800),
    [anon_sym_bytes5] = ACTIONS(800),
    [anon_sym_bytes6] = ACTIONS(800),
    [anon_sym_bytes7] = ACTIONS(800),
    [anon_sym_bytes8] = ACTIONS(800),
    [anon_sym_bytes9] = ACTIONS(800),
    [anon_sym_bytes10] = ACTIONS(800),
    [anon_sym_bytes11] = ACTIONS(800),
    [anon_sym_bytes12] = ACTIONS(800),
    [anon_sym_bytes13] = ACTIONS(800),
    [anon_sym_bytes14] = ACTIONS(800),
    [anon_sym_bytes15] = ACTIONS(800),
    [anon_sym_bytes16] = ACTIONS(800),
    [anon_sym_bytes17] = ACTIONS(800),
    [anon_sym_bytes18] = ACTIONS(800),
    [anon_sym_bytes19] = ACTIONS(800),
    [anon_sym_bytes20] = ACTIONS(800),
    [anon_sym_bytes21] = ACTIONS(800),
    [anon_sym_bytes22] = ACTIONS(800),
    [anon_sym_bytes23] = ACTIONS(800),
    [anon_sym_bytes24] = ACTIONS(800),
    [anon_sym_bytes25] = ACTIONS(800),
    [anon_sym_bytes26] = ACTIONS(800),
    [anon_sym_bytes27] = ACTIONS(800),
    [anon_sym_bytes28] = ACTIONS(800),
    [anon_sym_bytes29] = ACTIONS(800),
    [anon_sym_bytes30] = ACTIONS(800),
    [anon_sym_bytes31] = ACTIONS(800),
    [anon_sym_bytes32] = ACTIONS(800),
    [anon_sym_fixed] = ACTIONS(800),
    [aux_sym__fixed_token1] = ACTIONS(800),
    [anon_sym_ufixed] = ACTIONS(800),
    [aux_sym__ufixed_token1] = ACTIONS(800),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(204)] = {
    [ts_builtin_sym_end] = ACTIONS(802),
    [sym_identifier] = ACTIONS(804),
    [anon_sym_pragma] = ACTIONS(804),
    [anon_sym_import] = ACTIONS(804),
    [anon_sym_type] = ACTIONS(804),
    [anon_sym_abstract] = ACTIONS(804),
    [anon_sym_contract] = ACTIONS(804),
    [anon_sym_error] = ACTIONS(804),
    [anon_sym_interface] = ACTIONS(804),
    [anon_sym_library] = ACTIONS(804),
    [anon_sym_struct] = ACTIONS(804),
    [anon_sym_enum] = ACTIONS(804),
    [anon_sym_event] = ACTIONS(804),
    [anon_sym_using] = ACTIONS(804),
    [anon_sym_function] = ACTIONS(804),
    [anon_sym_byte] = ACTIONS(804),
    [anon_sym_address] = ACTIONS(804),
    [anon_sym_var] = ACTIONS(804),
    [anon_sym_mapping] = ACTIONS(804),
    [anon_sym_bool] = ACTIONS(804),
    [anon_sym_string] = ACTIONS(804),
    [anon_sym_int] = ACTIONS(804),
    [anon_sym_int8] = ACTIONS(804),
    [anon_sym_int16] = ACTIONS(804),
    [anon_sym_int24] = ACTIONS(804),
    [anon_sym_int32] = ACTIONS(804),
    [anon_sym_int40] = ACTIONS(804),
    [anon_sym_int48] = ACTIONS(804),
    [anon_sym_int56] = ACTIONS(804),
    [anon_sym_int64] = ACTIONS(804),
    [anon_sym_int72] = ACTIONS(804),
    [anon_sym_int80] = ACTIONS(804),
    [anon_sym_int88] = ACTIONS(804),
    [anon_sym_int96] = ACTIONS(804),
    [anon_sym_int104] = ACTIONS(804),
    [anon_sym_int112] = ACTIONS(804),
    [anon_sym_int120] = ACTIONS(804),
    [anon_sym_int128] = ACTIONS(804),
    [anon_sym_int136] = ACTIONS(804),
    [anon_sym_int144] = ACTIONS(804),
    [anon_sym_int152] = ACTIONS(804),
    [anon_sym_int160] = ACTIONS(804),
    [anon_sym_int168] = ACTIONS(804),
    [anon_sym_int176] = ACTIONS(804),
    [anon_sym_int184] = ACTIONS(804),
    [anon_sym_int192] = ACTIONS(804),
    [anon_sym_int200] = ACTIONS(804),
    [anon_sym_int208] = ACTIONS(804),
    [anon_sym_int216] = ACTIONS(804),
    [anon_sym_int224] = ACTIONS(804),
    [anon_sym_int232] = ACTIONS(804),
    [anon_sym_int240] = ACTIONS(804),
    [anon_sym_int248] = ACTIONS(804),
    [anon_sym_int256] = ACTIONS(804),
    [anon_sym_uint] = ACTIONS(804),
    [anon_sym_uint8] = ACTIONS(804),
    [anon_sym_uint16] = ACTIONS(804),
    [anon_sym_uint24] = ACTIONS(804),
    [anon_sym_uint32] = ACTIONS(804),
    [anon_sym_uint40] = ACTIONS(804),
    [anon_sym_uint48] = ACTIONS(804),
    [anon_sym_uint56] = ACTIONS(804),
    [anon_sym_uint64] = ACTIONS(804),
    [anon_sym_uint72] = ACTIONS(804),
    [anon_sym_uint80] = ACTIONS(804),
    [anon_sym_uint88] = ACTIONS(804),
    [anon_sym_uint96] = ACTIONS(804),
    [anon_sym_uint104] = ACTIONS(804),
    [anon_sym_uint112] = ACTIONS(804),
    [anon_sym_uint120] = ACTIONS(804),
    [anon_sym_uint128] = ACTIONS(804),
    [anon_sym_uint136] = ACTIONS(804),
    [anon_sym_uint144] = ACTIONS(804),
    [anon_sym_uint152] = ACTIONS(804),
    [anon_sym_uint160] = ACTIONS(804),
    [anon_sym_uint168] = ACTIONS(804),
    [anon_sym_uint176] = ACTIONS(804),
    [anon_sym_uint184] = ACTIONS(804),
    [anon_sym_uint192] = ACTIONS(804),
    [anon_sym_uint200] = ACTIONS(804),
    [anon_sym_uint208] = ACTIONS(804),
    [anon_sym_uint216] = ACTIONS(804),
    [anon_sym_uint224] = ACTIONS(804),
    [anon_sym_uint232] = ACTIONS(804),
    [anon_sym_uint240] = ACTIONS(804),
    [anon_sym_uint248] = ACTIONS(804),
    [anon_sym_uint256] = ACTIONS(804),
    [anon_sym_bytes] = ACTIONS(804),
    [anon_sym_bytes1] = ACTIONS(804),
    [anon_sym_bytes2] = ACTIONS(804),
    [anon_sym_bytes3] = ACTIONS(804),
    [anon_sym_bytes4] = ACTIONS(804),
    [anon_sym_bytes5] = ACTIONS(804),
    [anon_sym_bytes6] = ACTIONS(804),
    [anon_sym_bytes7] = ACTIONS(804),
    [anon_sym_bytes8] = ACTIONS(804),
    [anon_sym_bytes9] = ACTIONS(804),
    [anon_sym_bytes10] = ACTIONS(804),
    [anon_sym_bytes11] = ACTIONS(804),
    [anon_sym_bytes12] = ACTIONS(804),
    [anon_sym_bytes13] = ACTIONS(804),
    [anon_sym_bytes14] = ACTIONS(804),
    [anon_sym_bytes15] = ACTIONS(804),
    [anon_sym_bytes16] = ACTIONS(804),
    [anon_sym_bytes17] = ACTIONS(804),
    [anon_sym_bytes18] = ACTIONS(804),
    [anon_sym_bytes19] = ACTIONS(804),
    [anon_sym_bytes20] = ACTIONS(804),
    [anon_sym_bytes21] = ACTIONS(804),
    [anon_sym_bytes22] = ACTIONS(804),
    [anon_sym_bytes23] = ACTIONS(804),
    [anon_sym_bytes24] = ACTIONS(804),
    [anon_sym_bytes25] = ACTIONS(804),
    [anon_sym_bytes26] = ACTIONS(804),
    [anon_sym_bytes27] = ACTIONS(804),
    [anon_sym_bytes28] = ACTIONS(804),
    [anon_sym_bytes29] = ACTIONS(804),
    [anon_sym_bytes30] = ACTIONS(804),
    [anon_sym_bytes31] = ACTIONS(804),
    [anon_sym_bytes32] = ACTIONS(804),
    [anon_sym_fixed] = ACTIONS(804),
    [aux_sym__fixed_token1] = ACTIONS(804),
    [anon_sym_ufixed] = ACTIONS(804),
    [aux_sym__ufixed_token1] = ACTIONS(804),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(205)] = {
    [ts_builtin_sym_end] = ACTIONS(806),
    [sym_identifier] = ACTIONS(808),
    [anon_sym_pragma] = ACTIONS(808),
    [anon_sym_import] = ACTIONS(808),
    [anon_sym_type] = ACTIONS(808),
    [anon_sym_abstract] = ACTIONS(808),
    [anon_sym_contract] = ACTIONS(808),
    [anon_sym_error] = ACTIONS(808),
    [anon_sym_interface] = ACTIONS(808),
    [anon_sym_library] = ACTIONS(808),
    [anon_sym_struct] = ACTIONS(808),
    [anon_sym_enum] = ACTIONS(808),
    [anon_sym_event] = ACTIONS(808),
    [anon_sym_using] = ACTIONS(808),
    [anon_sym_function] = ACTIONS(808),
    [anon_sym_byte] = ACTIONS(808),
    [anon_sym_address] = ACTIONS(808),
    [anon_sym_var] = ACTIONS(808),
    [anon_sym_mapping] = ACTIONS(808),
    [anon_sym_bool] = ACTIONS(808),
    [anon_sym_string] = ACTIONS(808),
    [anon_sym_int] = ACTIONS(808),
    [anon_sym_int8] = ACTIONS(808),
    [anon_sym_int16] = ACTIONS(808),
    [anon_sym_int24] = ACTIONS(808),
    [anon_sym_int32] = ACTIONS(808),
    [anon_sym_int40] = ACTIONS(808),
    [anon_sym_int48] = ACTIONS(808),
    [anon_sym_int56] = ACTIONS(808),
    [anon_sym_int64] = ACTIONS(808),
    [anon_sym_int72] = ACTIONS(808),
    [anon_sym_int80] = ACTIONS(808),
    [anon_sym_int88] = ACTIONS(808),
    [anon_sym_int96] = ACTIONS(808),
    [anon_sym_int104] = ACTIONS(808),
    [anon_sym_int112] = ACTIONS(808),
    [anon_sym_int120] = ACTIONS(808),
    [anon_sym_int128] = ACTIONS(808),
    [anon_sym_int136] = ACTIONS(808),
    [anon_sym_int144] = ACTIONS(808),
    [anon_sym_int152] = ACTIONS(808),
    [anon_sym_int160] = ACTIONS(808),
    [anon_sym_int168] = ACTIONS(808),
    [anon_sym_int176] = ACTIONS(808),
    [anon_sym_int184] = ACTIONS(808),
    [anon_sym_int192] = ACTIONS(808),
    [anon_sym_int200] = ACTIONS(808),
    [anon_sym_int208] = ACTIONS(808),
    [anon_sym_int216] = ACTIONS(808),
    [anon_sym_int224] = ACTIONS(808),
    [anon_sym_int232] = ACTIONS(808),
    [anon_sym_int240] = ACTIONS(808),
    [anon_sym_int248] = ACTIONS(808),
    [anon_sym_int256] = ACTIONS(808),
    [anon_sym_uint] = ACTIONS(808),
    [anon_sym_uint8] = ACTIONS(808),
    [anon_sym_uint16] = ACTIONS(808),
    [anon_sym_uint24] = ACTIONS(808),
    [anon_sym_uint32] = ACTIONS(808),
    [anon_sym_uint40] = ACTIONS(808),
    [anon_sym_uint48] = ACTIONS(808),
    [anon_sym_uint56] = ACTIONS(808),
    [anon_sym_uint64] = ACTIONS(808),
    [anon_sym_uint72] = ACTIONS(808),
    [anon_sym_uint80] = ACTIONS(808),
    [anon_sym_uint88] = ACTIONS(808),
    [anon_sym_uint96] = ACTIONS(808),
    [anon_sym_uint104] = ACTIONS(808),
    [anon_sym_uint112] = ACTIONS(808),
    [anon_sym_uint120] = ACTIONS(808),
    [anon_sym_uint128] = ACTIONS(808),
    [anon_sym_uint136] = ACTIONS(808),
    [anon_sym_uint144] = ACTIONS(808),
    [anon_sym_uint152] = ACTIONS(808),
    [anon_sym_uint160] = ACTIONS(808),
    [anon_sym_uint168] = ACTIONS(808),
    [anon_sym_uint176] = ACTIONS(808),
    [anon_sym_uint184] = ACTIONS(808),
    [anon_sym_uint192] = ACTIONS(808),
    [anon_sym_uint200] = ACTIONS(808),
    [anon_sym_uint208] = ACTIONS(808),
    [anon_sym_uint216] = ACTIONS(808),
    [anon_sym_uint224] = ACTIONS(808),
    [anon_sym_uint232] = ACTIONS(808),
    [anon_sym_uint240] = ACTIONS(808),
    [anon_sym_uint248] = ACTIONS(808),
    [anon_sym_uint256] = ACTIONS(808),
    [anon_sym_bytes] = ACTIONS(808),
    [anon_sym_bytes1] = ACTIONS(808),
    [anon_sym_bytes2] = ACTIONS(808),
    [anon_sym_bytes3] = ACTIONS(808),
    [anon_sym_bytes4] = ACTIONS(808),
    [anon_sym_bytes5] = ACTIONS(808),
    [anon_sym_bytes6] = ACTIONS(808),
    [anon_sym_bytes7] = ACTIONS(808),
    [anon_sym_bytes8] = ACTIONS(808),
    [anon_sym_bytes9] = ACTIONS(808),
    [anon_sym_bytes10] = ACTIONS(808),
    [anon_sym_bytes11] = ACTIONS(808),
    [anon_sym_bytes12] = ACTIONS(808),
    [anon_sym_bytes13] = ACTIONS(808),
    [anon_sym_bytes14] = ACTIONS(808),
    [anon_sym_bytes15] = ACTIONS(808),
    [anon_sym_bytes16] = ACTIONS(808),
    [anon_sym_bytes17] = ACTIONS(808),
    [anon_sym_bytes18] = ACTIONS(808),
    [anon_sym_bytes19] = ACTIONS(808),
    [anon_sym_bytes20] = ACTIONS(808),
    [anon_sym_bytes21] = ACTIONS(808),
    [anon_sym_bytes22] = ACTIONS(808),
    [anon_sym_bytes23] = ACTIONS(808),
    [anon_sym_bytes24] = ACTIONS(808),
    [anon_sym_bytes25] = ACTIONS(808),
    [anon_sym_bytes26] = ACTIONS(808),
    [anon_sym_bytes27] = ACTIONS(808),
    [anon_sym_bytes28] = ACTIONS(808),
    [anon_sym_bytes29] = ACTIONS(808),
    [anon_sym_bytes30] = ACTIONS(808),
    [anon_sym_bytes31] = ACTIONS(808),
    [anon_sym_bytes32] = ACTIONS(808),
    [anon_sym_fixed] = ACTIONS(808),
    [aux_sym__fixed_token1] = ACTIONS(808),
    [anon_sym_ufixed] = ACTIONS(808),
    [aux_sym__ufixed_token1] = ACTIONS(808),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(206)] = {
    [sym_type_name] = STATE(681),
    [sym__array_type] = STATE(380),
    [sym__function_type] = STATE(379),
    [sym_user_defined_type] = STATE(380),
    [sym__identifier_path] = STATE(367),
    [sym__mapping] = STATE(381),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym_identifier] = ACTIONS(7),
    [anon_sym_function] = ACTIONS(75),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_mapping] = ACTIONS(39),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(207)] = {
    [sym_type_name] = STATE(414),
    [sym__array_type] = STATE(380),
    [sym__function_type] = STATE(379),
    [sym_user_defined_type] = STATE(380),
    [sym__identifier_path] = STATE(367),
    [sym__mapping] = STATE(381),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym_identifier] = ACTIONS(810),
    [anon_sym_function] = ACTIONS(75),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_mapping] = ACTIONS(39),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(208)] = {
    [sym_type_name] = STATE(854),
    [sym__array_type] = STATE(380),
    [sym__function_type] = STATE(379),
    [sym_user_defined_type] = STATE(380),
    [sym__identifier_path] = STATE(367),
    [sym__mapping] = STATE(381),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym_identifier] = ACTIONS(7),
    [anon_sym_function] = ACTIONS(75),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_mapping] = ACTIONS(39),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(209)] = {
    [sym_type_name] = STATE(664),
    [sym__array_type] = STATE(380),
    [sym__function_type] = STATE(379),
    [sym_user_defined_type] = STATE(380),
    [sym__identifier_path] = STATE(367),
    [sym__mapping] = STATE(381),
    [sym_primitive_type] = STATE(380),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym_identifier] = ACTIONS(7),
    [anon_sym_function] = ACTIONS(75),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_mapping] = ACTIONS(39),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(210)] = {
    [sym_identifier] = ACTIONS(784),
    [anon_sym_RBRACE] = ACTIONS(782),
    [anon_sym_type] = ACTIONS(784),
    [anon_sym_error] = ACTIONS(784),
    [anon_sym_struct] = ACTIONS(784),
    [anon_sym_enum] = ACTIONS(784),
    [anon_sym_event] = ACTIONS(784),
    [anon_sym_using] = ACTIONS(784),
    [anon_sym_function] = ACTIONS(784),
    [anon_sym_byte] = ACTIONS(784),
    [anon_sym_address] = ACTIONS(784),
    [anon_sym_var] = ACTIONS(784),
    [anon_sym_modifier] = ACTIONS(784),
    [anon_sym_constructor] = ACTIONS(784),
    [anon_sym_fallback] = ACTIONS(784),
    [anon_sym_receive] = ACTIONS(784),
    [anon_sym_mapping] = ACTIONS(784),
    [anon_sym_bool] = ACTIONS(784),
    [anon_sym_string] = ACTIONS(784),
    [anon_sym_int] = ACTIONS(784),
    [anon_sym_int8] = ACTIONS(784),
    [anon_sym_int16] = ACTIONS(784),
    [anon_sym_int24] = ACTIONS(784),
    [anon_sym_int32] = ACTIONS(784),
    [anon_sym_int40] = ACTIONS(784),
    [anon_sym_int48] = ACTIONS(784),
    [anon_sym_int56] = ACTIONS(784),
    [anon_sym_int64] = ACTIONS(784),
    [anon_sym_int72] = ACTIONS(784),
    [anon_sym_int80] = ACTIONS(784),
    [anon_sym_int88] = ACTIONS(784),
    [anon_sym_int96] = ACTIONS(784),
    [anon_sym_int104] = ACTIONS(784),
    [anon_sym_int112] = ACTIONS(784),
    [anon_sym_int120] = ACTIONS(784),
    [anon_sym_int128] = ACTIONS(784),
    [anon_sym_int136] = ACTIONS(784),
    [anon_sym_int144] = ACTIONS(784),
    [anon_sym_int152] = ACTIONS(784),
    [anon_sym_int160] = ACTIONS(784),
    [anon_sym_int168] = ACTIONS(784),
    [anon_sym_int176] = ACTIONS(784),
    [anon_sym_int184] = ACTIONS(784),
    [anon_sym_int192] = ACTIONS(784),
    [anon_sym_int200] = ACTIONS(784),
    [anon_sym_int208] = ACTIONS(784),
    [anon_sym_int216] = ACTIONS(784),
    [anon_sym_int224] = ACTIONS(784),
    [anon_sym_int232] = ACTIONS(784),
    [anon_sym_int240] = ACTIONS(784),
    [anon_sym_int248] = ACTIONS(784),
    [anon_sym_int256] = ACTIONS(784),
    [anon_sym_uint] = ACTIONS(784),
    [anon_sym_uint8] = ACTIONS(784),
    [anon_sym_uint16] = ACTIONS(784),
    [anon_sym_uint24] = ACTIONS(784),
    [anon_sym_uint32] = ACTIONS(784),
    [anon_sym_uint40] = ACTIONS(784),
    [anon_sym_uint48] = ACTIONS(784),
    [anon_sym_uint56] = ACTIONS(784),
    [anon_sym_uint64] = ACTIONS(784),
    [anon_sym_uint72] = ACTIONS(784),
    [anon_sym_uint80] = ACTIONS(784),
    [anon_sym_uint88] = ACTIONS(784),
    [anon_sym_uint96] = ACTIONS(784),
    [anon_sym_uint104] = ACTIONS(784),
    [anon_sym_uint112] = ACTIONS(784),
    [anon_sym_uint120] = ACTIONS(784),
    [anon_sym_uint128] = ACTIONS(784),
    [anon_sym_uint136] = ACTIONS(784),
    [anon_sym_uint144] = ACTIONS(784),
    [anon_sym_uint152] = ACTIONS(784),
    [anon_sym_uint160] = ACTIONS(784),
    [anon_sym_uint168] = ACTIONS(784),
    [anon_sym_uint176] = ACTIONS(784),
    [anon_sym_uint184] = ACTIONS(784),
    [anon_sym_uint192] = ACTIONS(784),
    [anon_sym_uint200] = ACTIONS(784),
    [anon_sym_uint208] = ACTIONS(784),
    [anon_sym_uint216] = ACTIONS(784),
    [anon_sym_uint224] = ACTIONS(784),
    [anon_sym_uint232] = ACTIONS(784),
    [anon_sym_uint240] = ACTIONS(784),
    [anon_sym_uint248] = ACTIONS(784),
    [anon_sym_uint256] = ACTIONS(784),
    [anon_sym_bytes] = ACTIONS(784),
    [anon_sym_bytes1] = ACTIONS(784),
    [anon_sym_bytes2] = ACTIONS(784),
    [anon_sym_bytes3] = ACTIONS(784),
    [anon_sym_bytes4] = ACTIONS(784),
    [anon_sym_bytes5] = ACTIONS(784),
    [anon_sym_bytes6] = ACTIONS(784),
    [anon_sym_bytes7] = ACTIONS(784),
    [anon_sym_bytes8] = ACTIONS(784),
    [anon_sym_bytes9] = ACTIONS(784),
    [anon_sym_bytes10] = ACTIONS(784),
    [anon_sym_bytes11] = ACTIONS(784),
    [anon_sym_bytes12] = ACTIONS(784),
    [anon_sym_bytes13] = ACTIONS(784),
    [anon_sym_bytes14] = ACTIONS(784),
    [anon_sym_bytes15] = ACTIONS(784),
    [anon_sym_bytes16] = ACTIONS(784),
    [anon_sym_bytes17] = ACTIONS(784),
    [anon_sym_bytes18] = ACTIONS(784),
    [anon_sym_bytes19] = ACTIONS(784),
    [anon_sym_bytes20] = ACTIONS(784),
    [anon_sym_bytes21] = ACTIONS(784),
    [anon_sym_bytes22] = ACTIONS(784),
    [anon_sym_bytes23] = ACTIONS(784),
    [anon_sym_bytes24] = ACTIONS(784),
    [anon_sym_bytes25] = ACTIONS(784),
    [anon_sym_bytes26] = ACTIONS(784),
    [anon_sym_bytes27] = ACTIONS(784),
    [anon_sym_bytes28] = ACTIONS(784),
    [anon_sym_bytes29] = ACTIONS(784),
    [anon_sym_bytes30] = ACTIONS(784),
    [anon_sym_bytes31] = ACTIONS(784),
    [anon_sym_bytes32] = ACTIONS(784),
    [anon_sym_fixed] = ACTIONS(784),
    [aux_sym__fixed_token1] = ACTIONS(784),
    [anon_sym_ufixed] = ACTIONS(784),
    [aux_sym__ufixed_token1] = ACTIONS(784),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(211)] = {
    [sym_identifier] = ACTIONS(812),
    [anon_sym_RBRACE] = ACTIONS(814),
    [anon_sym_type] = ACTIONS(812),
    [anon_sym_error] = ACTIONS(812),
    [anon_sym_struct] = ACTIONS(812),
    [anon_sym_enum] = ACTIONS(812),
    [anon_sym_event] = ACTIONS(812),
    [anon_sym_using] = ACTIONS(812),
    [anon_sym_function] = ACTIONS(812),
    [anon_sym_byte] = ACTIONS(812),
    [anon_sym_address] = ACTIONS(812),
    [anon_sym_var] = ACTIONS(812),
    [anon_sym_modifier] = ACTIONS(812),
    [anon_sym_constructor] = ACTIONS(812),
    [anon_sym_fallback] = ACTIONS(812),
    [anon_sym_receive] = ACTIONS(812),
    [anon_sym_mapping] = ACTIONS(812),
    [anon_sym_bool] = ACTIONS(812),
    [anon_sym_string] = ACTIONS(812),
    [anon_sym_int] = ACTIONS(812),
    [anon_sym_int8] = ACTIONS(812),
    [anon_sym_int16] = ACTIONS(812),
    [anon_sym_int24] = ACTIONS(812),
    [anon_sym_int32] = ACTIONS(812),
    [anon_sym_int40] = ACTIONS(812),
    [anon_sym_int48] = ACTIONS(812),
    [anon_sym_int56] = ACTIONS(812),
    [anon_sym_int64] = ACTIONS(812),
    [anon_sym_int72] = ACTIONS(812),
    [anon_sym_int80] = ACTIONS(812),
    [anon_sym_int88] = ACTIONS(812),
    [anon_sym_int96] = ACTIONS(812),
    [anon_sym_int104] = ACTIONS(812),
    [anon_sym_int112] = ACTIONS(812),
    [anon_sym_int120] = ACTIONS(812),
    [anon_sym_int128] = ACTIONS(812),
    [anon_sym_int136] = ACTIONS(812),
    [anon_sym_int144] = ACTIONS(812),
    [anon_sym_int152] = ACTIONS(812),
    [anon_sym_int160] = ACTIONS(812),
    [anon_sym_int168] = ACTIONS(812),
    [anon_sym_int176] = ACTIONS(812),
    [anon_sym_int184] = ACTIONS(812),
    [anon_sym_int192] = ACTIONS(812),
    [anon_sym_int200] = ACTIONS(812),
    [anon_sym_int208] = ACTIONS(812),
    [anon_sym_int216] = ACTIONS(812),
    [anon_sym_int224] = ACTIONS(812),
    [anon_sym_int232] = ACTIONS(812),
    [anon_sym_int240] = ACTIONS(812),
    [anon_sym_int248] = ACTIONS(812),
    [anon_sym_int256] = ACTIONS(812),
    [anon_sym_uint] = ACTIONS(812),
    [anon_sym_uint8] = ACTIONS(812),
    [anon_sym_uint16] = ACTIONS(812),
    [anon_sym_uint24] = ACTIONS(812),
    [anon_sym_uint32] = ACTIONS(812),
    [anon_sym_uint40] = ACTIONS(812),
    [anon_sym_uint48] = ACTIONS(812),
    [anon_sym_uint56] = ACTIONS(812),
    [anon_sym_uint64] = ACTIONS(812),
    [anon_sym_uint72] = ACTIONS(812),
    [anon_sym_uint80] = ACTIONS(812),
    [anon_sym_uint88] = ACTIONS(812),
    [anon_sym_uint96] = ACTIONS(812),
    [anon_sym_uint104] = ACTIONS(812),
    [anon_sym_uint112] = ACTIONS(812),
    [anon_sym_uint120] = ACTIONS(812),
    [anon_sym_uint128] = ACTIONS(812),
    [anon_sym_uint136] = ACTIONS(812),
    [anon_sym_uint144] = ACTIONS(812),
    [anon_sym_uint152] = ACTIONS(812),
    [anon_sym_uint160] = ACTIONS(812),
    [anon_sym_uint168] = ACTIONS(812),
    [anon_sym_uint176] = ACTIONS(812),
    [anon_sym_uint184] = ACTIONS(812),
    [anon_sym_uint192] = ACTIONS(812),
    [anon_sym_uint200] = ACTIONS(812),
    [anon_sym_uint208] = ACTIONS(812),
    [anon_sym_uint216] = ACTIONS(812),
    [anon_sym_uint224] = ACTIONS(812),
    [anon_sym_uint232] = ACTIONS(812),
    [anon_sym_uint240] = ACTIONS(812),
    [anon_sym_uint248] = ACTIONS(812),
    [anon_sym_uint256] = ACTIONS(812),
    [anon_sym_bytes] = ACTIONS(812),
    [anon_sym_bytes1] = ACTIONS(812),
    [anon_sym_bytes2] = ACTIONS(812),
    [anon_sym_bytes3] = ACTIONS(812),
    [anon_sym_bytes4] = ACTIONS(812),
    [anon_sym_bytes5] = ACTIONS(812),
    [anon_sym_bytes6] = ACTIONS(812),
    [anon_sym_bytes7] = ACTIONS(812),
    [anon_sym_bytes8] = ACTIONS(812),
    [anon_sym_bytes9] = ACTIONS(812),
    [anon_sym_bytes10] = ACTIONS(812),
    [anon_sym_bytes11] = ACTIONS(812),
    [anon_sym_bytes12] = ACTIONS(812),
    [anon_sym_bytes13] = ACTIONS(812),
    [anon_sym_bytes14] = ACTIONS(812),
    [anon_sym_bytes15] = ACTIONS(812),
    [anon_sym_bytes16] = ACTIONS(812),
    [anon_sym_bytes17] = ACTIONS(812),
    [anon_sym_bytes18] = ACTIONS(812),
    [anon_sym_bytes19] = ACTIONS(812),
    [anon_sym_bytes20] = ACTIONS(812),
    [anon_sym_bytes21] = ACTIONS(812),
    [anon_sym_bytes22] = ACTIONS(812),
    [anon_sym_bytes23] = ACTIONS(812),
    [anon_sym_bytes24] = ACTIONS(812),
    [anon_sym_bytes25] = ACTIONS(812),
    [anon_sym_bytes26] = ACTIONS(812),
    [anon_sym_bytes27] = ACTIONS(812),
    [anon_sym_bytes28] = ACTIONS(812),
    [anon_sym_bytes29] = ACTIONS(812),
    [anon_sym_bytes30] = ACTIONS(812),
    [anon_sym_bytes31] = ACTIONS(812),
    [anon_sym_bytes32] = ACTIONS(812),
    [anon_sym_fixed] = ACTIONS(812),
    [aux_sym__fixed_token1] = ACTIONS(812),
    [anon_sym_ufixed] = ACTIONS(812),
    [aux_sym__ufixed_token1] = ACTIONS(812),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(212)] = {
    [sym_identifier] = ACTIONS(816),
    [anon_sym_RBRACE] = ACTIONS(818),
    [anon_sym_type] = ACTIONS(816),
    [anon_sym_error] = ACTIONS(816),
    [anon_sym_struct] = ACTIONS(816),
    [anon_sym_enum] = ACTIONS(816),
    [anon_sym_event] = ACTIONS(816),
    [anon_sym_using] = ACTIONS(816),
    [anon_sym_function] = ACTIONS(816),
    [anon_sym_byte] = ACTIONS(816),
    [anon_sym_address] = ACTIONS(816),
    [anon_sym_var] = ACTIONS(816),
    [anon_sym_modifier] = ACTIONS(816),
    [anon_sym_constructor] = ACTIONS(816),
    [anon_sym_fallback] = ACTIONS(816),
    [anon_sym_receive] = ACTIONS(816),
    [anon_sym_mapping] = ACTIONS(816),
    [anon_sym_bool] = ACTIONS(816),
    [anon_sym_string] = ACTIONS(816),
    [anon_sym_int] = ACTIONS(816),
    [anon_sym_int8] = ACTIONS(816),
    [anon_sym_int16] = ACTIONS(816),
    [anon_sym_int24] = ACTIONS(816),
    [anon_sym_int32] = ACTIONS(816),
    [anon_sym_int40] = ACTIONS(816),
    [anon_sym_int48] = ACTIONS(816),
    [anon_sym_int56] = ACTIONS(816),
    [anon_sym_int64] = ACTIONS(816),
    [anon_sym_int72] = ACTIONS(816),
    [anon_sym_int80] = ACTIONS(816),
    [anon_sym_int88] = ACTIONS(816),
    [anon_sym_int96] = ACTIONS(816),
    [anon_sym_int104] = ACTIONS(816),
    [anon_sym_int112] = ACTIONS(816),
    [anon_sym_int120] = ACTIONS(816),
    [anon_sym_int128] = ACTIONS(816),
    [anon_sym_int136] = ACTIONS(816),
    [anon_sym_int144] = ACTIONS(816),
    [anon_sym_int152] = ACTIONS(816),
    [anon_sym_int160] = ACTIONS(816),
    [anon_sym_int168] = ACTIONS(816),
    [anon_sym_int176] = ACTIONS(816),
    [anon_sym_int184] = ACTIONS(816),
    [anon_sym_int192] = ACTIONS(816),
    [anon_sym_int200] = ACTIONS(816),
    [anon_sym_int208] = ACTIONS(816),
    [anon_sym_int216] = ACTIONS(816),
    [anon_sym_int224] = ACTIONS(816),
    [anon_sym_int232] = ACTIONS(816),
    [anon_sym_int240] = ACTIONS(816),
    [anon_sym_int248] = ACTIONS(816),
    [anon_sym_int256] = ACTIONS(816),
    [anon_sym_uint] = ACTIONS(816),
    [anon_sym_uint8] = ACTIONS(816),
    [anon_sym_uint16] = ACTIONS(816),
    [anon_sym_uint24] = ACTIONS(816),
    [anon_sym_uint32] = ACTIONS(816),
    [anon_sym_uint40] = ACTIONS(816),
    [anon_sym_uint48] = ACTIONS(816),
    [anon_sym_uint56] = ACTIONS(816),
    [anon_sym_uint64] = ACTIONS(816),
    [anon_sym_uint72] = ACTIONS(816),
    [anon_sym_uint80] = ACTIONS(816),
    [anon_sym_uint88] = ACTIONS(816),
    [anon_sym_uint96] = ACTIONS(816),
    [anon_sym_uint104] = ACTIONS(816),
    [anon_sym_uint112] = ACTIONS(816),
    [anon_sym_uint120] = ACTIONS(816),
    [anon_sym_uint128] = ACTIONS(816),
    [anon_sym_uint136] = ACTIONS(816),
    [anon_sym_uint144] = ACTIONS(816),
    [anon_sym_uint152] = ACTIONS(816),
    [anon_sym_uint160] = ACTIONS(816),
    [anon_sym_uint168] = ACTIONS(816),
    [anon_sym_uint176] = ACTIONS(816),
    [anon_sym_uint184] = ACTIONS(816),
    [anon_sym_uint192] = ACTIONS(816),
    [anon_sym_uint200] = ACTIONS(816),
    [anon_sym_uint208] = ACTIONS(816),
    [anon_sym_uint216] = ACTIONS(816),
    [anon_sym_uint224] = ACTIONS(816),
    [anon_sym_uint232] = ACTIONS(816),
    [anon_sym_uint240] = ACTIONS(816),
    [anon_sym_uint248] = ACTIONS(816),
    [anon_sym_uint256] = ACTIONS(816),
    [anon_sym_bytes] = ACTIONS(816),
    [anon_sym_bytes1] = ACTIONS(816),
    [anon_sym_bytes2] = ACTIONS(816),
    [anon_sym_bytes3] = ACTIONS(816),
    [anon_sym_bytes4] = ACTIONS(816),
    [anon_sym_bytes5] = ACTIONS(816),
    [anon_sym_bytes6] = ACTIONS(816),
    [anon_sym_bytes7] = ACTIONS(816),
    [anon_sym_bytes8] = ACTIONS(816),
    [anon_sym_bytes9] = ACTIONS(816),
    [anon_sym_bytes10] = ACTIONS(816),
    [anon_sym_bytes11] = ACTIONS(816),
    [anon_sym_bytes12] = ACTIONS(816),
    [anon_sym_bytes13] = ACTIONS(816),
    [anon_sym_bytes14] = ACTIONS(816),
    [anon_sym_bytes15] = ACTIONS(816),
    [anon_sym_bytes16] = ACTIONS(816),
    [anon_sym_bytes17] = ACTIONS(816),
    [anon_sym_bytes18] = ACTIONS(816),
    [anon_sym_bytes19] = ACTIONS(816),
    [anon_sym_bytes20] = ACTIONS(816),
    [anon_sym_bytes21] = ACTIONS(816),
    [anon_sym_bytes22] = ACTIONS(816),
    [anon_sym_bytes23] = ACTIONS(816),
    [anon_sym_bytes24] = ACTIONS(816),
    [anon_sym_bytes25] = ACTIONS(816),
    [anon_sym_bytes26] = ACTIONS(816),
    [anon_sym_bytes27] = ACTIONS(816),
    [anon_sym_bytes28] = ACTIONS(816),
    [anon_sym_bytes29] = ACTIONS(816),
    [anon_sym_bytes30] = ACTIONS(816),
    [anon_sym_bytes31] = ACTIONS(816),
    [anon_sym_bytes32] = ACTIONS(816),
    [anon_sym_fixed] = ACTIONS(816),
    [aux_sym__fixed_token1] = ACTIONS(816),
    [anon_sym_ufixed] = ACTIONS(816),
    [aux_sym__ufixed_token1] = ACTIONS(816),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(213)] = {
    [sym_identifier] = ACTIONS(820),
    [anon_sym_RBRACE] = ACTIONS(822),
    [anon_sym_type] = ACTIONS(820),
    [anon_sym_error] = ACTIONS(820),
    [anon_sym_struct] = ACTIONS(820),
    [anon_sym_enum] = ACTIONS(820),
    [anon_sym_event] = ACTIONS(820),
    [anon_sym_using] = ACTIONS(820),
    [anon_sym_function] = ACTIONS(820),
    [anon_sym_byte] = ACTIONS(820),
    [anon_sym_address] = ACTIONS(820),
    [anon_sym_var] = ACTIONS(820),
    [anon_sym_modifier] = ACTIONS(820),
    [anon_sym_constructor] = ACTIONS(820),
    [anon_sym_fallback] = ACTIONS(820),
    [anon_sym_receive] = ACTIONS(820),
    [anon_sym_mapping] = ACTIONS(820),
    [anon_sym_bool] = ACTIONS(820),
    [anon_sym_string] = ACTIONS(820),
    [anon_sym_int] = ACTIONS(820),
    [anon_sym_int8] = ACTIONS(820),
    [anon_sym_int16] = ACTIONS(820),
    [anon_sym_int24] = ACTIONS(820),
    [anon_sym_int32] = ACTIONS(820),
    [anon_sym_int40] = ACTIONS(820),
    [anon_sym_int48] = ACTIONS(820),
    [anon_sym_int56] = ACTIONS(820),
    [anon_sym_int64] = ACTIONS(820),
    [anon_sym_int72] = ACTIONS(820),
    [anon_sym_int80] = ACTIONS(820),
    [anon_sym_int88] = ACTIONS(820),
    [anon_sym_int96] = ACTIONS(820),
    [anon_sym_int104] = ACTIONS(820),
    [anon_sym_int112] = ACTIONS(820),
    [anon_sym_int120] = ACTIONS(820),
    [anon_sym_int128] = ACTIONS(820),
    [anon_sym_int136] = ACTIONS(820),
    [anon_sym_int144] = ACTIONS(820),
    [anon_sym_int152] = ACTIONS(820),
    [anon_sym_int160] = ACTIONS(820),
    [anon_sym_int168] = ACTIONS(820),
    [anon_sym_int176] = ACTIONS(820),
    [anon_sym_int184] = ACTIONS(820),
    [anon_sym_int192] = ACTIONS(820),
    [anon_sym_int200] = ACTIONS(820),
    [anon_sym_int208] = ACTIONS(820),
    [anon_sym_int216] = ACTIONS(820),
    [anon_sym_int224] = ACTIONS(820),
    [anon_sym_int232] = ACTIONS(820),
    [anon_sym_int240] = ACTIONS(820),
    [anon_sym_int248] = ACTIONS(820),
    [anon_sym_int256] = ACTIONS(820),
    [anon_sym_uint] = ACTIONS(820),
    [anon_sym_uint8] = ACTIONS(820),
    [anon_sym_uint16] = ACTIONS(820),
    [anon_sym_uint24] = ACTIONS(820),
    [anon_sym_uint32] = ACTIONS(820),
    [anon_sym_uint40] = ACTIONS(820),
    [anon_sym_uint48] = ACTIONS(820),
    [anon_sym_uint56] = ACTIONS(820),
    [anon_sym_uint64] = ACTIONS(820),
    [anon_sym_uint72] = ACTIONS(820),
    [anon_sym_uint80] = ACTIONS(820),
    [anon_sym_uint88] = ACTIONS(820),
    [anon_sym_uint96] = ACTIONS(820),
    [anon_sym_uint104] = ACTIONS(820),
    [anon_sym_uint112] = ACTIONS(820),
    [anon_sym_uint120] = ACTIONS(820),
    [anon_sym_uint128] = ACTIONS(820),
    [anon_sym_uint136] = ACTIONS(820),
    [anon_sym_uint144] = ACTIONS(820),
    [anon_sym_uint152] = ACTIONS(820),
    [anon_sym_uint160] = ACTIONS(820),
    [anon_sym_uint168] = ACTIONS(820),
    [anon_sym_uint176] = ACTIONS(820),
    [anon_sym_uint184] = ACTIONS(820),
    [anon_sym_uint192] = ACTIONS(820),
    [anon_sym_uint200] = ACTIONS(820),
    [anon_sym_uint208] = ACTIONS(820),
    [anon_sym_uint216] = ACTIONS(820),
    [anon_sym_uint224] = ACTIONS(820),
    [anon_sym_uint232] = ACTIONS(820),
    [anon_sym_uint240] = ACTIONS(820),
    [anon_sym_uint248] = ACTIONS(820),
    [anon_sym_uint256] = ACTIONS(820),
    [anon_sym_bytes] = ACTIONS(820),
    [anon_sym_bytes1] = ACTIONS(820),
    [anon_sym_bytes2] = ACTIONS(820),
    [anon_sym_bytes3] = ACTIONS(820),
    [anon_sym_bytes4] = ACTIONS(820),
    [anon_sym_bytes5] = ACTIONS(820),
    [anon_sym_bytes6] = ACTIONS(820),
    [anon_sym_bytes7] = ACTIONS(820),
    [anon_sym_bytes8] = ACTIONS(820),
    [anon_sym_bytes9] = ACTIONS(820),
    [anon_sym_bytes10] = ACTIONS(820),
    [anon_sym_bytes11] = ACTIONS(820),
    [anon_sym_bytes12] = ACTIONS(820),
    [anon_sym_bytes13] = ACTIONS(820),
    [anon_sym_bytes14] = ACTIONS(820),
    [anon_sym_bytes15] = ACTIONS(820),
    [anon_sym_bytes16] = ACTIONS(820),
    [anon_sym_bytes17] = ACTIONS(820),
    [anon_sym_bytes18] = ACTIONS(820),
    [anon_sym_bytes19] = ACTIONS(820),
    [anon_sym_bytes20] = ACTIONS(820),
    [anon_sym_bytes21] = ACTIONS(820),
    [anon_sym_bytes22] = ACTIONS(820),
    [anon_sym_bytes23] = ACTIONS(820),
    [anon_sym_bytes24] = ACTIONS(820),
    [anon_sym_bytes25] = ACTIONS(820),
    [anon_sym_bytes26] = ACTIONS(820),
    [anon_sym_bytes27] = ACTIONS(820),
    [anon_sym_bytes28] = ACTIONS(820),
    [anon_sym_bytes29] = ACTIONS(820),
    [anon_sym_bytes30] = ACTIONS(820),
    [anon_sym_bytes31] = ACTIONS(820),
    [anon_sym_bytes32] = ACTIONS(820),
    [anon_sym_fixed] = ACTIONS(820),
    [aux_sym__fixed_token1] = ACTIONS(820),
    [anon_sym_ufixed] = ACTIONS(820),
    [aux_sym__ufixed_token1] = ACTIONS(820),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(214)] = {
    [sym_identifier] = ACTIONS(824),
    [anon_sym_RBRACE] = ACTIONS(826),
    [anon_sym_type] = ACTIONS(824),
    [anon_sym_error] = ACTIONS(824),
    [anon_sym_struct] = ACTIONS(824),
    [anon_sym_enum] = ACTIONS(824),
    [anon_sym_event] = ACTIONS(824),
    [anon_sym_using] = ACTIONS(824),
    [anon_sym_function] = ACTIONS(824),
    [anon_sym_byte] = ACTIONS(824),
    [anon_sym_address] = ACTIONS(824),
    [anon_sym_var] = ACTIONS(824),
    [anon_sym_modifier] = ACTIONS(824),
    [anon_sym_constructor] = ACTIONS(824),
    [anon_sym_fallback] = ACTIONS(824),
    [anon_sym_receive] = ACTIONS(824),
    [anon_sym_mapping] = ACTIONS(824),
    [anon_sym_bool] = ACTIONS(824),
    [anon_sym_string] = ACTIONS(824),
    [anon_sym_int] = ACTIONS(824),
    [anon_sym_int8] = ACTIONS(824),
    [anon_sym_int16] = ACTIONS(824),
    [anon_sym_int24] = ACTIONS(824),
    [anon_sym_int32] = ACTIONS(824),
    [anon_sym_int40] = ACTIONS(824),
    [anon_sym_int48] = ACTIONS(824),
    [anon_sym_int56] = ACTIONS(824),
    [anon_sym_int64] = ACTIONS(824),
    [anon_sym_int72] = ACTIONS(824),
    [anon_sym_int80] = ACTIONS(824),
    [anon_sym_int88] = ACTIONS(824),
    [anon_sym_int96] = ACTIONS(824),
    [anon_sym_int104] = ACTIONS(824),
    [anon_sym_int112] = ACTIONS(824),
    [anon_sym_int120] = ACTIONS(824),
    [anon_sym_int128] = ACTIONS(824),
    [anon_sym_int136] = ACTIONS(824),
    [anon_sym_int144] = ACTIONS(824),
    [anon_sym_int152] = ACTIONS(824),
    [anon_sym_int160] = ACTIONS(824),
    [anon_sym_int168] = ACTIONS(824),
    [anon_sym_int176] = ACTIONS(824),
    [anon_sym_int184] = ACTIONS(824),
    [anon_sym_int192] = ACTIONS(824),
    [anon_sym_int200] = ACTIONS(824),
    [anon_sym_int208] = ACTIONS(824),
    [anon_sym_int216] = ACTIONS(824),
    [anon_sym_int224] = ACTIONS(824),
    [anon_sym_int232] = ACTIONS(824),
    [anon_sym_int240] = ACTIONS(824),
    [anon_sym_int248] = ACTIONS(824),
    [anon_sym_int256] = ACTIONS(824),
    [anon_sym_uint] = ACTIONS(824),
    [anon_sym_uint8] = ACTIONS(824),
    [anon_sym_uint16] = ACTIONS(824),
    [anon_sym_uint24] = ACTIONS(824),
    [anon_sym_uint32] = ACTIONS(824),
    [anon_sym_uint40] = ACTIONS(824),
    [anon_sym_uint48] = ACTIONS(824),
    [anon_sym_uint56] = ACTIONS(824),
    [anon_sym_uint64] = ACTIONS(824),
    [anon_sym_uint72] = ACTIONS(824),
    [anon_sym_uint80] = ACTIONS(824),
    [anon_sym_uint88] = ACTIONS(824),
    [anon_sym_uint96] = ACTIONS(824),
    [anon_sym_uint104] = ACTIONS(824),
    [anon_sym_uint112] = ACTIONS(824),
    [anon_sym_uint120] = ACTIONS(824),
    [anon_sym_uint128] = ACTIONS(824),
    [anon_sym_uint136] = ACTIONS(824),
    [anon_sym_uint144] = ACTIONS(824),
    [anon_sym_uint152] = ACTIONS(824),
    [anon_sym_uint160] = ACTIONS(824),
    [anon_sym_uint168] = ACTIONS(824),
    [anon_sym_uint176] = ACTIONS(824),
    [anon_sym_uint184] = ACTIONS(824),
    [anon_sym_uint192] = ACTIONS(824),
    [anon_sym_uint200] = ACTIONS(824),
    [anon_sym_uint208] = ACTIONS(824),
    [anon_sym_uint216] = ACTIONS(824),
    [anon_sym_uint224] = ACTIONS(824),
    [anon_sym_uint232] = ACTIONS(824),
    [anon_sym_uint240] = ACTIONS(824),
    [anon_sym_uint248] = ACTIONS(824),
    [anon_sym_uint256] = ACTIONS(824),
    [anon_sym_bytes] = ACTIONS(824),
    [anon_sym_bytes1] = ACTIONS(824),
    [anon_sym_bytes2] = ACTIONS(824),
    [anon_sym_bytes3] = ACTIONS(824),
    [anon_sym_bytes4] = ACTIONS(824),
    [anon_sym_bytes5] = ACTIONS(824),
    [anon_sym_bytes6] = ACTIONS(824),
    [anon_sym_bytes7] = ACTIONS(824),
    [anon_sym_bytes8] = ACTIONS(824),
    [anon_sym_bytes9] = ACTIONS(824),
    [anon_sym_bytes10] = ACTIONS(824),
    [anon_sym_bytes11] = ACTIONS(824),
    [anon_sym_bytes12] = ACTIONS(824),
    [anon_sym_bytes13] = ACTIONS(824),
    [anon_sym_bytes14] = ACTIONS(824),
    [anon_sym_bytes15] = ACTIONS(824),
    [anon_sym_bytes16] = ACTIONS(824),
    [anon_sym_bytes17] = ACTIONS(824),
    [anon_sym_bytes18] = ACTIONS(824),
    [anon_sym_bytes19] = ACTIONS(824),
    [anon_sym_bytes20] = ACTIONS(824),
    [anon_sym_bytes21] = ACTIONS(824),
    [anon_sym_bytes22] = ACTIONS(824),
    [anon_sym_bytes23] = ACTIONS(824),
    [anon_sym_bytes24] = ACTIONS(824),
    [anon_sym_bytes25] = ACTIONS(824),
    [anon_sym_bytes26] = ACTIONS(824),
    [anon_sym_bytes27] = ACTIONS(824),
    [anon_sym_bytes28] = ACTIONS(824),
    [anon_sym_bytes29] = ACTIONS(824),
    [anon_sym_bytes30] = ACTIONS(824),
    [anon_sym_bytes31] = ACTIONS(824),
    [anon_sym_bytes32] = ACTIONS(824),
    [anon_sym_fixed] = ACTIONS(824),
    [aux_sym__fixed_token1] = ACTIONS(824),
    [anon_sym_ufixed] = ACTIONS(824),
    [aux_sym__ufixed_token1] = ACTIONS(824),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(215)] = {
    [sym_identifier] = ACTIONS(676),
    [anon_sym_RBRACE] = ACTIONS(674),
    [anon_sym_type] = ACTIONS(676),
    [anon_sym_error] = ACTIONS(676),
    [anon_sym_struct] = ACTIONS(676),
    [anon_sym_enum] = ACTIONS(676),
    [anon_sym_event] = ACTIONS(676),
    [anon_sym_using] = ACTIONS(676),
    [anon_sym_function] = ACTIONS(676),
    [anon_sym_byte] = ACTIONS(676),
    [anon_sym_address] = ACTIONS(676),
    [anon_sym_var] = ACTIONS(676),
    [anon_sym_modifier] = ACTIONS(676),
    [anon_sym_constructor] = ACTIONS(676),
    [anon_sym_fallback] = ACTIONS(676),
    [anon_sym_receive] = ACTIONS(676),
    [anon_sym_mapping] = ACTIONS(676),
    [anon_sym_bool] = ACTIONS(676),
    [anon_sym_string] = ACTIONS(676),
    [anon_sym_int] = ACTIONS(676),
    [anon_sym_int8] = ACTIONS(676),
    [anon_sym_int16] = ACTIONS(676),
    [anon_sym_int24] = ACTIONS(676),
    [anon_sym_int32] = ACTIONS(676),
    [anon_sym_int40] = ACTIONS(676),
    [anon_sym_int48] = ACTIONS(676),
    [anon_sym_int56] = ACTIONS(676),
    [anon_sym_int64] = ACTIONS(676),
    [anon_sym_int72] = ACTIONS(676),
    [anon_sym_int80] = ACTIONS(676),
    [anon_sym_int88] = ACTIONS(676),
    [anon_sym_int96] = ACTIONS(676),
    [anon_sym_int104] = ACTIONS(676),
    [anon_sym_int112] = ACTIONS(676),
    [anon_sym_int120] = ACTIONS(676),
    [anon_sym_int128] = ACTIONS(676),
    [anon_sym_int136] = ACTIONS(676),
    [anon_sym_int144] = ACTIONS(676),
    [anon_sym_int152] = ACTIONS(676),
    [anon_sym_int160] = ACTIONS(676),
    [anon_sym_int168] = ACTIONS(676),
    [anon_sym_int176] = ACTIONS(676),
    [anon_sym_int184] = ACTIONS(676),
    [anon_sym_int192] = ACTIONS(676),
    [anon_sym_int200] = ACTIONS(676),
    [anon_sym_int208] = ACTIONS(676),
    [anon_sym_int216] = ACTIONS(676),
    [anon_sym_int224] = ACTIONS(676),
    [anon_sym_int232] = ACTIONS(676),
    [anon_sym_int240] = ACTIONS(676),
    [anon_sym_int248] = ACTIONS(676),
    [anon_sym_int256] = ACTIONS(676),
    [anon_sym_uint] = ACTIONS(676),
    [anon_sym_uint8] = ACTIONS(676),
    [anon_sym_uint16] = ACTIONS(676),
    [anon_sym_uint24] = ACTIONS(676),
    [anon_sym_uint32] = ACTIONS(676),
    [anon_sym_uint40] = ACTIONS(676),
    [anon_sym_uint48] = ACTIONS(676),
    [anon_sym_uint56] = ACTIONS(676),
    [anon_sym_uint64] = ACTIONS(676),
    [anon_sym_uint72] = ACTIONS(676),
    [anon_sym_uint80] = ACTIONS(676),
    [anon_sym_uint88] = ACTIONS(676),
    [anon_sym_uint96] = ACTIONS(676),
    [anon_sym_uint104] = ACTIONS(676),
    [anon_sym_uint112] = ACTIONS(676),
    [anon_sym_uint120] = ACTIONS(676),
    [anon_sym_uint128] = ACTIONS(676),
    [anon_sym_uint136] = ACTIONS(676),
    [anon_sym_uint144] = ACTIONS(676),
    [anon_sym_uint152] = ACTIONS(676),
    [anon_sym_uint160] = ACTIONS(676),
    [anon_sym_uint168] = ACTIONS(676),
    [anon_sym_uint176] = ACTIONS(676),
    [anon_sym_uint184] = ACTIONS(676),
    [anon_sym_uint192] = ACTIONS(676),
    [anon_sym_uint200] = ACTIONS(676),
    [anon_sym_uint208] = ACTIONS(676),
    [anon_sym_uint216] = ACTIONS(676),
    [anon_sym_uint224] = ACTIONS(676),
    [anon_sym_uint232] = ACTIONS(676),
    [anon_sym_uint240] = ACTIONS(676),
    [anon_sym_uint248] = ACTIONS(676),
    [anon_sym_uint256] = ACTIONS(676),
    [anon_sym_bytes] = ACTIONS(676),
    [anon_sym_bytes1] = ACTIONS(676),
    [anon_sym_bytes2] = ACTIONS(676),
    [anon_sym_bytes3] = ACTIONS(676),
    [anon_sym_bytes4] = ACTIONS(676),
    [anon_sym_bytes5] = ACTIONS(676),
    [anon_sym_bytes6] = ACTIONS(676),
    [anon_sym_bytes7] = ACTIONS(676),
    [anon_sym_bytes8] = ACTIONS(676),
    [anon_sym_bytes9] = ACTIONS(676),
    [anon_sym_bytes10] = ACTIONS(676),
    [anon_sym_bytes11] = ACTIONS(676),
    [anon_sym_bytes12] = ACTIONS(676),
    [anon_sym_bytes13] = ACTIONS(676),
    [anon_sym_bytes14] = ACTIONS(676),
    [anon_sym_bytes15] = ACTIONS(676),
    [anon_sym_bytes16] = ACTIONS(676),
    [anon_sym_bytes17] = ACTIONS(676),
    [anon_sym_bytes18] = ACTIONS(676),
    [anon_sym_bytes19] = ACTIONS(676),
    [anon_sym_bytes20] = ACTIONS(676),
    [anon_sym_bytes21] = ACTIONS(676),
    [anon_sym_bytes22] = ACTIONS(676),
    [anon_sym_bytes23] = ACTIONS(676),
    [anon_sym_bytes24] = ACTIONS(676),
    [anon_sym_bytes25] = ACTIONS(676),
    [anon_sym_bytes26] = ACTIONS(676),
    [anon_sym_bytes27] = ACTIONS(676),
    [anon_sym_bytes28] = ACTIONS(676),
    [anon_sym_bytes29] = ACTIONS(676),
    [anon_sym_bytes30] = ACTIONS(676),
    [anon_sym_bytes31] = ACTIONS(676),
    [anon_sym_bytes32] = ACTIONS(676),
    [anon_sym_fixed] = ACTIONS(676),
    [aux_sym__fixed_token1] = ACTIONS(676),
    [anon_sym_ufixed] = ACTIONS(676),
    [aux_sym__ufixed_token1] = ACTIONS(676),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(216)] = {
    [sym_identifier] = ACTIONS(680),
    [anon_sym_RBRACE] = ACTIONS(678),
    [anon_sym_type] = ACTIONS(680),
    [anon_sym_error] = ACTIONS(680),
    [anon_sym_struct] = ACTIONS(680),
    [anon_sym_enum] = ACTIONS(680),
    [anon_sym_event] = ACTIONS(680),
    [anon_sym_using] = ACTIONS(680),
    [anon_sym_function] = ACTIONS(680),
    [anon_sym_byte] = ACTIONS(680),
    [anon_sym_address] = ACTIONS(680),
    [anon_sym_var] = ACTIONS(680),
    [anon_sym_modifier] = ACTIONS(680),
    [anon_sym_constructor] = ACTIONS(680),
    [anon_sym_fallback] = ACTIONS(680),
    [anon_sym_receive] = ACTIONS(680),
    [anon_sym_mapping] = ACTIONS(680),
    [anon_sym_bool] = ACTIONS(680),
    [anon_sym_string] = ACTIONS(680),
    [anon_sym_int] = ACTIONS(680),
    [anon_sym_int8] = ACTIONS(680),
    [anon_sym_int16] = ACTIONS(680),
    [anon_sym_int24] = ACTIONS(680),
    [anon_sym_int32] = ACTIONS(680),
    [anon_sym_int40] = ACTIONS(680),
    [anon_sym_int48] = ACTIONS(680),
    [anon_sym_int56] = ACTIONS(680),
    [anon_sym_int64] = ACTIONS(680),
    [anon_sym_int72] = ACTIONS(680),
    [anon_sym_int80] = ACTIONS(680),
    [anon_sym_int88] = ACTIONS(680),
    [anon_sym_int96] = ACTIONS(680),
    [anon_sym_int104] = ACTIONS(680),
    [anon_sym_int112] = ACTIONS(680),
    [anon_sym_int120] = ACTIONS(680),
    [anon_sym_int128] = ACTIONS(680),
    [anon_sym_int136] = ACTIONS(680),
    [anon_sym_int144] = ACTIONS(680),
    [anon_sym_int152] = ACTIONS(680),
    [anon_sym_int160] = ACTIONS(680),
    [anon_sym_int168] = ACTIONS(680),
    [anon_sym_int176] = ACTIONS(680),
    [anon_sym_int184] = ACTIONS(680),
    [anon_sym_int192] = ACTIONS(680),
    [anon_sym_int200] = ACTIONS(680),
    [anon_sym_int208] = ACTIONS(680),
    [anon_sym_int216] = ACTIONS(680),
    [anon_sym_int224] = ACTIONS(680),
    [anon_sym_int232] = ACTIONS(680),
    [anon_sym_int240] = ACTIONS(680),
    [anon_sym_int248] = ACTIONS(680),
    [anon_sym_int256] = ACTIONS(680),
    [anon_sym_uint] = ACTIONS(680),
    [anon_sym_uint8] = ACTIONS(680),
    [anon_sym_uint16] = ACTIONS(680),
    [anon_sym_uint24] = ACTIONS(680),
    [anon_sym_uint32] = ACTIONS(680),
    [anon_sym_uint40] = ACTIONS(680),
    [anon_sym_uint48] = ACTIONS(680),
    [anon_sym_uint56] = ACTIONS(680),
    [anon_sym_uint64] = ACTIONS(680),
    [anon_sym_uint72] = ACTIONS(680),
    [anon_sym_uint80] = ACTIONS(680),
    [anon_sym_uint88] = ACTIONS(680),
    [anon_sym_uint96] = ACTIONS(680),
    [anon_sym_uint104] = ACTIONS(680),
    [anon_sym_uint112] = ACTIONS(680),
    [anon_sym_uint120] = ACTIONS(680),
    [anon_sym_uint128] = ACTIONS(680),
    [anon_sym_uint136] = ACTIONS(680),
    [anon_sym_uint144] = ACTIONS(680),
    [anon_sym_uint152] = ACTIONS(680),
    [anon_sym_uint160] = ACTIONS(680),
    [anon_sym_uint168] = ACTIONS(680),
    [anon_sym_uint176] = ACTIONS(680),
    [anon_sym_uint184] = ACTIONS(680),
    [anon_sym_uint192] = ACTIONS(680),
    [anon_sym_uint200] = ACTIONS(680),
    [anon_sym_uint208] = ACTIONS(680),
    [anon_sym_uint216] = ACTIONS(680),
    [anon_sym_uint224] = ACTIONS(680),
    [anon_sym_uint232] = ACTIONS(680),
    [anon_sym_uint240] = ACTIONS(680),
    [anon_sym_uint248] = ACTIONS(680),
    [anon_sym_uint256] = ACTIONS(680),
    [anon_sym_bytes] = ACTIONS(680),
    [anon_sym_bytes1] = ACTIONS(680),
    [anon_sym_bytes2] = ACTIONS(680),
    [anon_sym_bytes3] = ACTIONS(680),
    [anon_sym_bytes4] = ACTIONS(680),
    [anon_sym_bytes5] = ACTIONS(680),
    [anon_sym_bytes6] = ACTIONS(680),
    [anon_sym_bytes7] = ACTIONS(680),
    [anon_sym_bytes8] = ACTIONS(680),
    [anon_sym_bytes9] = ACTIONS(680),
    [anon_sym_bytes10] = ACTIONS(680),
    [anon_sym_bytes11] = ACTIONS(680),
    [anon_sym_bytes12] = ACTIONS(680),
    [anon_sym_bytes13] = ACTIONS(680),
    [anon_sym_bytes14] = ACTIONS(680),
    [anon_sym_bytes15] = ACTIONS(680),
    [anon_sym_bytes16] = ACTIONS(680),
    [anon_sym_bytes17] = ACTIONS(680),
    [anon_sym_bytes18] = ACTIONS(680),
    [anon_sym_bytes19] = ACTIONS(680),
    [anon_sym_bytes20] = ACTIONS(680),
    [anon_sym_bytes21] = ACTIONS(680),
    [anon_sym_bytes22] = ACTIONS(680),
    [anon_sym_bytes23] = ACTIONS(680),
    [anon_sym_bytes24] = ACTIONS(680),
    [anon_sym_bytes25] = ACTIONS(680),
    [anon_sym_bytes26] = ACTIONS(680),
    [anon_sym_bytes27] = ACTIONS(680),
    [anon_sym_bytes28] = ACTIONS(680),
    [anon_sym_bytes29] = ACTIONS(680),
    [anon_sym_bytes30] = ACTIONS(680),
    [anon_sym_bytes31] = ACTIONS(680),
    [anon_sym_bytes32] = ACTIONS(680),
    [anon_sym_fixed] = ACTIONS(680),
    [aux_sym__fixed_token1] = ACTIONS(680),
    [anon_sym_ufixed] = ACTIONS(680),
    [aux_sym__ufixed_token1] = ACTIONS(680),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(217)] = {
    [sym_identifier] = ACTIONS(704),
    [anon_sym_RBRACE] = ACTIONS(702),
    [anon_sym_type] = ACTIONS(704),
    [anon_sym_error] = ACTIONS(704),
    [anon_sym_struct] = ACTIONS(704),
    [anon_sym_enum] = ACTIONS(704),
    [anon_sym_event] = ACTIONS(704),
    [anon_sym_using] = ACTIONS(704),
    [anon_sym_function] = ACTIONS(704),
    [anon_sym_byte] = ACTIONS(704),
    [anon_sym_address] = ACTIONS(704),
    [anon_sym_var] = ACTIONS(704),
    [anon_sym_modifier] = ACTIONS(704),
    [anon_sym_constructor] = ACTIONS(704),
    [anon_sym_fallback] = ACTIONS(704),
    [anon_sym_receive] = ACTIONS(704),
    [anon_sym_mapping] = ACTIONS(704),
    [anon_sym_bool] = ACTIONS(704),
    [anon_sym_string] = ACTIONS(704),
    [anon_sym_int] = ACTIONS(704),
    [anon_sym_int8] = ACTIONS(704),
    [anon_sym_int16] = ACTIONS(704),
    [anon_sym_int24] = ACTIONS(704),
    [anon_sym_int32] = ACTIONS(704),
    [anon_sym_int40] = ACTIONS(704),
    [anon_sym_int48] = ACTIONS(704),
    [anon_sym_int56] = ACTIONS(704),
    [anon_sym_int64] = ACTIONS(704),
    [anon_sym_int72] = ACTIONS(704),
    [anon_sym_int80] = ACTIONS(704),
    [anon_sym_int88] = ACTIONS(704),
    [anon_sym_int96] = ACTIONS(704),
    [anon_sym_int104] = ACTIONS(704),
    [anon_sym_int112] = ACTIONS(704),
    [anon_sym_int120] = ACTIONS(704),
    [anon_sym_int128] = ACTIONS(704),
    [anon_sym_int136] = ACTIONS(704),
    [anon_sym_int144] = ACTIONS(704),
    [anon_sym_int152] = ACTIONS(704),
    [anon_sym_int160] = ACTIONS(704),
    [anon_sym_int168] = ACTIONS(704),
    [anon_sym_int176] = ACTIONS(704),
    [anon_sym_int184] = ACTIONS(704),
    [anon_sym_int192] = ACTIONS(704),
    [anon_sym_int200] = ACTIONS(704),
    [anon_sym_int208] = ACTIONS(704),
    [anon_sym_int216] = ACTIONS(704),
    [anon_sym_int224] = ACTIONS(704),
    [anon_sym_int232] = ACTIONS(704),
    [anon_sym_int240] = ACTIONS(704),
    [anon_sym_int248] = ACTIONS(704),
    [anon_sym_int256] = ACTIONS(704),
    [anon_sym_uint] = ACTIONS(704),
    [anon_sym_uint8] = ACTIONS(704),
    [anon_sym_uint16] = ACTIONS(704),
    [anon_sym_uint24] = ACTIONS(704),
    [anon_sym_uint32] = ACTIONS(704),
    [anon_sym_uint40] = ACTIONS(704),
    [anon_sym_uint48] = ACTIONS(704),
    [anon_sym_uint56] = ACTIONS(704),
    [anon_sym_uint64] = ACTIONS(704),
    [anon_sym_uint72] = ACTIONS(704),
    [anon_sym_uint80] = ACTIONS(704),
    [anon_sym_uint88] = ACTIONS(704),
    [anon_sym_uint96] = ACTIONS(704),
    [anon_sym_uint104] = ACTIONS(704),
    [anon_sym_uint112] = ACTIONS(704),
    [anon_sym_uint120] = ACTIONS(704),
    [anon_sym_uint128] = ACTIONS(704),
    [anon_sym_uint136] = ACTIONS(704),
    [anon_sym_uint144] = ACTIONS(704),
    [anon_sym_uint152] = ACTIONS(704),
    [anon_sym_uint160] = ACTIONS(704),
    [anon_sym_uint168] = ACTIONS(704),
    [anon_sym_uint176] = ACTIONS(704),
    [anon_sym_uint184] = ACTIONS(704),
    [anon_sym_uint192] = ACTIONS(704),
    [anon_sym_uint200] = ACTIONS(704),
    [anon_sym_uint208] = ACTIONS(704),
    [anon_sym_uint216] = ACTIONS(704),
    [anon_sym_uint224] = ACTIONS(704),
    [anon_sym_uint232] = ACTIONS(704),
    [anon_sym_uint240] = ACTIONS(704),
    [anon_sym_uint248] = ACTIONS(704),
    [anon_sym_uint256] = ACTIONS(704),
    [anon_sym_bytes] = ACTIONS(704),
    [anon_sym_bytes1] = ACTIONS(704),
    [anon_sym_bytes2] = ACTIONS(704),
    [anon_sym_bytes3] = ACTIONS(704),
    [anon_sym_bytes4] = ACTIONS(704),
    [anon_sym_bytes5] = ACTIONS(704),
    [anon_sym_bytes6] = ACTIONS(704),
    [anon_sym_bytes7] = ACTIONS(704),
    [anon_sym_bytes8] = ACTIONS(704),
    [anon_sym_bytes9] = ACTIONS(704),
    [anon_sym_bytes10] = ACTIONS(704),
    [anon_sym_bytes11] = ACTIONS(704),
    [anon_sym_bytes12] = ACTIONS(704),
    [anon_sym_bytes13] = ACTIONS(704),
    [anon_sym_bytes14] = ACTIONS(704),
    [anon_sym_bytes15] = ACTIONS(704),
    [anon_sym_bytes16] = ACTIONS(704),
    [anon_sym_bytes17] = ACTIONS(704),
    [anon_sym_bytes18] = ACTIONS(704),
    [anon_sym_bytes19] = ACTIONS(704),
    [anon_sym_bytes20] = ACTIONS(704),
    [anon_sym_bytes21] = ACTIONS(704),
    [anon_sym_bytes22] = ACTIONS(704),
    [anon_sym_bytes23] = ACTIONS(704),
    [anon_sym_bytes24] = ACTIONS(704),
    [anon_sym_bytes25] = ACTIONS(704),
    [anon_sym_bytes26] = ACTIONS(704),
    [anon_sym_bytes27] = ACTIONS(704),
    [anon_sym_bytes28] = ACTIONS(704),
    [anon_sym_bytes29] = ACTIONS(704),
    [anon_sym_bytes30] = ACTIONS(704),
    [anon_sym_bytes31] = ACTIONS(704),
    [anon_sym_bytes32] = ACTIONS(704),
    [anon_sym_fixed] = ACTIONS(704),
    [aux_sym__fixed_token1] = ACTIONS(704),
    [anon_sym_ufixed] = ACTIONS(704),
    [aux_sym__ufixed_token1] = ACTIONS(704),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(218)] = {
    [sym_identifier] = ACTIONS(636),
    [anon_sym_RBRACE] = ACTIONS(634),
    [anon_sym_type] = ACTIONS(636),
    [anon_sym_error] = ACTIONS(636),
    [anon_sym_struct] = ACTIONS(636),
    [anon_sym_enum] = ACTIONS(636),
    [anon_sym_event] = ACTIONS(636),
    [anon_sym_using] = ACTIONS(636),
    [anon_sym_function] = ACTIONS(636),
    [anon_sym_byte] = ACTIONS(636),
    [anon_sym_address] = ACTIONS(636),
    [anon_sym_var] = ACTIONS(636),
    [anon_sym_modifier] = ACTIONS(636),
    [anon_sym_constructor] = ACTIONS(636),
    [anon_sym_fallback] = ACTIONS(636),
    [anon_sym_receive] = ACTIONS(636),
    [anon_sym_mapping] = ACTIONS(636),
    [anon_sym_bool] = ACTIONS(636),
    [anon_sym_string] = ACTIONS(636),
    [anon_sym_int] = ACTIONS(636),
    [anon_sym_int8] = ACTIONS(636),
    [anon_sym_int16] = ACTIONS(636),
    [anon_sym_int24] = ACTIONS(636),
    [anon_sym_int32] = ACTIONS(636),
    [anon_sym_int40] = ACTIONS(636),
    [anon_sym_int48] = ACTIONS(636),
    [anon_sym_int56] = ACTIONS(636),
    [anon_sym_int64] = ACTIONS(636),
    [anon_sym_int72] = ACTIONS(636),
    [anon_sym_int80] = ACTIONS(636),
    [anon_sym_int88] = ACTIONS(636),
    [anon_sym_int96] = ACTIONS(636),
    [anon_sym_int104] = ACTIONS(636),
    [anon_sym_int112] = ACTIONS(636),
    [anon_sym_int120] = ACTIONS(636),
    [anon_sym_int128] = ACTIONS(636),
    [anon_sym_int136] = ACTIONS(636),
    [anon_sym_int144] = ACTIONS(636),
    [anon_sym_int152] = ACTIONS(636),
    [anon_sym_int160] = ACTIONS(636),
    [anon_sym_int168] = ACTIONS(636),
    [anon_sym_int176] = ACTIONS(636),
    [anon_sym_int184] = ACTIONS(636),
    [anon_sym_int192] = ACTIONS(636),
    [anon_sym_int200] = ACTIONS(636),
    [anon_sym_int208] = ACTIONS(636),
    [anon_sym_int216] = ACTIONS(636),
    [anon_sym_int224] = ACTIONS(636),
    [anon_sym_int232] = ACTIONS(636),
    [anon_sym_int240] = ACTIONS(636),
    [anon_sym_int248] = ACTIONS(636),
    [anon_sym_int256] = ACTIONS(636),
    [anon_sym_uint] = ACTIONS(636),
    [anon_sym_uint8] = ACTIONS(636),
    [anon_sym_uint16] = ACTIONS(636),
    [anon_sym_uint24] = ACTIONS(636),
    [anon_sym_uint32] = ACTIONS(636),
    [anon_sym_uint40] = ACTIONS(636),
    [anon_sym_uint48] = ACTIONS(636),
    [anon_sym_uint56] = ACTIONS(636),
    [anon_sym_uint64] = ACTIONS(636),
    [anon_sym_uint72] = ACTIONS(636),
    [anon_sym_uint80] = ACTIONS(636),
    [anon_sym_uint88] = ACTIONS(636),
    [anon_sym_uint96] = ACTIONS(636),
    [anon_sym_uint104] = ACTIONS(636),
    [anon_sym_uint112] = ACTIONS(636),
    [anon_sym_uint120] = ACTIONS(636),
    [anon_sym_uint128] = ACTIONS(636),
    [anon_sym_uint136] = ACTIONS(636),
    [anon_sym_uint144] = ACTIONS(636),
    [anon_sym_uint152] = ACTIONS(636),
    [anon_sym_uint160] = ACTIONS(636),
    [anon_sym_uint168] = ACTIONS(636),
    [anon_sym_uint176] = ACTIONS(636),
    [anon_sym_uint184] = ACTIONS(636),
    [anon_sym_uint192] = ACTIONS(636),
    [anon_sym_uint200] = ACTIONS(636),
    [anon_sym_uint208] = ACTIONS(636),
    [anon_sym_uint216] = ACTIONS(636),
    [anon_sym_uint224] = ACTIONS(636),
    [anon_sym_uint232] = ACTIONS(636),
    [anon_sym_uint240] = ACTIONS(636),
    [anon_sym_uint248] = ACTIONS(636),
    [anon_sym_uint256] = ACTIONS(636),
    [anon_sym_bytes] = ACTIONS(636),
    [anon_sym_bytes1] = ACTIONS(636),
    [anon_sym_bytes2] = ACTIONS(636),
    [anon_sym_bytes3] = ACTIONS(636),
    [anon_sym_bytes4] = ACTIONS(636),
    [anon_sym_bytes5] = ACTIONS(636),
    [anon_sym_bytes6] = ACTIONS(636),
    [anon_sym_bytes7] = ACTIONS(636),
    [anon_sym_bytes8] = ACTIONS(636),
    [anon_sym_bytes9] = ACTIONS(636),
    [anon_sym_bytes10] = ACTIONS(636),
    [anon_sym_bytes11] = ACTIONS(636),
    [anon_sym_bytes12] = ACTIONS(636),
    [anon_sym_bytes13] = ACTIONS(636),
    [anon_sym_bytes14] = ACTIONS(636),
    [anon_sym_bytes15] = ACTIONS(636),
    [anon_sym_bytes16] = ACTIONS(636),
    [anon_sym_bytes17] = ACTIONS(636),
    [anon_sym_bytes18] = ACTIONS(636),
    [anon_sym_bytes19] = ACTIONS(636),
    [anon_sym_bytes20] = ACTIONS(636),
    [anon_sym_bytes21] = ACTIONS(636),
    [anon_sym_bytes22] = ACTIONS(636),
    [anon_sym_bytes23] = ACTIONS(636),
    [anon_sym_bytes24] = ACTIONS(636),
    [anon_sym_bytes25] = ACTIONS(636),
    [anon_sym_bytes26] = ACTIONS(636),
    [anon_sym_bytes27] = ACTIONS(636),
    [anon_sym_bytes28] = ACTIONS(636),
    [anon_sym_bytes29] = ACTIONS(636),
    [anon_sym_bytes30] = ACTIONS(636),
    [anon_sym_bytes31] = ACTIONS(636),
    [anon_sym_bytes32] = ACTIONS(636),
    [anon_sym_fixed] = ACTIONS(636),
    [aux_sym__fixed_token1] = ACTIONS(636),
    [anon_sym_ufixed] = ACTIONS(636),
    [aux_sym__ufixed_token1] = ACTIONS(636),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(219)] = {
    [sym_identifier] = ACTIONS(640),
    [anon_sym_RBRACE] = ACTIONS(638),
    [anon_sym_type] = ACTIONS(640),
    [anon_sym_error] = ACTIONS(640),
    [anon_sym_struct] = ACTIONS(640),
    [anon_sym_enum] = ACTIONS(640),
    [anon_sym_event] = ACTIONS(640),
    [anon_sym_using] = ACTIONS(640),
    [anon_sym_function] = ACTIONS(640),
    [anon_sym_byte] = ACTIONS(640),
    [anon_sym_address] = ACTIONS(640),
    [anon_sym_var] = ACTIONS(640),
    [anon_sym_modifier] = ACTIONS(640),
    [anon_sym_constructor] = ACTIONS(640),
    [anon_sym_fallback] = ACTIONS(640),
    [anon_sym_receive] = ACTIONS(640),
    [anon_sym_mapping] = ACTIONS(640),
    [anon_sym_bool] = ACTIONS(640),
    [anon_sym_string] = ACTIONS(640),
    [anon_sym_int] = ACTIONS(640),
    [anon_sym_int8] = ACTIONS(640),
    [anon_sym_int16] = ACTIONS(640),
    [anon_sym_int24] = ACTIONS(640),
    [anon_sym_int32] = ACTIONS(640),
    [anon_sym_int40] = ACTIONS(640),
    [anon_sym_int48] = ACTIONS(640),
    [anon_sym_int56] = ACTIONS(640),
    [anon_sym_int64] = ACTIONS(640),
    [anon_sym_int72] = ACTIONS(640),
    [anon_sym_int80] = ACTIONS(640),
    [anon_sym_int88] = ACTIONS(640),
    [anon_sym_int96] = ACTIONS(640),
    [anon_sym_int104] = ACTIONS(640),
    [anon_sym_int112] = ACTIONS(640),
    [anon_sym_int120] = ACTIONS(640),
    [anon_sym_int128] = ACTIONS(640),
    [anon_sym_int136] = ACTIONS(640),
    [anon_sym_int144] = ACTIONS(640),
    [anon_sym_int152] = ACTIONS(640),
    [anon_sym_int160] = ACTIONS(640),
    [anon_sym_int168] = ACTIONS(640),
    [anon_sym_int176] = ACTIONS(640),
    [anon_sym_int184] = ACTIONS(640),
    [anon_sym_int192] = ACTIONS(640),
    [anon_sym_int200] = ACTIONS(640),
    [anon_sym_int208] = ACTIONS(640),
    [anon_sym_int216] = ACTIONS(640),
    [anon_sym_int224] = ACTIONS(640),
    [anon_sym_int232] = ACTIONS(640),
    [anon_sym_int240] = ACTIONS(640),
    [anon_sym_int248] = ACTIONS(640),
    [anon_sym_int256] = ACTIONS(640),
    [anon_sym_uint] = ACTIONS(640),
    [anon_sym_uint8] = ACTIONS(640),
    [anon_sym_uint16] = ACTIONS(640),
    [anon_sym_uint24] = ACTIONS(640),
    [anon_sym_uint32] = ACTIONS(640),
    [anon_sym_uint40] = ACTIONS(640),
    [anon_sym_uint48] = ACTIONS(640),
    [anon_sym_uint56] = ACTIONS(640),
    [anon_sym_uint64] = ACTIONS(640),
    [anon_sym_uint72] = ACTIONS(640),
    [anon_sym_uint80] = ACTIONS(640),
    [anon_sym_uint88] = ACTIONS(640),
    [anon_sym_uint96] = ACTIONS(640),
    [anon_sym_uint104] = ACTIONS(640),
    [anon_sym_uint112] = ACTIONS(640),
    [anon_sym_uint120] = ACTIONS(640),
    [anon_sym_uint128] = ACTIONS(640),
    [anon_sym_uint136] = ACTIONS(640),
    [anon_sym_uint144] = ACTIONS(640),
    [anon_sym_uint152] = ACTIONS(640),
    [anon_sym_uint160] = ACTIONS(640),
    [anon_sym_uint168] = ACTIONS(640),
    [anon_sym_uint176] = ACTIONS(640),
    [anon_sym_uint184] = ACTIONS(640),
    [anon_sym_uint192] = ACTIONS(640),
    [anon_sym_uint200] = ACTIONS(640),
    [anon_sym_uint208] = ACTIONS(640),
    [anon_sym_uint216] = ACTIONS(640),
    [anon_sym_uint224] = ACTIONS(640),
    [anon_sym_uint232] = ACTIONS(640),
    [anon_sym_uint240] = ACTIONS(640),
    [anon_sym_uint248] = ACTIONS(640),
    [anon_sym_uint256] = ACTIONS(640),
    [anon_sym_bytes] = ACTIONS(640),
    [anon_sym_bytes1] = ACTIONS(640),
    [anon_sym_bytes2] = ACTIONS(640),
    [anon_sym_bytes3] = ACTIONS(640),
    [anon_sym_bytes4] = ACTIONS(640),
    [anon_sym_bytes5] = ACTIONS(640),
    [anon_sym_bytes6] = ACTIONS(640),
    [anon_sym_bytes7] = ACTIONS(640),
    [anon_sym_bytes8] = ACTIONS(640),
    [anon_sym_bytes9] = ACTIONS(640),
    [anon_sym_bytes10] = ACTIONS(640),
    [anon_sym_bytes11] = ACTIONS(640),
    [anon_sym_bytes12] = ACTIONS(640),
    [anon_sym_bytes13] = ACTIONS(640),
    [anon_sym_bytes14] = ACTIONS(640),
    [anon_sym_bytes15] = ACTIONS(640),
    [anon_sym_bytes16] = ACTIONS(640),
    [anon_sym_bytes17] = ACTIONS(640),
    [anon_sym_bytes18] = ACTIONS(640),
    [anon_sym_bytes19] = ACTIONS(640),
    [anon_sym_bytes20] = ACTIONS(640),
    [anon_sym_bytes21] = ACTIONS(640),
    [anon_sym_bytes22] = ACTIONS(640),
    [anon_sym_bytes23] = ACTIONS(640),
    [anon_sym_bytes24] = ACTIONS(640),
    [anon_sym_bytes25] = ACTIONS(640),
    [anon_sym_bytes26] = ACTIONS(640),
    [anon_sym_bytes27] = ACTIONS(640),
    [anon_sym_bytes28] = ACTIONS(640),
    [anon_sym_bytes29] = ACTIONS(640),
    [anon_sym_bytes30] = ACTIONS(640),
    [anon_sym_bytes31] = ACTIONS(640),
    [anon_sym_bytes32] = ACTIONS(640),
    [anon_sym_fixed] = ACTIONS(640),
    [aux_sym__fixed_token1] = ACTIONS(640),
    [anon_sym_ufixed] = ACTIONS(640),
    [aux_sym__ufixed_token1] = ACTIONS(640),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(220)] = {
    [sym_identifier] = ACTIONS(756),
    [anon_sym_RBRACE] = ACTIONS(754),
    [anon_sym_type] = ACTIONS(756),
    [anon_sym_error] = ACTIONS(756),
    [anon_sym_struct] = ACTIONS(756),
    [anon_sym_enum] = ACTIONS(756),
    [anon_sym_event] = ACTIONS(756),
    [anon_sym_using] = ACTIONS(756),
    [anon_sym_function] = ACTIONS(756),
    [anon_sym_byte] = ACTIONS(756),
    [anon_sym_address] = ACTIONS(756),
    [anon_sym_var] = ACTIONS(756),
    [anon_sym_modifier] = ACTIONS(756),
    [anon_sym_constructor] = ACTIONS(756),
    [anon_sym_fallback] = ACTIONS(756),
    [anon_sym_receive] = ACTIONS(756),
    [anon_sym_mapping] = ACTIONS(756),
    [anon_sym_bool] = ACTIONS(756),
    [anon_sym_string] = ACTIONS(756),
    [anon_sym_int] = ACTIONS(756),
    [anon_sym_int8] = ACTIONS(756),
    [anon_sym_int16] = ACTIONS(756),
    [anon_sym_int24] = ACTIONS(756),
    [anon_sym_int32] = ACTIONS(756),
    [anon_sym_int40] = ACTIONS(756),
    [anon_sym_int48] = ACTIONS(756),
    [anon_sym_int56] = ACTIONS(756),
    [anon_sym_int64] = ACTIONS(756),
    [anon_sym_int72] = ACTIONS(756),
    [anon_sym_int80] = ACTIONS(756),
    [anon_sym_int88] = ACTIONS(756),
    [anon_sym_int96] = ACTIONS(756),
    [anon_sym_int104] = ACTIONS(756),
    [anon_sym_int112] = ACTIONS(756),
    [anon_sym_int120] = ACTIONS(756),
    [anon_sym_int128] = ACTIONS(756),
    [anon_sym_int136] = ACTIONS(756),
    [anon_sym_int144] = ACTIONS(756),
    [anon_sym_int152] = ACTIONS(756),
    [anon_sym_int160] = ACTIONS(756),
    [anon_sym_int168] = ACTIONS(756),
    [anon_sym_int176] = ACTIONS(756),
    [anon_sym_int184] = ACTIONS(756),
    [anon_sym_int192] = ACTIONS(756),
    [anon_sym_int200] = ACTIONS(756),
    [anon_sym_int208] = ACTIONS(756),
    [anon_sym_int216] = ACTIONS(756),
    [anon_sym_int224] = ACTIONS(756),
    [anon_sym_int232] = ACTIONS(756),
    [anon_sym_int240] = ACTIONS(756),
    [anon_sym_int248] = ACTIONS(756),
    [anon_sym_int256] = ACTIONS(756),
    [anon_sym_uint] = ACTIONS(756),
    [anon_sym_uint8] = ACTIONS(756),
    [anon_sym_uint16] = ACTIONS(756),
    [anon_sym_uint24] = ACTIONS(756),
    [anon_sym_uint32] = ACTIONS(756),
    [anon_sym_uint40] = ACTIONS(756),
    [anon_sym_uint48] = ACTIONS(756),
    [anon_sym_uint56] = ACTIONS(756),
    [anon_sym_uint64] = ACTIONS(756),
    [anon_sym_uint72] = ACTIONS(756),
    [anon_sym_uint80] = ACTIONS(756),
    [anon_sym_uint88] = ACTIONS(756),
    [anon_sym_uint96] = ACTIONS(756),
    [anon_sym_uint104] = ACTIONS(756),
    [anon_sym_uint112] = ACTIONS(756),
    [anon_sym_uint120] = ACTIONS(756),
    [anon_sym_uint128] = ACTIONS(756),
    [anon_sym_uint136] = ACTIONS(756),
    [anon_sym_uint144] = ACTIONS(756),
    [anon_sym_uint152] = ACTIONS(756),
    [anon_sym_uint160] = ACTIONS(756),
    [anon_sym_uint168] = ACTIONS(756),
    [anon_sym_uint176] = ACTIONS(756),
    [anon_sym_uint184] = ACTIONS(756),
    [anon_sym_uint192] = ACTIONS(756),
    [anon_sym_uint200] = ACTIONS(756),
    [anon_sym_uint208] = ACTIONS(756),
    [anon_sym_uint216] = ACTIONS(756),
    [anon_sym_uint224] = ACTIONS(756),
    [anon_sym_uint232] = ACTIONS(756),
    [anon_sym_uint240] = ACTIONS(756),
    [anon_sym_uint248] = ACTIONS(756),
    [anon_sym_uint256] = ACTIONS(756),
    [anon_sym_bytes] = ACTIONS(756),
    [anon_sym_bytes1] = ACTIONS(756),
    [anon_sym_bytes2] = ACTIONS(756),
    [anon_sym_bytes3] = ACTIONS(756),
    [anon_sym_bytes4] = ACTIONS(756),
    [anon_sym_bytes5] = ACTIONS(756),
    [anon_sym_bytes6] = ACTIONS(756),
    [anon_sym_bytes7] = ACTIONS(756),
    [anon_sym_bytes8] = ACTIONS(756),
    [anon_sym_bytes9] = ACTIONS(756),
    [anon_sym_bytes10] = ACTIONS(756),
    [anon_sym_bytes11] = ACTIONS(756),
    [anon_sym_bytes12] = ACTIONS(756),
    [anon_sym_bytes13] = ACTIONS(756),
    [anon_sym_bytes14] = ACTIONS(756),
    [anon_sym_bytes15] = ACTIONS(756),
    [anon_sym_bytes16] = ACTIONS(756),
    [anon_sym_bytes17] = ACTIONS(756),
    [anon_sym_bytes18] = ACTIONS(756),
    [anon_sym_bytes19] = ACTIONS(756),
    [anon_sym_bytes20] = ACTIONS(756),
    [anon_sym_bytes21] = ACTIONS(756),
    [anon_sym_bytes22] = ACTIONS(756),
    [anon_sym_bytes23] = ACTIONS(756),
    [anon_sym_bytes24] = ACTIONS(756),
    [anon_sym_bytes25] = ACTIONS(756),
    [anon_sym_bytes26] = ACTIONS(756),
    [anon_sym_bytes27] = ACTIONS(756),
    [anon_sym_bytes28] = ACTIONS(756),
    [anon_sym_bytes29] = ACTIONS(756),
    [anon_sym_bytes30] = ACTIONS(756),
    [anon_sym_bytes31] = ACTIONS(756),
    [anon_sym_bytes32] = ACTIONS(756),
    [anon_sym_fixed] = ACTIONS(756),
    [aux_sym__fixed_token1] = ACTIONS(756),
    [anon_sym_ufixed] = ACTIONS(756),
    [aux_sym__ufixed_token1] = ACTIONS(756),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(221)] = {
    [sym_identifier] = ACTIONS(800),
    [anon_sym_RBRACE] = ACTIONS(798),
    [anon_sym_type] = ACTIONS(800),
    [anon_sym_error] = ACTIONS(800),
    [anon_sym_struct] = ACTIONS(800),
    [anon_sym_enum] = ACTIONS(800),
    [anon_sym_event] = ACTIONS(800),
    [anon_sym_using] = ACTIONS(800),
    [anon_sym_function] = ACTIONS(800),
    [anon_sym_byte] = ACTIONS(800),
    [anon_sym_address] = ACTIONS(800),
    [anon_sym_var] = ACTIONS(800),
    [anon_sym_modifier] = ACTIONS(800),
    [anon_sym_constructor] = ACTIONS(800),
    [anon_sym_fallback] = ACTIONS(800),
    [anon_sym_receive] = ACTIONS(800),
    [anon_sym_mapping] = ACTIONS(800),
    [anon_sym_bool] = ACTIONS(800),
    [anon_sym_string] = ACTIONS(800),
    [anon_sym_int] = ACTIONS(800),
    [anon_sym_int8] = ACTIONS(800),
    [anon_sym_int16] = ACTIONS(800),
    [anon_sym_int24] = ACTIONS(800),
    [anon_sym_int32] = ACTIONS(800),
    [anon_sym_int40] = ACTIONS(800),
    [anon_sym_int48] = ACTIONS(800),
    [anon_sym_int56] = ACTIONS(800),
    [anon_sym_int64] = ACTIONS(800),
    [anon_sym_int72] = ACTIONS(800),
    [anon_sym_int80] = ACTIONS(800),
    [anon_sym_int88] = ACTIONS(800),
    [anon_sym_int96] = ACTIONS(800),
    [anon_sym_int104] = ACTIONS(800),
    [anon_sym_int112] = ACTIONS(800),
    [anon_sym_int120] = ACTIONS(800),
    [anon_sym_int128] = ACTIONS(800),
    [anon_sym_int136] = ACTIONS(800),
    [anon_sym_int144] = ACTIONS(800),
    [anon_sym_int152] = ACTIONS(800),
    [anon_sym_int160] = ACTIONS(800),
    [anon_sym_int168] = ACTIONS(800),
    [anon_sym_int176] = ACTIONS(800),
    [anon_sym_int184] = ACTIONS(800),
    [anon_sym_int192] = ACTIONS(800),
    [anon_sym_int200] = ACTIONS(800),
    [anon_sym_int208] = ACTIONS(800),
    [anon_sym_int216] = ACTIONS(800),
    [anon_sym_int224] = ACTIONS(800),
    [anon_sym_int232] = ACTIONS(800),
    [anon_sym_int240] = ACTIONS(800),
    [anon_sym_int248] = ACTIONS(800),
    [anon_sym_int256] = ACTIONS(800),
    [anon_sym_uint] = ACTIONS(800),
    [anon_sym_uint8] = ACTIONS(800),
    [anon_sym_uint16] = ACTIONS(800),
    [anon_sym_uint24] = ACTIONS(800),
    [anon_sym_uint32] = ACTIONS(800),
    [anon_sym_uint40] = ACTIONS(800),
    [anon_sym_uint48] = ACTIONS(800),
    [anon_sym_uint56] = ACTIONS(800),
    [anon_sym_uint64] = ACTIONS(800),
    [anon_sym_uint72] = ACTIONS(800),
    [anon_sym_uint80] = ACTIONS(800),
    [anon_sym_uint88] = ACTIONS(800),
    [anon_sym_uint96] = ACTIONS(800),
    [anon_sym_uint104] = ACTIONS(800),
    [anon_sym_uint112] = ACTIONS(800),
    [anon_sym_uint120] = ACTIONS(800),
    [anon_sym_uint128] = ACTIONS(800),
    [anon_sym_uint136] = ACTIONS(800),
    [anon_sym_uint144] = ACTIONS(800),
    [anon_sym_uint152] = ACTIONS(800),
    [anon_sym_uint160] = ACTIONS(800),
    [anon_sym_uint168] = ACTIONS(800),
    [anon_sym_uint176] = ACTIONS(800),
    [anon_sym_uint184] = ACTIONS(800),
    [anon_sym_uint192] = ACTIONS(800),
    [anon_sym_uint200] = ACTIONS(800),
    [anon_sym_uint208] = ACTIONS(800),
    [anon_sym_uint216] = ACTIONS(800),
    [anon_sym_uint224] = ACTIONS(800),
    [anon_sym_uint232] = ACTIONS(800),
    [anon_sym_uint240] = ACTIONS(800),
    [anon_sym_uint248] = ACTIONS(800),
    [anon_sym_uint256] = ACTIONS(800),
    [anon_sym_bytes] = ACTIONS(800),
    [anon_sym_bytes1] = ACTIONS(800),
    [anon_sym_bytes2] = ACTIONS(800),
    [anon_sym_bytes3] = ACTIONS(800),
    [anon_sym_bytes4] = ACTIONS(800),
    [anon_sym_bytes5] = ACTIONS(800),
    [anon_sym_bytes6] = ACTIONS(800),
    [anon_sym_bytes7] = ACTIONS(800),
    [anon_sym_bytes8] = ACTIONS(800),
    [anon_sym_bytes9] = ACTIONS(800),
    [anon_sym_bytes10] = ACTIONS(800),
    [anon_sym_bytes11] = ACTIONS(800),
    [anon_sym_bytes12] = ACTIONS(800),
    [anon_sym_bytes13] = ACTIONS(800),
    [anon_sym_bytes14] = ACTIONS(800),
    [anon_sym_bytes15] = ACTIONS(800),
    [anon_sym_bytes16] = ACTIONS(800),
    [anon_sym_bytes17] = ACTIONS(800),
    [anon_sym_bytes18] = ACTIONS(800),
    [anon_sym_bytes19] = ACTIONS(800),
    [anon_sym_bytes20] = ACTIONS(800),
    [anon_sym_bytes21] = ACTIONS(800),
    [anon_sym_bytes22] = ACTIONS(800),
    [anon_sym_bytes23] = ACTIONS(800),
    [anon_sym_bytes24] = ACTIONS(800),
    [anon_sym_bytes25] = ACTIONS(800),
    [anon_sym_bytes26] = ACTIONS(800),
    [anon_sym_bytes27] = ACTIONS(800),
    [anon_sym_bytes28] = ACTIONS(800),
    [anon_sym_bytes29] = ACTIONS(800),
    [anon_sym_bytes30] = ACTIONS(800),
    [anon_sym_bytes31] = ACTIONS(800),
    [anon_sym_bytes32] = ACTIONS(800),
    [anon_sym_fixed] = ACTIONS(800),
    [aux_sym__fixed_token1] = ACTIONS(800),
    [anon_sym_ufixed] = ACTIONS(800),
    [aux_sym__ufixed_token1] = ACTIONS(800),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(222)] = {
    [sym_identifier] = ACTIONS(804),
    [anon_sym_RBRACE] = ACTIONS(802),
    [anon_sym_type] = ACTIONS(804),
    [anon_sym_error] = ACTIONS(804),
    [anon_sym_struct] = ACTIONS(804),
    [anon_sym_enum] = ACTIONS(804),
    [anon_sym_event] = ACTIONS(804),
    [anon_sym_using] = ACTIONS(804),
    [anon_sym_function] = ACTIONS(804),
    [anon_sym_byte] = ACTIONS(804),
    [anon_sym_address] = ACTIONS(804),
    [anon_sym_var] = ACTIONS(804),
    [anon_sym_modifier] = ACTIONS(804),
    [anon_sym_constructor] = ACTIONS(804),
    [anon_sym_fallback] = ACTIONS(804),
    [anon_sym_receive] = ACTIONS(804),
    [anon_sym_mapping] = ACTIONS(804),
    [anon_sym_bool] = ACTIONS(804),
    [anon_sym_string] = ACTIONS(804),
    [anon_sym_int] = ACTIONS(804),
    [anon_sym_int8] = ACTIONS(804),
    [anon_sym_int16] = ACTIONS(804),
    [anon_sym_int24] = ACTIONS(804),
    [anon_sym_int32] = ACTIONS(804),
    [anon_sym_int40] = ACTIONS(804),
    [anon_sym_int48] = ACTIONS(804),
    [anon_sym_int56] = ACTIONS(804),
    [anon_sym_int64] = ACTIONS(804),
    [anon_sym_int72] = ACTIONS(804),
    [anon_sym_int80] = ACTIONS(804),
    [anon_sym_int88] = ACTIONS(804),
    [anon_sym_int96] = ACTIONS(804),
    [anon_sym_int104] = ACTIONS(804),
    [anon_sym_int112] = ACTIONS(804),
    [anon_sym_int120] = ACTIONS(804),
    [anon_sym_int128] = ACTIONS(804),
    [anon_sym_int136] = ACTIONS(804),
    [anon_sym_int144] = ACTIONS(804),
    [anon_sym_int152] = ACTIONS(804),
    [anon_sym_int160] = ACTIONS(804),
    [anon_sym_int168] = ACTIONS(804),
    [anon_sym_int176] = ACTIONS(804),
    [anon_sym_int184] = ACTIONS(804),
    [anon_sym_int192] = ACTIONS(804),
    [anon_sym_int200] = ACTIONS(804),
    [anon_sym_int208] = ACTIONS(804),
    [anon_sym_int216] = ACTIONS(804),
    [anon_sym_int224] = ACTIONS(804),
    [anon_sym_int232] = ACTIONS(804),
    [anon_sym_int240] = ACTIONS(804),
    [anon_sym_int248] = ACTIONS(804),
    [anon_sym_int256] = ACTIONS(804),
    [anon_sym_uint] = ACTIONS(804),
    [anon_sym_uint8] = ACTIONS(804),
    [anon_sym_uint16] = ACTIONS(804),
    [anon_sym_uint24] = ACTIONS(804),
    [anon_sym_uint32] = ACTIONS(804),
    [anon_sym_uint40] = ACTIONS(804),
    [anon_sym_uint48] = ACTIONS(804),
    [anon_sym_uint56] = ACTIONS(804),
    [anon_sym_uint64] = ACTIONS(804),
    [anon_sym_uint72] = ACTIONS(804),
    [anon_sym_uint80] = ACTIONS(804),
    [anon_sym_uint88] = ACTIONS(804),
    [anon_sym_uint96] = ACTIONS(804),
    [anon_sym_uint104] = ACTIONS(804),
    [anon_sym_uint112] = ACTIONS(804),
    [anon_sym_uint120] = ACTIONS(804),
    [anon_sym_uint128] = ACTIONS(804),
    [anon_sym_uint136] = ACTIONS(804),
    [anon_sym_uint144] = ACTIONS(804),
    [anon_sym_uint152] = ACTIONS(804),
    [anon_sym_uint160] = ACTIONS(804),
    [anon_sym_uint168] = ACTIONS(804),
    [anon_sym_uint176] = ACTIONS(804),
    [anon_sym_uint184] = ACTIONS(804),
    [anon_sym_uint192] = ACTIONS(804),
    [anon_sym_uint200] = ACTIONS(804),
    [anon_sym_uint208] = ACTIONS(804),
    [anon_sym_uint216] = ACTIONS(804),
    [anon_sym_uint224] = ACTIONS(804),
    [anon_sym_uint232] = ACTIONS(804),
    [anon_sym_uint240] = ACTIONS(804),
    [anon_sym_uint248] = ACTIONS(804),
    [anon_sym_uint256] = ACTIONS(804),
    [anon_sym_bytes] = ACTIONS(804),
    [anon_sym_bytes1] = ACTIONS(804),
    [anon_sym_bytes2] = ACTIONS(804),
    [anon_sym_bytes3] = ACTIONS(804),
    [anon_sym_bytes4] = ACTIONS(804),
    [anon_sym_bytes5] = ACTIONS(804),
    [anon_sym_bytes6] = ACTIONS(804),
    [anon_sym_bytes7] = ACTIONS(804),
    [anon_sym_bytes8] = ACTIONS(804),
    [anon_sym_bytes9] = ACTIONS(804),
    [anon_sym_bytes10] = ACTIONS(804),
    [anon_sym_bytes11] = ACTIONS(804),
    [anon_sym_bytes12] = ACTIONS(804),
    [anon_sym_bytes13] = ACTIONS(804),
    [anon_sym_bytes14] = ACTIONS(804),
    [anon_sym_bytes15] = ACTIONS(804),
    [anon_sym_bytes16] = ACTIONS(804),
    [anon_sym_bytes17] = ACTIONS(804),
    [anon_sym_bytes18] = ACTIONS(804),
    [anon_sym_bytes19] = ACTIONS(804),
    [anon_sym_bytes20] = ACTIONS(804),
    [anon_sym_bytes21] = ACTIONS(804),
    [anon_sym_bytes22] = ACTIONS(804),
    [anon_sym_bytes23] = ACTIONS(804),
    [anon_sym_bytes24] = ACTIONS(804),
    [anon_sym_bytes25] = ACTIONS(804),
    [anon_sym_bytes26] = ACTIONS(804),
    [anon_sym_bytes27] = ACTIONS(804),
    [anon_sym_bytes28] = ACTIONS(804),
    [anon_sym_bytes29] = ACTIONS(804),
    [anon_sym_bytes30] = ACTIONS(804),
    [anon_sym_bytes31] = ACTIONS(804),
    [anon_sym_bytes32] = ACTIONS(804),
    [anon_sym_fixed] = ACTIONS(804),
    [aux_sym__fixed_token1] = ACTIONS(804),
    [anon_sym_ufixed] = ACTIONS(804),
    [aux_sym__ufixed_token1] = ACTIONS(804),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(223)] = {
    [sym_identifier] = ACTIONS(700),
    [anon_sym_RBRACE] = ACTIONS(698),
    [anon_sym_type] = ACTIONS(700),
    [anon_sym_error] = ACTIONS(700),
    [anon_sym_struct] = ACTIONS(700),
    [anon_sym_enum] = ACTIONS(700),
    [anon_sym_event] = ACTIONS(700),
    [anon_sym_using] = ACTIONS(700),
    [anon_sym_function] = ACTIONS(700),
    [anon_sym_byte] = ACTIONS(700),
    [anon_sym_address] = ACTIONS(700),
    [anon_sym_var] = ACTIONS(700),
    [anon_sym_modifier] = ACTIONS(700),
    [anon_sym_constructor] = ACTIONS(700),
    [anon_sym_fallback] = ACTIONS(700),
    [anon_sym_receive] = ACTIONS(700),
    [anon_sym_mapping] = ACTIONS(700),
    [anon_sym_bool] = ACTIONS(700),
    [anon_sym_string] = ACTIONS(700),
    [anon_sym_int] = ACTIONS(700),
    [anon_sym_int8] = ACTIONS(700),
    [anon_sym_int16] = ACTIONS(700),
    [anon_sym_int24] = ACTIONS(700),
    [anon_sym_int32] = ACTIONS(700),
    [anon_sym_int40] = ACTIONS(700),
    [anon_sym_int48] = ACTIONS(700),
    [anon_sym_int56] = ACTIONS(700),
    [anon_sym_int64] = ACTIONS(700),
    [anon_sym_int72] = ACTIONS(700),
    [anon_sym_int80] = ACTIONS(700),
    [anon_sym_int88] = ACTIONS(700),
    [anon_sym_int96] = ACTIONS(700),
    [anon_sym_int104] = ACTIONS(700),
    [anon_sym_int112] = ACTIONS(700),
    [anon_sym_int120] = ACTIONS(700),
    [anon_sym_int128] = ACTIONS(700),
    [anon_sym_int136] = ACTIONS(700),
    [anon_sym_int144] = ACTIONS(700),
    [anon_sym_int152] = ACTIONS(700),
    [anon_sym_int160] = ACTIONS(700),
    [anon_sym_int168] = ACTIONS(700),
    [anon_sym_int176] = ACTIONS(700),
    [anon_sym_int184] = ACTIONS(700),
    [anon_sym_int192] = ACTIONS(700),
    [anon_sym_int200] = ACTIONS(700),
    [anon_sym_int208] = ACTIONS(700),
    [anon_sym_int216] = ACTIONS(700),
    [anon_sym_int224] = ACTIONS(700),
    [anon_sym_int232] = ACTIONS(700),
    [anon_sym_int240] = ACTIONS(700),
    [anon_sym_int248] = ACTIONS(700),
    [anon_sym_int256] = ACTIONS(700),
    [anon_sym_uint] = ACTIONS(700),
    [anon_sym_uint8] = ACTIONS(700),
    [anon_sym_uint16] = ACTIONS(700),
    [anon_sym_uint24] = ACTIONS(700),
    [anon_sym_uint32] = ACTIONS(700),
    [anon_sym_uint40] = ACTIONS(700),
    [anon_sym_uint48] = ACTIONS(700),
    [anon_sym_uint56] = ACTIONS(700),
    [anon_sym_uint64] = ACTIONS(700),
    [anon_sym_uint72] = ACTIONS(700),
    [anon_sym_uint80] = ACTIONS(700),
    [anon_sym_uint88] = ACTIONS(700),
    [anon_sym_uint96] = ACTIONS(700),
    [anon_sym_uint104] = ACTIONS(700),
    [anon_sym_uint112] = ACTIONS(700),
    [anon_sym_uint120] = ACTIONS(700),
    [anon_sym_uint128] = ACTIONS(700),
    [anon_sym_uint136] = ACTIONS(700),
    [anon_sym_uint144] = ACTIONS(700),
    [anon_sym_uint152] = ACTIONS(700),
    [anon_sym_uint160] = ACTIONS(700),
    [anon_sym_uint168] = ACTIONS(700),
    [anon_sym_uint176] = ACTIONS(700),
    [anon_sym_uint184] = ACTIONS(700),
    [anon_sym_uint192] = ACTIONS(700),
    [anon_sym_uint200] = ACTIONS(700),
    [anon_sym_uint208] = ACTIONS(700),
    [anon_sym_uint216] = ACTIONS(700),
    [anon_sym_uint224] = ACTIONS(700),
    [anon_sym_uint232] = ACTIONS(700),
    [anon_sym_uint240] = ACTIONS(700),
    [anon_sym_uint248] = ACTIONS(700),
    [anon_sym_uint256] = ACTIONS(700),
    [anon_sym_bytes] = ACTIONS(700),
    [anon_sym_bytes1] = ACTIONS(700),
    [anon_sym_bytes2] = ACTIONS(700),
    [anon_sym_bytes3] = ACTIONS(700),
    [anon_sym_bytes4] = ACTIONS(700),
    [anon_sym_bytes5] = ACTIONS(700),
    [anon_sym_bytes6] = ACTIONS(700),
    [anon_sym_bytes7] = ACTIONS(700),
    [anon_sym_bytes8] = ACTIONS(700),
    [anon_sym_bytes9] = ACTIONS(700),
    [anon_sym_bytes10] = ACTIONS(700),
    [anon_sym_bytes11] = ACTIONS(700),
    [anon_sym_bytes12] = ACTIONS(700),
    [anon_sym_bytes13] = ACTIONS(700),
    [anon_sym_bytes14] = ACTIONS(700),
    [anon_sym_bytes15] = ACTIONS(700),
    [anon_sym_bytes16] = ACTIONS(700),
    [anon_sym_bytes17] = ACTIONS(700),
    [anon_sym_bytes18] = ACTIONS(700),
    [anon_sym_bytes19] = ACTIONS(700),
    [anon_sym_bytes20] = ACTIONS(700),
    [anon_sym_bytes21] = ACTIONS(700),
    [anon_sym_bytes22] = ACTIONS(700),
    [anon_sym_bytes23] = ACTIONS(700),
    [anon_sym_bytes24] = ACTIONS(700),
    [anon_sym_bytes25] = ACTIONS(700),
    [anon_sym_bytes26] = ACTIONS(700),
    [anon_sym_bytes27] = ACTIONS(700),
    [anon_sym_bytes28] = ACTIONS(700),
    [anon_sym_bytes29] = ACTIONS(700),
    [anon_sym_bytes30] = ACTIONS(700),
    [anon_sym_bytes31] = ACTIONS(700),
    [anon_sym_bytes32] = ACTIONS(700),
    [anon_sym_fixed] = ACTIONS(700),
    [aux_sym__fixed_token1] = ACTIONS(700),
    [anon_sym_ufixed] = ACTIONS(700),
    [aux_sym__ufixed_token1] = ACTIONS(700),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(224)] = {
    [sym_identifier] = ACTIONS(684),
    [anon_sym_RBRACE] = ACTIONS(682),
    [anon_sym_type] = ACTIONS(684),
    [anon_sym_error] = ACTIONS(684),
    [anon_sym_struct] = ACTIONS(684),
    [anon_sym_enum] = ACTIONS(684),
    [anon_sym_event] = ACTIONS(684),
    [anon_sym_using] = ACTIONS(684),
    [anon_sym_function] = ACTIONS(684),
    [anon_sym_byte] = ACTIONS(684),
    [anon_sym_address] = ACTIONS(684),
    [anon_sym_var] = ACTIONS(684),
    [anon_sym_modifier] = ACTIONS(684),
    [anon_sym_constructor] = ACTIONS(684),
    [anon_sym_fallback] = ACTIONS(684),
    [anon_sym_receive] = ACTIONS(684),
    [anon_sym_mapping] = ACTIONS(684),
    [anon_sym_bool] = ACTIONS(684),
    [anon_sym_string] = ACTIONS(684),
    [anon_sym_int] = ACTIONS(684),
    [anon_sym_int8] = ACTIONS(684),
    [anon_sym_int16] = ACTIONS(684),
    [anon_sym_int24] = ACTIONS(684),
    [anon_sym_int32] = ACTIONS(684),
    [anon_sym_int40] = ACTIONS(684),
    [anon_sym_int48] = ACTIONS(684),
    [anon_sym_int56] = ACTIONS(684),
    [anon_sym_int64] = ACTIONS(684),
    [anon_sym_int72] = ACTIONS(684),
    [anon_sym_int80] = ACTIONS(684),
    [anon_sym_int88] = ACTIONS(684),
    [anon_sym_int96] = ACTIONS(684),
    [anon_sym_int104] = ACTIONS(684),
    [anon_sym_int112] = ACTIONS(684),
    [anon_sym_int120] = ACTIONS(684),
    [anon_sym_int128] = ACTIONS(684),
    [anon_sym_int136] = ACTIONS(684),
    [anon_sym_int144] = ACTIONS(684),
    [anon_sym_int152] = ACTIONS(684),
    [anon_sym_int160] = ACTIONS(684),
    [anon_sym_int168] = ACTIONS(684),
    [anon_sym_int176] = ACTIONS(684),
    [anon_sym_int184] = ACTIONS(684),
    [anon_sym_int192] = ACTIONS(684),
    [anon_sym_int200] = ACTIONS(684),
    [anon_sym_int208] = ACTIONS(684),
    [anon_sym_int216] = ACTIONS(684),
    [anon_sym_int224] = ACTIONS(684),
    [anon_sym_int232] = ACTIONS(684),
    [anon_sym_int240] = ACTIONS(684),
    [anon_sym_int248] = ACTIONS(684),
    [anon_sym_int256] = ACTIONS(684),
    [anon_sym_uint] = ACTIONS(684),
    [anon_sym_uint8] = ACTIONS(684),
    [anon_sym_uint16] = ACTIONS(684),
    [anon_sym_uint24] = ACTIONS(684),
    [anon_sym_uint32] = ACTIONS(684),
    [anon_sym_uint40] = ACTIONS(684),
    [anon_sym_uint48] = ACTIONS(684),
    [anon_sym_uint56] = ACTIONS(684),
    [anon_sym_uint64] = ACTIONS(684),
    [anon_sym_uint72] = ACTIONS(684),
    [anon_sym_uint80] = ACTIONS(684),
    [anon_sym_uint88] = ACTIONS(684),
    [anon_sym_uint96] = ACTIONS(684),
    [anon_sym_uint104] = ACTIONS(684),
    [anon_sym_uint112] = ACTIONS(684),
    [anon_sym_uint120] = ACTIONS(684),
    [anon_sym_uint128] = ACTIONS(684),
    [anon_sym_uint136] = ACTIONS(684),
    [anon_sym_uint144] = ACTIONS(684),
    [anon_sym_uint152] = ACTIONS(684),
    [anon_sym_uint160] = ACTIONS(684),
    [anon_sym_uint168] = ACTIONS(684),
    [anon_sym_uint176] = ACTIONS(684),
    [anon_sym_uint184] = ACTIONS(684),
    [anon_sym_uint192] = ACTIONS(684),
    [anon_sym_uint200] = ACTIONS(684),
    [anon_sym_uint208] = ACTIONS(684),
    [anon_sym_uint216] = ACTIONS(684),
    [anon_sym_uint224] = ACTIONS(684),
    [anon_sym_uint232] = ACTIONS(684),
    [anon_sym_uint240] = ACTIONS(684),
    [anon_sym_uint248] = ACTIONS(684),
    [anon_sym_uint256] = ACTIONS(684),
    [anon_sym_bytes] = ACTIONS(684),
    [anon_sym_bytes1] = ACTIONS(684),
    [anon_sym_bytes2] = ACTIONS(684),
    [anon_sym_bytes3] = ACTIONS(684),
    [anon_sym_bytes4] = ACTIONS(684),
    [anon_sym_bytes5] = ACTIONS(684),
    [anon_sym_bytes6] = ACTIONS(684),
    [anon_sym_bytes7] = ACTIONS(684),
    [anon_sym_bytes8] = ACTIONS(684),
    [anon_sym_bytes9] = ACTIONS(684),
    [anon_sym_bytes10] = ACTIONS(684),
    [anon_sym_bytes11] = ACTIONS(684),
    [anon_sym_bytes12] = ACTIONS(684),
    [anon_sym_bytes13] = ACTIONS(684),
    [anon_sym_bytes14] = ACTIONS(684),
    [anon_sym_bytes15] = ACTIONS(684),
    [anon_sym_bytes16] = ACTIONS(684),
    [anon_sym_bytes17] = ACTIONS(684),
    [anon_sym_bytes18] = ACTIONS(684),
    [anon_sym_bytes19] = ACTIONS(684),
    [anon_sym_bytes20] = ACTIONS(684),
    [anon_sym_bytes21] = ACTIONS(684),
    [anon_sym_bytes22] = ACTIONS(684),
    [anon_sym_bytes23] = ACTIONS(684),
    [anon_sym_bytes24] = ACTIONS(684),
    [anon_sym_bytes25] = ACTIONS(684),
    [anon_sym_bytes26] = ACTIONS(684),
    [anon_sym_bytes27] = ACTIONS(684),
    [anon_sym_bytes28] = ACTIONS(684),
    [anon_sym_bytes29] = ACTIONS(684),
    [anon_sym_bytes30] = ACTIONS(684),
    [anon_sym_bytes31] = ACTIONS(684),
    [anon_sym_bytes32] = ACTIONS(684),
    [anon_sym_fixed] = ACTIONS(684),
    [aux_sym__fixed_token1] = ACTIONS(684),
    [anon_sym_ufixed] = ACTIONS(684),
    [aux_sym__ufixed_token1] = ACTIONS(684),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(225)] = {
    [sym_identifier] = ACTIONS(776),
    [anon_sym_RBRACE] = ACTIONS(774),
    [anon_sym_type] = ACTIONS(776),
    [anon_sym_error] = ACTIONS(776),
    [anon_sym_struct] = ACTIONS(776),
    [anon_sym_enum] = ACTIONS(776),
    [anon_sym_event] = ACTIONS(776),
    [anon_sym_using] = ACTIONS(776),
    [anon_sym_function] = ACTIONS(776),
    [anon_sym_byte] = ACTIONS(776),
    [anon_sym_address] = ACTIONS(776),
    [anon_sym_var] = ACTIONS(776),
    [anon_sym_modifier] = ACTIONS(776),
    [anon_sym_constructor] = ACTIONS(776),
    [anon_sym_fallback] = ACTIONS(776),
    [anon_sym_receive] = ACTIONS(776),
    [anon_sym_mapping] = ACTIONS(776),
    [anon_sym_bool] = ACTIONS(776),
    [anon_sym_string] = ACTIONS(776),
    [anon_sym_int] = ACTIONS(776),
    [anon_sym_int8] = ACTIONS(776),
    [anon_sym_int16] = ACTIONS(776),
    [anon_sym_int24] = ACTIONS(776),
    [anon_sym_int32] = ACTIONS(776),
    [anon_sym_int40] = ACTIONS(776),
    [anon_sym_int48] = ACTIONS(776),
    [anon_sym_int56] = ACTIONS(776),
    [anon_sym_int64] = ACTIONS(776),
    [anon_sym_int72] = ACTIONS(776),
    [anon_sym_int80] = ACTIONS(776),
    [anon_sym_int88] = ACTIONS(776),
    [anon_sym_int96] = ACTIONS(776),
    [anon_sym_int104] = ACTIONS(776),
    [anon_sym_int112] = ACTIONS(776),
    [anon_sym_int120] = ACTIONS(776),
    [anon_sym_int128] = ACTIONS(776),
    [anon_sym_int136] = ACTIONS(776),
    [anon_sym_int144] = ACTIONS(776),
    [anon_sym_int152] = ACTIONS(776),
    [anon_sym_int160] = ACTIONS(776),
    [anon_sym_int168] = ACTIONS(776),
    [anon_sym_int176] = ACTIONS(776),
    [anon_sym_int184] = ACTIONS(776),
    [anon_sym_int192] = ACTIONS(776),
    [anon_sym_int200] = ACTIONS(776),
    [anon_sym_int208] = ACTIONS(776),
    [anon_sym_int216] = ACTIONS(776),
    [anon_sym_int224] = ACTIONS(776),
    [anon_sym_int232] = ACTIONS(776),
    [anon_sym_int240] = ACTIONS(776),
    [anon_sym_int248] = ACTIONS(776),
    [anon_sym_int256] = ACTIONS(776),
    [anon_sym_uint] = ACTIONS(776),
    [anon_sym_uint8] = ACTIONS(776),
    [anon_sym_uint16] = ACTIONS(776),
    [anon_sym_uint24] = ACTIONS(776),
    [anon_sym_uint32] = ACTIONS(776),
    [anon_sym_uint40] = ACTIONS(776),
    [anon_sym_uint48] = ACTIONS(776),
    [anon_sym_uint56] = ACTIONS(776),
    [anon_sym_uint64] = ACTIONS(776),
    [anon_sym_uint72] = ACTIONS(776),
    [anon_sym_uint80] = ACTIONS(776),
    [anon_sym_uint88] = ACTIONS(776),
    [anon_sym_uint96] = ACTIONS(776),
    [anon_sym_uint104] = ACTIONS(776),
    [anon_sym_uint112] = ACTIONS(776),
    [anon_sym_uint120] = ACTIONS(776),
    [anon_sym_uint128] = ACTIONS(776),
    [anon_sym_uint136] = ACTIONS(776),
    [anon_sym_uint144] = ACTIONS(776),
    [anon_sym_uint152] = ACTIONS(776),
    [anon_sym_uint160] = ACTIONS(776),
    [anon_sym_uint168] = ACTIONS(776),
    [anon_sym_uint176] = ACTIONS(776),
    [anon_sym_uint184] = ACTIONS(776),
    [anon_sym_uint192] = ACTIONS(776),
    [anon_sym_uint200] = ACTIONS(776),
    [anon_sym_uint208] = ACTIONS(776),
    [anon_sym_uint216] = ACTIONS(776),
    [anon_sym_uint224] = ACTIONS(776),
    [anon_sym_uint232] = ACTIONS(776),
    [anon_sym_uint240] = ACTIONS(776),
    [anon_sym_uint248] = ACTIONS(776),
    [anon_sym_uint256] = ACTIONS(776),
    [anon_sym_bytes] = ACTIONS(776),
    [anon_sym_bytes1] = ACTIONS(776),
    [anon_sym_bytes2] = ACTIONS(776),
    [anon_sym_bytes3] = ACTIONS(776),
    [anon_sym_bytes4] = ACTIONS(776),
    [anon_sym_bytes5] = ACTIONS(776),
    [anon_sym_bytes6] = ACTIONS(776),
    [anon_sym_bytes7] = ACTIONS(776),
    [anon_sym_bytes8] = ACTIONS(776),
    [anon_sym_bytes9] = ACTIONS(776),
    [anon_sym_bytes10] = ACTIONS(776),
    [anon_sym_bytes11] = ACTIONS(776),
    [anon_sym_bytes12] = ACTIONS(776),
    [anon_sym_bytes13] = ACTIONS(776),
    [anon_sym_bytes14] = ACTIONS(776),
    [anon_sym_bytes15] = ACTIONS(776),
    [anon_sym_bytes16] = ACTIONS(776),
    [anon_sym_bytes17] = ACTIONS(776),
    [anon_sym_bytes18] = ACTIONS(776),
    [anon_sym_bytes19] = ACTIONS(776),
    [anon_sym_bytes20] = ACTIONS(776),
    [anon_sym_bytes21] = ACTIONS(776),
    [anon_sym_bytes22] = ACTIONS(776),
    [anon_sym_bytes23] = ACTIONS(776),
    [anon_sym_bytes24] = ACTIONS(776),
    [anon_sym_bytes25] = ACTIONS(776),
    [anon_sym_bytes26] = ACTIONS(776),
    [anon_sym_bytes27] = ACTIONS(776),
    [anon_sym_bytes28] = ACTIONS(776),
    [anon_sym_bytes29] = ACTIONS(776),
    [anon_sym_bytes30] = ACTIONS(776),
    [anon_sym_bytes31] = ACTIONS(776),
    [anon_sym_bytes32] = ACTIONS(776),
    [anon_sym_fixed] = ACTIONS(776),
    [aux_sym__fixed_token1] = ACTIONS(776),
    [anon_sym_ufixed] = ACTIONS(776),
    [aux_sym__ufixed_token1] = ACTIONS(776),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(226)] = {
    [sym_identifier] = ACTIONS(792),
    [anon_sym_RBRACE] = ACTIONS(790),
    [anon_sym_type] = ACTIONS(792),
    [anon_sym_error] = ACTIONS(792),
    [anon_sym_struct] = ACTIONS(792),
    [anon_sym_enum] = ACTIONS(792),
    [anon_sym_event] = ACTIONS(792),
    [anon_sym_using] = ACTIONS(792),
    [anon_sym_function] = ACTIONS(792),
    [anon_sym_byte] = ACTIONS(792),
    [anon_sym_address] = ACTIONS(792),
    [anon_sym_var] = ACTIONS(792),
    [anon_sym_modifier] = ACTIONS(792),
    [anon_sym_constructor] = ACTIONS(792),
    [anon_sym_fallback] = ACTIONS(792),
    [anon_sym_receive] = ACTIONS(792),
    [anon_sym_mapping] = ACTIONS(792),
    [anon_sym_bool] = ACTIONS(792),
    [anon_sym_string] = ACTIONS(792),
    [anon_sym_int] = ACTIONS(792),
    [anon_sym_int8] = ACTIONS(792),
    [anon_sym_int16] = ACTIONS(792),
    [anon_sym_int24] = ACTIONS(792),
    [anon_sym_int32] = ACTIONS(792),
    [anon_sym_int40] = ACTIONS(792),
    [anon_sym_int48] = ACTIONS(792),
    [anon_sym_int56] = ACTIONS(792),
    [anon_sym_int64] = ACTIONS(792),
    [anon_sym_int72] = ACTIONS(792),
    [anon_sym_int80] = ACTIONS(792),
    [anon_sym_int88] = ACTIONS(792),
    [anon_sym_int96] = ACTIONS(792),
    [anon_sym_int104] = ACTIONS(792),
    [anon_sym_int112] = ACTIONS(792),
    [anon_sym_int120] = ACTIONS(792),
    [anon_sym_int128] = ACTIONS(792),
    [anon_sym_int136] = ACTIONS(792),
    [anon_sym_int144] = ACTIONS(792),
    [anon_sym_int152] = ACTIONS(792),
    [anon_sym_int160] = ACTIONS(792),
    [anon_sym_int168] = ACTIONS(792),
    [anon_sym_int176] = ACTIONS(792),
    [anon_sym_int184] = ACTIONS(792),
    [anon_sym_int192] = ACTIONS(792),
    [anon_sym_int200] = ACTIONS(792),
    [anon_sym_int208] = ACTIONS(792),
    [anon_sym_int216] = ACTIONS(792),
    [anon_sym_int224] = ACTIONS(792),
    [anon_sym_int232] = ACTIONS(792),
    [anon_sym_int240] = ACTIONS(792),
    [anon_sym_int248] = ACTIONS(792),
    [anon_sym_int256] = ACTIONS(792),
    [anon_sym_uint] = ACTIONS(792),
    [anon_sym_uint8] = ACTIONS(792),
    [anon_sym_uint16] = ACTIONS(792),
    [anon_sym_uint24] = ACTIONS(792),
    [anon_sym_uint32] = ACTIONS(792),
    [anon_sym_uint40] = ACTIONS(792),
    [anon_sym_uint48] = ACTIONS(792),
    [anon_sym_uint56] = ACTIONS(792),
    [anon_sym_uint64] = ACTIONS(792),
    [anon_sym_uint72] = ACTIONS(792),
    [anon_sym_uint80] = ACTIONS(792),
    [anon_sym_uint88] = ACTIONS(792),
    [anon_sym_uint96] = ACTIONS(792),
    [anon_sym_uint104] = ACTIONS(792),
    [anon_sym_uint112] = ACTIONS(792),
    [anon_sym_uint120] = ACTIONS(792),
    [anon_sym_uint128] = ACTIONS(792),
    [anon_sym_uint136] = ACTIONS(792),
    [anon_sym_uint144] = ACTIONS(792),
    [anon_sym_uint152] = ACTIONS(792),
    [anon_sym_uint160] = ACTIONS(792),
    [anon_sym_uint168] = ACTIONS(792),
    [anon_sym_uint176] = ACTIONS(792),
    [anon_sym_uint184] = ACTIONS(792),
    [anon_sym_uint192] = ACTIONS(792),
    [anon_sym_uint200] = ACTIONS(792),
    [anon_sym_uint208] = ACTIONS(792),
    [anon_sym_uint216] = ACTIONS(792),
    [anon_sym_uint224] = ACTIONS(792),
    [anon_sym_uint232] = ACTIONS(792),
    [anon_sym_uint240] = ACTIONS(792),
    [anon_sym_uint248] = ACTIONS(792),
    [anon_sym_uint256] = ACTIONS(792),
    [anon_sym_bytes] = ACTIONS(792),
    [anon_sym_bytes1] = ACTIONS(792),
    [anon_sym_bytes2] = ACTIONS(792),
    [anon_sym_bytes3] = ACTIONS(792),
    [anon_sym_bytes4] = ACTIONS(792),
    [anon_sym_bytes5] = ACTIONS(792),
    [anon_sym_bytes6] = ACTIONS(792),
    [anon_sym_bytes7] = ACTIONS(792),
    [anon_sym_bytes8] = ACTIONS(792),
    [anon_sym_bytes9] = ACTIONS(792),
    [anon_sym_bytes10] = ACTIONS(792),
    [anon_sym_bytes11] = ACTIONS(792),
    [anon_sym_bytes12] = ACTIONS(792),
    [anon_sym_bytes13] = ACTIONS(792),
    [anon_sym_bytes14] = ACTIONS(792),
    [anon_sym_bytes15] = ACTIONS(792),
    [anon_sym_bytes16] = ACTIONS(792),
    [anon_sym_bytes17] = ACTIONS(792),
    [anon_sym_bytes18] = ACTIONS(792),
    [anon_sym_bytes19] = ACTIONS(792),
    [anon_sym_bytes20] = ACTIONS(792),
    [anon_sym_bytes21] = ACTIONS(792),
    [anon_sym_bytes22] = ACTIONS(792),
    [anon_sym_bytes23] = ACTIONS(792),
    [anon_sym_bytes24] = ACTIONS(792),
    [anon_sym_bytes25] = ACTIONS(792),
    [anon_sym_bytes26] = ACTIONS(792),
    [anon_sym_bytes27] = ACTIONS(792),
    [anon_sym_bytes28] = ACTIONS(792),
    [anon_sym_bytes29] = ACTIONS(792),
    [anon_sym_bytes30] = ACTIONS(792),
    [anon_sym_bytes31] = ACTIONS(792),
    [anon_sym_bytes32] = ACTIONS(792),
    [anon_sym_fixed] = ACTIONS(792),
    [aux_sym__fixed_token1] = ACTIONS(792),
    [anon_sym_ufixed] = ACTIONS(792),
    [aux_sym__ufixed_token1] = ACTIONS(792),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(227)] = {
    [sym_identifier] = ACTIONS(828),
    [anon_sym_RBRACE] = ACTIONS(830),
    [anon_sym_type] = ACTIONS(828),
    [anon_sym_error] = ACTIONS(828),
    [anon_sym_struct] = ACTIONS(828),
    [anon_sym_enum] = ACTIONS(828),
    [anon_sym_event] = ACTIONS(828),
    [anon_sym_using] = ACTIONS(828),
    [anon_sym_function] = ACTIONS(828),
    [anon_sym_byte] = ACTIONS(828),
    [anon_sym_address] = ACTIONS(828),
    [anon_sym_var] = ACTIONS(828),
    [anon_sym_modifier] = ACTIONS(828),
    [anon_sym_constructor] = ACTIONS(828),
    [anon_sym_fallback] = ACTIONS(828),
    [anon_sym_receive] = ACTIONS(828),
    [anon_sym_mapping] = ACTIONS(828),
    [anon_sym_bool] = ACTIONS(828),
    [anon_sym_string] = ACTIONS(828),
    [anon_sym_int] = ACTIONS(828),
    [anon_sym_int8] = ACTIONS(828),
    [anon_sym_int16] = ACTIONS(828),
    [anon_sym_int24] = ACTIONS(828),
    [anon_sym_int32] = ACTIONS(828),
    [anon_sym_int40] = ACTIONS(828),
    [anon_sym_int48] = ACTIONS(828),
    [anon_sym_int56] = ACTIONS(828),
    [anon_sym_int64] = ACTIONS(828),
    [anon_sym_int72] = ACTIONS(828),
    [anon_sym_int80] = ACTIONS(828),
    [anon_sym_int88] = ACTIONS(828),
    [anon_sym_int96] = ACTIONS(828),
    [anon_sym_int104] = ACTIONS(828),
    [anon_sym_int112] = ACTIONS(828),
    [anon_sym_int120] = ACTIONS(828),
    [anon_sym_int128] = ACTIONS(828),
    [anon_sym_int136] = ACTIONS(828),
    [anon_sym_int144] = ACTIONS(828),
    [anon_sym_int152] = ACTIONS(828),
    [anon_sym_int160] = ACTIONS(828),
    [anon_sym_int168] = ACTIONS(828),
    [anon_sym_int176] = ACTIONS(828),
    [anon_sym_int184] = ACTIONS(828),
    [anon_sym_int192] = ACTIONS(828),
    [anon_sym_int200] = ACTIONS(828),
    [anon_sym_int208] = ACTIONS(828),
    [anon_sym_int216] = ACTIONS(828),
    [anon_sym_int224] = ACTIONS(828),
    [anon_sym_int232] = ACTIONS(828),
    [anon_sym_int240] = ACTIONS(828),
    [anon_sym_int248] = ACTIONS(828),
    [anon_sym_int256] = ACTIONS(828),
    [anon_sym_uint] = ACTIONS(828),
    [anon_sym_uint8] = ACTIONS(828),
    [anon_sym_uint16] = ACTIONS(828),
    [anon_sym_uint24] = ACTIONS(828),
    [anon_sym_uint32] = ACTIONS(828),
    [anon_sym_uint40] = ACTIONS(828),
    [anon_sym_uint48] = ACTIONS(828),
    [anon_sym_uint56] = ACTIONS(828),
    [anon_sym_uint64] = ACTIONS(828),
    [anon_sym_uint72] = ACTIONS(828),
    [anon_sym_uint80] = ACTIONS(828),
    [anon_sym_uint88] = ACTIONS(828),
    [anon_sym_uint96] = ACTIONS(828),
    [anon_sym_uint104] = ACTIONS(828),
    [anon_sym_uint112] = ACTIONS(828),
    [anon_sym_uint120] = ACTIONS(828),
    [anon_sym_uint128] = ACTIONS(828),
    [anon_sym_uint136] = ACTIONS(828),
    [anon_sym_uint144] = ACTIONS(828),
    [anon_sym_uint152] = ACTIONS(828),
    [anon_sym_uint160] = ACTIONS(828),
    [anon_sym_uint168] = ACTIONS(828),
    [anon_sym_uint176] = ACTIONS(828),
    [anon_sym_uint184] = ACTIONS(828),
    [anon_sym_uint192] = ACTIONS(828),
    [anon_sym_uint200] = ACTIONS(828),
    [anon_sym_uint208] = ACTIONS(828),
    [anon_sym_uint216] = ACTIONS(828),
    [anon_sym_uint224] = ACTIONS(828),
    [anon_sym_uint232] = ACTIONS(828),
    [anon_sym_uint240] = ACTIONS(828),
    [anon_sym_uint248] = ACTIONS(828),
    [anon_sym_uint256] = ACTIONS(828),
    [anon_sym_bytes] = ACTIONS(828),
    [anon_sym_bytes1] = ACTIONS(828),
    [anon_sym_bytes2] = ACTIONS(828),
    [anon_sym_bytes3] = ACTIONS(828),
    [anon_sym_bytes4] = ACTIONS(828),
    [anon_sym_bytes5] = ACTIONS(828),
    [anon_sym_bytes6] = ACTIONS(828),
    [anon_sym_bytes7] = ACTIONS(828),
    [anon_sym_bytes8] = ACTIONS(828),
    [anon_sym_bytes9] = ACTIONS(828),
    [anon_sym_bytes10] = ACTIONS(828),
    [anon_sym_bytes11] = ACTIONS(828),
    [anon_sym_bytes12] = ACTIONS(828),
    [anon_sym_bytes13] = ACTIONS(828),
    [anon_sym_bytes14] = ACTIONS(828),
    [anon_sym_bytes15] = ACTIONS(828),
    [anon_sym_bytes16] = ACTIONS(828),
    [anon_sym_bytes17] = ACTIONS(828),
    [anon_sym_bytes18] = ACTIONS(828),
    [anon_sym_bytes19] = ACTIONS(828),
    [anon_sym_bytes20] = ACTIONS(828),
    [anon_sym_bytes21] = ACTIONS(828),
    [anon_sym_bytes22] = ACTIONS(828),
    [anon_sym_bytes23] = ACTIONS(828),
    [anon_sym_bytes24] = ACTIONS(828),
    [anon_sym_bytes25] = ACTIONS(828),
    [anon_sym_bytes26] = ACTIONS(828),
    [anon_sym_bytes27] = ACTIONS(828),
    [anon_sym_bytes28] = ACTIONS(828),
    [anon_sym_bytes29] = ACTIONS(828),
    [anon_sym_bytes30] = ACTIONS(828),
    [anon_sym_bytes31] = ACTIONS(828),
    [anon_sym_bytes32] = ACTIONS(828),
    [anon_sym_fixed] = ACTIONS(828),
    [aux_sym__fixed_token1] = ACTIONS(828),
    [anon_sym_ufixed] = ACTIONS(828),
    [aux_sym__ufixed_token1] = ACTIONS(828),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(228)] = {
    [sym_identifier] = ACTIONS(832),
    [anon_sym_RBRACE] = ACTIONS(834),
    [anon_sym_type] = ACTIONS(832),
    [anon_sym_error] = ACTIONS(832),
    [anon_sym_struct] = ACTIONS(832),
    [anon_sym_enum] = ACTIONS(832),
    [anon_sym_event] = ACTIONS(832),
    [anon_sym_using] = ACTIONS(832),
    [anon_sym_function] = ACTIONS(832),
    [anon_sym_byte] = ACTIONS(832),
    [anon_sym_address] = ACTIONS(832),
    [anon_sym_var] = ACTIONS(832),
    [anon_sym_modifier] = ACTIONS(832),
    [anon_sym_constructor] = ACTIONS(832),
    [anon_sym_fallback] = ACTIONS(832),
    [anon_sym_receive] = ACTIONS(832),
    [anon_sym_mapping] = ACTIONS(832),
    [anon_sym_bool] = ACTIONS(832),
    [anon_sym_string] = ACTIONS(832),
    [anon_sym_int] = ACTIONS(832),
    [anon_sym_int8] = ACTIONS(832),
    [anon_sym_int16] = ACTIONS(832),
    [anon_sym_int24] = ACTIONS(832),
    [anon_sym_int32] = ACTIONS(832),
    [anon_sym_int40] = ACTIONS(832),
    [anon_sym_int48] = ACTIONS(832),
    [anon_sym_int56] = ACTIONS(832),
    [anon_sym_int64] = ACTIONS(832),
    [anon_sym_int72] = ACTIONS(832),
    [anon_sym_int80] = ACTIONS(832),
    [anon_sym_int88] = ACTIONS(832),
    [anon_sym_int96] = ACTIONS(832),
    [anon_sym_int104] = ACTIONS(832),
    [anon_sym_int112] = ACTIONS(832),
    [anon_sym_int120] = ACTIONS(832),
    [anon_sym_int128] = ACTIONS(832),
    [anon_sym_int136] = ACTIONS(832),
    [anon_sym_int144] = ACTIONS(832),
    [anon_sym_int152] = ACTIONS(832),
    [anon_sym_int160] = ACTIONS(832),
    [anon_sym_int168] = ACTIONS(832),
    [anon_sym_int176] = ACTIONS(832),
    [anon_sym_int184] = ACTIONS(832),
    [anon_sym_int192] = ACTIONS(832),
    [anon_sym_int200] = ACTIONS(832),
    [anon_sym_int208] = ACTIONS(832),
    [anon_sym_int216] = ACTIONS(832),
    [anon_sym_int224] = ACTIONS(832),
    [anon_sym_int232] = ACTIONS(832),
    [anon_sym_int240] = ACTIONS(832),
    [anon_sym_int248] = ACTIONS(832),
    [anon_sym_int256] = ACTIONS(832),
    [anon_sym_uint] = ACTIONS(832),
    [anon_sym_uint8] = ACTIONS(832),
    [anon_sym_uint16] = ACTIONS(832),
    [anon_sym_uint24] = ACTIONS(832),
    [anon_sym_uint32] = ACTIONS(832),
    [anon_sym_uint40] = ACTIONS(832),
    [anon_sym_uint48] = ACTIONS(832),
    [anon_sym_uint56] = ACTIONS(832),
    [anon_sym_uint64] = ACTIONS(832),
    [anon_sym_uint72] = ACTIONS(832),
    [anon_sym_uint80] = ACTIONS(832),
    [anon_sym_uint88] = ACTIONS(832),
    [anon_sym_uint96] = ACTIONS(832),
    [anon_sym_uint104] = ACTIONS(832),
    [anon_sym_uint112] = ACTIONS(832),
    [anon_sym_uint120] = ACTIONS(832),
    [anon_sym_uint128] = ACTIONS(832),
    [anon_sym_uint136] = ACTIONS(832),
    [anon_sym_uint144] = ACTIONS(832),
    [anon_sym_uint152] = ACTIONS(832),
    [anon_sym_uint160] = ACTIONS(832),
    [anon_sym_uint168] = ACTIONS(832),
    [anon_sym_uint176] = ACTIONS(832),
    [anon_sym_uint184] = ACTIONS(832),
    [anon_sym_uint192] = ACTIONS(832),
    [anon_sym_uint200] = ACTIONS(832),
    [anon_sym_uint208] = ACTIONS(832),
    [anon_sym_uint216] = ACTIONS(832),
    [anon_sym_uint224] = ACTIONS(832),
    [anon_sym_uint232] = ACTIONS(832),
    [anon_sym_uint240] = ACTIONS(832),
    [anon_sym_uint248] = ACTIONS(832),
    [anon_sym_uint256] = ACTIONS(832),
    [anon_sym_bytes] = ACTIONS(832),
    [anon_sym_bytes1] = ACTIONS(832),
    [anon_sym_bytes2] = ACTIONS(832),
    [anon_sym_bytes3] = ACTIONS(832),
    [anon_sym_bytes4] = ACTIONS(832),
    [anon_sym_bytes5] = ACTIONS(832),
    [anon_sym_bytes6] = ACTIONS(832),
    [anon_sym_bytes7] = ACTIONS(832),
    [anon_sym_bytes8] = ACTIONS(832),
    [anon_sym_bytes9] = ACTIONS(832),
    [anon_sym_bytes10] = ACTIONS(832),
    [anon_sym_bytes11] = ACTIONS(832),
    [anon_sym_bytes12] = ACTIONS(832),
    [anon_sym_bytes13] = ACTIONS(832),
    [anon_sym_bytes14] = ACTIONS(832),
    [anon_sym_bytes15] = ACTIONS(832),
    [anon_sym_bytes16] = ACTIONS(832),
    [anon_sym_bytes17] = ACTIONS(832),
    [anon_sym_bytes18] = ACTIONS(832),
    [anon_sym_bytes19] = ACTIONS(832),
    [anon_sym_bytes20] = ACTIONS(832),
    [anon_sym_bytes21] = ACTIONS(832),
    [anon_sym_bytes22] = ACTIONS(832),
    [anon_sym_bytes23] = ACTIONS(832),
    [anon_sym_bytes24] = ACTIONS(832),
    [anon_sym_bytes25] = ACTIONS(832),
    [anon_sym_bytes26] = ACTIONS(832),
    [anon_sym_bytes27] = ACTIONS(832),
    [anon_sym_bytes28] = ACTIONS(832),
    [anon_sym_bytes29] = ACTIONS(832),
    [anon_sym_bytes30] = ACTIONS(832),
    [anon_sym_bytes31] = ACTIONS(832),
    [anon_sym_bytes32] = ACTIONS(832),
    [anon_sym_fixed] = ACTIONS(832),
    [aux_sym__fixed_token1] = ACTIONS(832),
    [anon_sym_ufixed] = ACTIONS(832),
    [aux_sym__ufixed_token1] = ACTIONS(832),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(229)] = {
    [sym_identifier] = ACTIONS(648),
    [anon_sym_RBRACE] = ACTIONS(646),
    [anon_sym_type] = ACTIONS(648),
    [anon_sym_error] = ACTIONS(648),
    [anon_sym_struct] = ACTIONS(648),
    [anon_sym_enum] = ACTIONS(648),
    [anon_sym_event] = ACTIONS(648),
    [anon_sym_using] = ACTIONS(648),
    [anon_sym_function] = ACTIONS(648),
    [anon_sym_byte] = ACTIONS(648),
    [anon_sym_address] = ACTIONS(648),
    [anon_sym_var] = ACTIONS(648),
    [anon_sym_modifier] = ACTIONS(648),
    [anon_sym_constructor] = ACTIONS(648),
    [anon_sym_fallback] = ACTIONS(648),
    [anon_sym_receive] = ACTIONS(648),
    [anon_sym_mapping] = ACTIONS(648),
    [anon_sym_bool] = ACTIONS(648),
    [anon_sym_string] = ACTIONS(648),
    [anon_sym_int] = ACTIONS(648),
    [anon_sym_int8] = ACTIONS(648),
    [anon_sym_int16] = ACTIONS(648),
    [anon_sym_int24] = ACTIONS(648),
    [anon_sym_int32] = ACTIONS(648),
    [anon_sym_int40] = ACTIONS(648),
    [anon_sym_int48] = ACTIONS(648),
    [anon_sym_int56] = ACTIONS(648),
    [anon_sym_int64] = ACTIONS(648),
    [anon_sym_int72] = ACTIONS(648),
    [anon_sym_int80] = ACTIONS(648),
    [anon_sym_int88] = ACTIONS(648),
    [anon_sym_int96] = ACTIONS(648),
    [anon_sym_int104] = ACTIONS(648),
    [anon_sym_int112] = ACTIONS(648),
    [anon_sym_int120] = ACTIONS(648),
    [anon_sym_int128] = ACTIONS(648),
    [anon_sym_int136] = ACTIONS(648),
    [anon_sym_int144] = ACTIONS(648),
    [anon_sym_int152] = ACTIONS(648),
    [anon_sym_int160] = ACTIONS(648),
    [anon_sym_int168] = ACTIONS(648),
    [anon_sym_int176] = ACTIONS(648),
    [anon_sym_int184] = ACTIONS(648),
    [anon_sym_int192] = ACTIONS(648),
    [anon_sym_int200] = ACTIONS(648),
    [anon_sym_int208] = ACTIONS(648),
    [anon_sym_int216] = ACTIONS(648),
    [anon_sym_int224] = ACTIONS(648),
    [anon_sym_int232] = ACTIONS(648),
    [anon_sym_int240] = ACTIONS(648),
    [anon_sym_int248] = ACTIONS(648),
    [anon_sym_int256] = ACTIONS(648),
    [anon_sym_uint] = ACTIONS(648),
    [anon_sym_uint8] = ACTIONS(648),
    [anon_sym_uint16] = ACTIONS(648),
    [anon_sym_uint24] = ACTIONS(648),
    [anon_sym_uint32] = ACTIONS(648),
    [anon_sym_uint40] = ACTIONS(648),
    [anon_sym_uint48] = ACTIONS(648),
    [anon_sym_uint56] = ACTIONS(648),
    [anon_sym_uint64] = ACTIONS(648),
    [anon_sym_uint72] = ACTIONS(648),
    [anon_sym_uint80] = ACTIONS(648),
    [anon_sym_uint88] = ACTIONS(648),
    [anon_sym_uint96] = ACTIONS(648),
    [anon_sym_uint104] = ACTIONS(648),
    [anon_sym_uint112] = ACTIONS(648),
    [anon_sym_uint120] = ACTIONS(648),
    [anon_sym_uint128] = ACTIONS(648),
    [anon_sym_uint136] = ACTIONS(648),
    [anon_sym_uint144] = ACTIONS(648),
    [anon_sym_uint152] = ACTIONS(648),
    [anon_sym_uint160] = ACTIONS(648),
    [anon_sym_uint168] = ACTIONS(648),
    [anon_sym_uint176] = ACTIONS(648),
    [anon_sym_uint184] = ACTIONS(648),
    [anon_sym_uint192] = ACTIONS(648),
    [anon_sym_uint200] = ACTIONS(648),
    [anon_sym_uint208] = ACTIONS(648),
    [anon_sym_uint216] = ACTIONS(648),
    [anon_sym_uint224] = ACTIONS(648),
    [anon_sym_uint232] = ACTIONS(648),
    [anon_sym_uint240] = ACTIONS(648),
    [anon_sym_uint248] = ACTIONS(648),
    [anon_sym_uint256] = ACTIONS(648),
    [anon_sym_bytes] = ACTIONS(648),
    [anon_sym_bytes1] = ACTIONS(648),
    [anon_sym_bytes2] = ACTIONS(648),
    [anon_sym_bytes3] = ACTIONS(648),
    [anon_sym_bytes4] = ACTIONS(648),
    [anon_sym_bytes5] = ACTIONS(648),
    [anon_sym_bytes6] = ACTIONS(648),
    [anon_sym_bytes7] = ACTIONS(648),
    [anon_sym_bytes8] = ACTIONS(648),
    [anon_sym_bytes9] = ACTIONS(648),
    [anon_sym_bytes10] = ACTIONS(648),
    [anon_sym_bytes11] = ACTIONS(648),
    [anon_sym_bytes12] = ACTIONS(648),
    [anon_sym_bytes13] = ACTIONS(648),
    [anon_sym_bytes14] = ACTIONS(648),
    [anon_sym_bytes15] = ACTIONS(648),
    [anon_sym_bytes16] = ACTIONS(648),
    [anon_sym_bytes17] = ACTIONS(648),
    [anon_sym_bytes18] = ACTIONS(648),
    [anon_sym_bytes19] = ACTIONS(648),
    [anon_sym_bytes20] = ACTIONS(648),
    [anon_sym_bytes21] = ACTIONS(648),
    [anon_sym_bytes22] = ACTIONS(648),
    [anon_sym_bytes23] = ACTIONS(648),
    [anon_sym_bytes24] = ACTIONS(648),
    [anon_sym_bytes25] = ACTIONS(648),
    [anon_sym_bytes26] = ACTIONS(648),
    [anon_sym_bytes27] = ACTIONS(648),
    [anon_sym_bytes28] = ACTIONS(648),
    [anon_sym_bytes29] = ACTIONS(648),
    [anon_sym_bytes30] = ACTIONS(648),
    [anon_sym_bytes31] = ACTIONS(648),
    [anon_sym_bytes32] = ACTIONS(648),
    [anon_sym_fixed] = ACTIONS(648),
    [aux_sym__fixed_token1] = ACTIONS(648),
    [anon_sym_ufixed] = ACTIONS(648),
    [aux_sym__ufixed_token1] = ACTIONS(648),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(230)] = {
    [sym_identifier] = ACTIONS(664),
    [anon_sym_RBRACE] = ACTIONS(662),
    [anon_sym_type] = ACTIONS(664),
    [anon_sym_error] = ACTIONS(664),
    [anon_sym_struct] = ACTIONS(664),
    [anon_sym_enum] = ACTIONS(664),
    [anon_sym_event] = ACTIONS(664),
    [anon_sym_using] = ACTIONS(664),
    [anon_sym_function] = ACTIONS(664),
    [anon_sym_byte] = ACTIONS(664),
    [anon_sym_address] = ACTIONS(664),
    [anon_sym_var] = ACTIONS(664),
    [anon_sym_modifier] = ACTIONS(664),
    [anon_sym_constructor] = ACTIONS(664),
    [anon_sym_fallback] = ACTIONS(664),
    [anon_sym_receive] = ACTIONS(664),
    [anon_sym_mapping] = ACTIONS(664),
    [anon_sym_bool] = ACTIONS(664),
    [anon_sym_string] = ACTIONS(664),
    [anon_sym_int] = ACTIONS(664),
    [anon_sym_int8] = ACTIONS(664),
    [anon_sym_int16] = ACTIONS(664),
    [anon_sym_int24] = ACTIONS(664),
    [anon_sym_int32] = ACTIONS(664),
    [anon_sym_int40] = ACTIONS(664),
    [anon_sym_int48] = ACTIONS(664),
    [anon_sym_int56] = ACTIONS(664),
    [anon_sym_int64] = ACTIONS(664),
    [anon_sym_int72] = ACTIONS(664),
    [anon_sym_int80] = ACTIONS(664),
    [anon_sym_int88] = ACTIONS(664),
    [anon_sym_int96] = ACTIONS(664),
    [anon_sym_int104] = ACTIONS(664),
    [anon_sym_int112] = ACTIONS(664),
    [anon_sym_int120] = ACTIONS(664),
    [anon_sym_int128] = ACTIONS(664),
    [anon_sym_int136] = ACTIONS(664),
    [anon_sym_int144] = ACTIONS(664),
    [anon_sym_int152] = ACTIONS(664),
    [anon_sym_int160] = ACTIONS(664),
    [anon_sym_int168] = ACTIONS(664),
    [anon_sym_int176] = ACTIONS(664),
    [anon_sym_int184] = ACTIONS(664),
    [anon_sym_int192] = ACTIONS(664),
    [anon_sym_int200] = ACTIONS(664),
    [anon_sym_int208] = ACTIONS(664),
    [anon_sym_int216] = ACTIONS(664),
    [anon_sym_int224] = ACTIONS(664),
    [anon_sym_int232] = ACTIONS(664),
    [anon_sym_int240] = ACTIONS(664),
    [anon_sym_int248] = ACTIONS(664),
    [anon_sym_int256] = ACTIONS(664),
    [anon_sym_uint] = ACTIONS(664),
    [anon_sym_uint8] = ACTIONS(664),
    [anon_sym_uint16] = ACTIONS(664),
    [anon_sym_uint24] = ACTIONS(664),
    [anon_sym_uint32] = ACTIONS(664),
    [anon_sym_uint40] = ACTIONS(664),
    [anon_sym_uint48] = ACTIONS(664),
    [anon_sym_uint56] = ACTIONS(664),
    [anon_sym_uint64] = ACTIONS(664),
    [anon_sym_uint72] = ACTIONS(664),
    [anon_sym_uint80] = ACTIONS(664),
    [anon_sym_uint88] = ACTIONS(664),
    [anon_sym_uint96] = ACTIONS(664),
    [anon_sym_uint104] = ACTIONS(664),
    [anon_sym_uint112] = ACTIONS(664),
    [anon_sym_uint120] = ACTIONS(664),
    [anon_sym_uint128] = ACTIONS(664),
    [anon_sym_uint136] = ACTIONS(664),
    [anon_sym_uint144] = ACTIONS(664),
    [anon_sym_uint152] = ACTIONS(664),
    [anon_sym_uint160] = ACTIONS(664),
    [anon_sym_uint168] = ACTIONS(664),
    [anon_sym_uint176] = ACTIONS(664),
    [anon_sym_uint184] = ACTIONS(664),
    [anon_sym_uint192] = ACTIONS(664),
    [anon_sym_uint200] = ACTIONS(664),
    [anon_sym_uint208] = ACTIONS(664),
    [anon_sym_uint216] = ACTIONS(664),
    [anon_sym_uint224] = ACTIONS(664),
    [anon_sym_uint232] = ACTIONS(664),
    [anon_sym_uint240] = ACTIONS(664),
    [anon_sym_uint248] = ACTIONS(664),
    [anon_sym_uint256] = ACTIONS(664),
    [anon_sym_bytes] = ACTIONS(664),
    [anon_sym_bytes1] = ACTIONS(664),
    [anon_sym_bytes2] = ACTIONS(664),
    [anon_sym_bytes3] = ACTIONS(664),
    [anon_sym_bytes4] = ACTIONS(664),
    [anon_sym_bytes5] = ACTIONS(664),
    [anon_sym_bytes6] = ACTIONS(664),
    [anon_sym_bytes7] = ACTIONS(664),
    [anon_sym_bytes8] = ACTIONS(664),
    [anon_sym_bytes9] = ACTIONS(664),
    [anon_sym_bytes10] = ACTIONS(664),
    [anon_sym_bytes11] = ACTIONS(664),
    [anon_sym_bytes12] = ACTIONS(664),
    [anon_sym_bytes13] = ACTIONS(664),
    [anon_sym_bytes14] = ACTIONS(664),
    [anon_sym_bytes15] = ACTIONS(664),
    [anon_sym_bytes16] = ACTIONS(664),
    [anon_sym_bytes17] = ACTIONS(664),
    [anon_sym_bytes18] = ACTIONS(664),
    [anon_sym_bytes19] = ACTIONS(664),
    [anon_sym_bytes20] = ACTIONS(664),
    [anon_sym_bytes21] = ACTIONS(664),
    [anon_sym_bytes22] = ACTIONS(664),
    [anon_sym_bytes23] = ACTIONS(664),
    [anon_sym_bytes24] = ACTIONS(664),
    [anon_sym_bytes25] = ACTIONS(664),
    [anon_sym_bytes26] = ACTIONS(664),
    [anon_sym_bytes27] = ACTIONS(664),
    [anon_sym_bytes28] = ACTIONS(664),
    [anon_sym_bytes29] = ACTIONS(664),
    [anon_sym_bytes30] = ACTIONS(664),
    [anon_sym_bytes31] = ACTIONS(664),
    [anon_sym_bytes32] = ACTIONS(664),
    [anon_sym_fixed] = ACTIONS(664),
    [aux_sym__fixed_token1] = ACTIONS(664),
    [anon_sym_ufixed] = ACTIONS(664),
    [aux_sym__ufixed_token1] = ACTIONS(664),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(231)] = {
    [sym_identifier] = ACTIONS(668),
    [anon_sym_RBRACE] = ACTIONS(666),
    [anon_sym_type] = ACTIONS(668),
    [anon_sym_error] = ACTIONS(668),
    [anon_sym_struct] = ACTIONS(668),
    [anon_sym_enum] = ACTIONS(668),
    [anon_sym_event] = ACTIONS(668),
    [anon_sym_using] = ACTIONS(668),
    [anon_sym_function] = ACTIONS(668),
    [anon_sym_byte] = ACTIONS(668),
    [anon_sym_address] = ACTIONS(668),
    [anon_sym_var] = ACTIONS(668),
    [anon_sym_modifier] = ACTIONS(668),
    [anon_sym_constructor] = ACTIONS(668),
    [anon_sym_fallback] = ACTIONS(668),
    [anon_sym_receive] = ACTIONS(668),
    [anon_sym_mapping] = ACTIONS(668),
    [anon_sym_bool] = ACTIONS(668),
    [anon_sym_string] = ACTIONS(668),
    [anon_sym_int] = ACTIONS(668),
    [anon_sym_int8] = ACTIONS(668),
    [anon_sym_int16] = ACTIONS(668),
    [anon_sym_int24] = ACTIONS(668),
    [anon_sym_int32] = ACTIONS(668),
    [anon_sym_int40] = ACTIONS(668),
    [anon_sym_int48] = ACTIONS(668),
    [anon_sym_int56] = ACTIONS(668),
    [anon_sym_int64] = ACTIONS(668),
    [anon_sym_int72] = ACTIONS(668),
    [anon_sym_int80] = ACTIONS(668),
    [anon_sym_int88] = ACTIONS(668),
    [anon_sym_int96] = ACTIONS(668),
    [anon_sym_int104] = ACTIONS(668),
    [anon_sym_int112] = ACTIONS(668),
    [anon_sym_int120] = ACTIONS(668),
    [anon_sym_int128] = ACTIONS(668),
    [anon_sym_int136] = ACTIONS(668),
    [anon_sym_int144] = ACTIONS(668),
    [anon_sym_int152] = ACTIONS(668),
    [anon_sym_int160] = ACTIONS(668),
    [anon_sym_int168] = ACTIONS(668),
    [anon_sym_int176] = ACTIONS(668),
    [anon_sym_int184] = ACTIONS(668),
    [anon_sym_int192] = ACTIONS(668),
    [anon_sym_int200] = ACTIONS(668),
    [anon_sym_int208] = ACTIONS(668),
    [anon_sym_int216] = ACTIONS(668),
    [anon_sym_int224] = ACTIONS(668),
    [anon_sym_int232] = ACTIONS(668),
    [anon_sym_int240] = ACTIONS(668),
    [anon_sym_int248] = ACTIONS(668),
    [anon_sym_int256] = ACTIONS(668),
    [anon_sym_uint] = ACTIONS(668),
    [anon_sym_uint8] = ACTIONS(668),
    [anon_sym_uint16] = ACTIONS(668),
    [anon_sym_uint24] = ACTIONS(668),
    [anon_sym_uint32] = ACTIONS(668),
    [anon_sym_uint40] = ACTIONS(668),
    [anon_sym_uint48] = ACTIONS(668),
    [anon_sym_uint56] = ACTIONS(668),
    [anon_sym_uint64] = ACTIONS(668),
    [anon_sym_uint72] = ACTIONS(668),
    [anon_sym_uint80] = ACTIONS(668),
    [anon_sym_uint88] = ACTIONS(668),
    [anon_sym_uint96] = ACTIONS(668),
    [anon_sym_uint104] = ACTIONS(668),
    [anon_sym_uint112] = ACTIONS(668),
    [anon_sym_uint120] = ACTIONS(668),
    [anon_sym_uint128] = ACTIONS(668),
    [anon_sym_uint136] = ACTIONS(668),
    [anon_sym_uint144] = ACTIONS(668),
    [anon_sym_uint152] = ACTIONS(668),
    [anon_sym_uint160] = ACTIONS(668),
    [anon_sym_uint168] = ACTIONS(668),
    [anon_sym_uint176] = ACTIONS(668),
    [anon_sym_uint184] = ACTIONS(668),
    [anon_sym_uint192] = ACTIONS(668),
    [anon_sym_uint200] = ACTIONS(668),
    [anon_sym_uint208] = ACTIONS(668),
    [anon_sym_uint216] = ACTIONS(668),
    [anon_sym_uint224] = ACTIONS(668),
    [anon_sym_uint232] = ACTIONS(668),
    [anon_sym_uint240] = ACTIONS(668),
    [anon_sym_uint248] = ACTIONS(668),
    [anon_sym_uint256] = ACTIONS(668),
    [anon_sym_bytes] = ACTIONS(668),
    [anon_sym_bytes1] = ACTIONS(668),
    [anon_sym_bytes2] = ACTIONS(668),
    [anon_sym_bytes3] = ACTIONS(668),
    [anon_sym_bytes4] = ACTIONS(668),
    [anon_sym_bytes5] = ACTIONS(668),
    [anon_sym_bytes6] = ACTIONS(668),
    [anon_sym_bytes7] = ACTIONS(668),
    [anon_sym_bytes8] = ACTIONS(668),
    [anon_sym_bytes9] = ACTIONS(668),
    [anon_sym_bytes10] = ACTIONS(668),
    [anon_sym_bytes11] = ACTIONS(668),
    [anon_sym_bytes12] = ACTIONS(668),
    [anon_sym_bytes13] = ACTIONS(668),
    [anon_sym_bytes14] = ACTIONS(668),
    [anon_sym_bytes15] = ACTIONS(668),
    [anon_sym_bytes16] = ACTIONS(668),
    [anon_sym_bytes17] = ACTIONS(668),
    [anon_sym_bytes18] = ACTIONS(668),
    [anon_sym_bytes19] = ACTIONS(668),
    [anon_sym_bytes20] = ACTIONS(668),
    [anon_sym_bytes21] = ACTIONS(668),
    [anon_sym_bytes22] = ACTIONS(668),
    [anon_sym_bytes23] = ACTIONS(668),
    [anon_sym_bytes24] = ACTIONS(668),
    [anon_sym_bytes25] = ACTIONS(668),
    [anon_sym_bytes26] = ACTIONS(668),
    [anon_sym_bytes27] = ACTIONS(668),
    [anon_sym_bytes28] = ACTIONS(668),
    [anon_sym_bytes29] = ACTIONS(668),
    [anon_sym_bytes30] = ACTIONS(668),
    [anon_sym_bytes31] = ACTIONS(668),
    [anon_sym_bytes32] = ACTIONS(668),
    [anon_sym_fixed] = ACTIONS(668),
    [aux_sym__fixed_token1] = ACTIONS(668),
    [anon_sym_ufixed] = ACTIONS(668),
    [aux_sym__ufixed_token1] = ACTIONS(668),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(232)] = {
    [sym_identifier] = ACTIONS(672),
    [anon_sym_RBRACE] = ACTIONS(670),
    [anon_sym_type] = ACTIONS(672),
    [anon_sym_error] = ACTIONS(672),
    [anon_sym_struct] = ACTIONS(672),
    [anon_sym_enum] = ACTIONS(672),
    [anon_sym_event] = ACTIONS(672),
    [anon_sym_using] = ACTIONS(672),
    [anon_sym_function] = ACTIONS(672),
    [anon_sym_byte] = ACTIONS(672),
    [anon_sym_address] = ACTIONS(672),
    [anon_sym_var] = ACTIONS(672),
    [anon_sym_modifier] = ACTIONS(672),
    [anon_sym_constructor] = ACTIONS(672),
    [anon_sym_fallback] = ACTIONS(672),
    [anon_sym_receive] = ACTIONS(672),
    [anon_sym_mapping] = ACTIONS(672),
    [anon_sym_bool] = ACTIONS(672),
    [anon_sym_string] = ACTIONS(672),
    [anon_sym_int] = ACTIONS(672),
    [anon_sym_int8] = ACTIONS(672),
    [anon_sym_int16] = ACTIONS(672),
    [anon_sym_int24] = ACTIONS(672),
    [anon_sym_int32] = ACTIONS(672),
    [anon_sym_int40] = ACTIONS(672),
    [anon_sym_int48] = ACTIONS(672),
    [anon_sym_int56] = ACTIONS(672),
    [anon_sym_int64] = ACTIONS(672),
    [anon_sym_int72] = ACTIONS(672),
    [anon_sym_int80] = ACTIONS(672),
    [anon_sym_int88] = ACTIONS(672),
    [anon_sym_int96] = ACTIONS(672),
    [anon_sym_int104] = ACTIONS(672),
    [anon_sym_int112] = ACTIONS(672),
    [anon_sym_int120] = ACTIONS(672),
    [anon_sym_int128] = ACTIONS(672),
    [anon_sym_int136] = ACTIONS(672),
    [anon_sym_int144] = ACTIONS(672),
    [anon_sym_int152] = ACTIONS(672),
    [anon_sym_int160] = ACTIONS(672),
    [anon_sym_int168] = ACTIONS(672),
    [anon_sym_int176] = ACTIONS(672),
    [anon_sym_int184] = ACTIONS(672),
    [anon_sym_int192] = ACTIONS(672),
    [anon_sym_int200] = ACTIONS(672),
    [anon_sym_int208] = ACTIONS(672),
    [anon_sym_int216] = ACTIONS(672),
    [anon_sym_int224] = ACTIONS(672),
    [anon_sym_int232] = ACTIONS(672),
    [anon_sym_int240] = ACTIONS(672),
    [anon_sym_int248] = ACTIONS(672),
    [anon_sym_int256] = ACTIONS(672),
    [anon_sym_uint] = ACTIONS(672),
    [anon_sym_uint8] = ACTIONS(672),
    [anon_sym_uint16] = ACTIONS(672),
    [anon_sym_uint24] = ACTIONS(672),
    [anon_sym_uint32] = ACTIONS(672),
    [anon_sym_uint40] = ACTIONS(672),
    [anon_sym_uint48] = ACTIONS(672),
    [anon_sym_uint56] = ACTIONS(672),
    [anon_sym_uint64] = ACTIONS(672),
    [anon_sym_uint72] = ACTIONS(672),
    [anon_sym_uint80] = ACTIONS(672),
    [anon_sym_uint88] = ACTIONS(672),
    [anon_sym_uint96] = ACTIONS(672),
    [anon_sym_uint104] = ACTIONS(672),
    [anon_sym_uint112] = ACTIONS(672),
    [anon_sym_uint120] = ACTIONS(672),
    [anon_sym_uint128] = ACTIONS(672),
    [anon_sym_uint136] = ACTIONS(672),
    [anon_sym_uint144] = ACTIONS(672),
    [anon_sym_uint152] = ACTIONS(672),
    [anon_sym_uint160] = ACTIONS(672),
    [anon_sym_uint168] = ACTIONS(672),
    [anon_sym_uint176] = ACTIONS(672),
    [anon_sym_uint184] = ACTIONS(672),
    [anon_sym_uint192] = ACTIONS(672),
    [anon_sym_uint200] = ACTIONS(672),
    [anon_sym_uint208] = ACTIONS(672),
    [anon_sym_uint216] = ACTIONS(672),
    [anon_sym_uint224] = ACTIONS(672),
    [anon_sym_uint232] = ACTIONS(672),
    [anon_sym_uint240] = ACTIONS(672),
    [anon_sym_uint248] = ACTIONS(672),
    [anon_sym_uint256] = ACTIONS(672),
    [anon_sym_bytes] = ACTIONS(672),
    [anon_sym_bytes1] = ACTIONS(672),
    [anon_sym_bytes2] = ACTIONS(672),
    [anon_sym_bytes3] = ACTIONS(672),
    [anon_sym_bytes4] = ACTIONS(672),
    [anon_sym_bytes5] = ACTIONS(672),
    [anon_sym_bytes6] = ACTIONS(672),
    [anon_sym_bytes7] = ACTIONS(672),
    [anon_sym_bytes8] = ACTIONS(672),
    [anon_sym_bytes9] = ACTIONS(672),
    [anon_sym_bytes10] = ACTIONS(672),
    [anon_sym_bytes11] = ACTIONS(672),
    [anon_sym_bytes12] = ACTIONS(672),
    [anon_sym_bytes13] = ACTIONS(672),
    [anon_sym_bytes14] = ACTIONS(672),
    [anon_sym_bytes15] = ACTIONS(672),
    [anon_sym_bytes16] = ACTIONS(672),
    [anon_sym_bytes17] = ACTIONS(672),
    [anon_sym_bytes18] = ACTIONS(672),
    [anon_sym_bytes19] = ACTIONS(672),
    [anon_sym_bytes20] = ACTIONS(672),
    [anon_sym_bytes21] = ACTIONS(672),
    [anon_sym_bytes22] = ACTIONS(672),
    [anon_sym_bytes23] = ACTIONS(672),
    [anon_sym_bytes24] = ACTIONS(672),
    [anon_sym_bytes25] = ACTIONS(672),
    [anon_sym_bytes26] = ACTIONS(672),
    [anon_sym_bytes27] = ACTIONS(672),
    [anon_sym_bytes28] = ACTIONS(672),
    [anon_sym_bytes29] = ACTIONS(672),
    [anon_sym_bytes30] = ACTIONS(672),
    [anon_sym_bytes31] = ACTIONS(672),
    [anon_sym_bytes32] = ACTIONS(672),
    [anon_sym_fixed] = ACTIONS(672),
    [aux_sym__fixed_token1] = ACTIONS(672),
    [anon_sym_ufixed] = ACTIONS(672),
    [aux_sym__ufixed_token1] = ACTIONS(672),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(233)] = {
    [sym_identifier] = ACTIONS(696),
    [anon_sym_RBRACE] = ACTIONS(694),
    [anon_sym_type] = ACTIONS(696),
    [anon_sym_error] = ACTIONS(696),
    [anon_sym_struct] = ACTIONS(696),
    [anon_sym_enum] = ACTIONS(696),
    [anon_sym_event] = ACTIONS(696),
    [anon_sym_using] = ACTIONS(696),
    [anon_sym_function] = ACTIONS(696),
    [anon_sym_byte] = ACTIONS(696),
    [anon_sym_address] = ACTIONS(696),
    [anon_sym_var] = ACTIONS(696),
    [anon_sym_modifier] = ACTIONS(696),
    [anon_sym_constructor] = ACTIONS(696),
    [anon_sym_fallback] = ACTIONS(696),
    [anon_sym_receive] = ACTIONS(696),
    [anon_sym_mapping] = ACTIONS(696),
    [anon_sym_bool] = ACTIONS(696),
    [anon_sym_string] = ACTIONS(696),
    [anon_sym_int] = ACTIONS(696),
    [anon_sym_int8] = ACTIONS(696),
    [anon_sym_int16] = ACTIONS(696),
    [anon_sym_int24] = ACTIONS(696),
    [anon_sym_int32] = ACTIONS(696),
    [anon_sym_int40] = ACTIONS(696),
    [anon_sym_int48] = ACTIONS(696),
    [anon_sym_int56] = ACTIONS(696),
    [anon_sym_int64] = ACTIONS(696),
    [anon_sym_int72] = ACTIONS(696),
    [anon_sym_int80] = ACTIONS(696),
    [anon_sym_int88] = ACTIONS(696),
    [anon_sym_int96] = ACTIONS(696),
    [anon_sym_int104] = ACTIONS(696),
    [anon_sym_int112] = ACTIONS(696),
    [anon_sym_int120] = ACTIONS(696),
    [anon_sym_int128] = ACTIONS(696),
    [anon_sym_int136] = ACTIONS(696),
    [anon_sym_int144] = ACTIONS(696),
    [anon_sym_int152] = ACTIONS(696),
    [anon_sym_int160] = ACTIONS(696),
    [anon_sym_int168] = ACTIONS(696),
    [anon_sym_int176] = ACTIONS(696),
    [anon_sym_int184] = ACTIONS(696),
    [anon_sym_int192] = ACTIONS(696),
    [anon_sym_int200] = ACTIONS(696),
    [anon_sym_int208] = ACTIONS(696),
    [anon_sym_int216] = ACTIONS(696),
    [anon_sym_int224] = ACTIONS(696),
    [anon_sym_int232] = ACTIONS(696),
    [anon_sym_int240] = ACTIONS(696),
    [anon_sym_int248] = ACTIONS(696),
    [anon_sym_int256] = ACTIONS(696),
    [anon_sym_uint] = ACTIONS(696),
    [anon_sym_uint8] = ACTIONS(696),
    [anon_sym_uint16] = ACTIONS(696),
    [anon_sym_uint24] = ACTIONS(696),
    [anon_sym_uint32] = ACTIONS(696),
    [anon_sym_uint40] = ACTIONS(696),
    [anon_sym_uint48] = ACTIONS(696),
    [anon_sym_uint56] = ACTIONS(696),
    [anon_sym_uint64] = ACTIONS(696),
    [anon_sym_uint72] = ACTIONS(696),
    [anon_sym_uint80] = ACTIONS(696),
    [anon_sym_uint88] = ACTIONS(696),
    [anon_sym_uint96] = ACTIONS(696),
    [anon_sym_uint104] = ACTIONS(696),
    [anon_sym_uint112] = ACTIONS(696),
    [anon_sym_uint120] = ACTIONS(696),
    [anon_sym_uint128] = ACTIONS(696),
    [anon_sym_uint136] = ACTIONS(696),
    [anon_sym_uint144] = ACTIONS(696),
    [anon_sym_uint152] = ACTIONS(696),
    [anon_sym_uint160] = ACTIONS(696),
    [anon_sym_uint168] = ACTIONS(696),
    [anon_sym_uint176] = ACTIONS(696),
    [anon_sym_uint184] = ACTIONS(696),
    [anon_sym_uint192] = ACTIONS(696),
    [anon_sym_uint200] = ACTIONS(696),
    [anon_sym_uint208] = ACTIONS(696),
    [anon_sym_uint216] = ACTIONS(696),
    [anon_sym_uint224] = ACTIONS(696),
    [anon_sym_uint232] = ACTIONS(696),
    [anon_sym_uint240] = ACTIONS(696),
    [anon_sym_uint248] = ACTIONS(696),
    [anon_sym_uint256] = ACTIONS(696),
    [anon_sym_bytes] = ACTIONS(696),
    [anon_sym_bytes1] = ACTIONS(696),
    [anon_sym_bytes2] = ACTIONS(696),
    [anon_sym_bytes3] = ACTIONS(696),
    [anon_sym_bytes4] = ACTIONS(696),
    [anon_sym_bytes5] = ACTIONS(696),
    [anon_sym_bytes6] = ACTIONS(696),
    [anon_sym_bytes7] = ACTIONS(696),
    [anon_sym_bytes8] = ACTIONS(696),
    [anon_sym_bytes9] = ACTIONS(696),
    [anon_sym_bytes10] = ACTIONS(696),
    [anon_sym_bytes11] = ACTIONS(696),
    [anon_sym_bytes12] = ACTIONS(696),
    [anon_sym_bytes13] = ACTIONS(696),
    [anon_sym_bytes14] = ACTIONS(696),
    [anon_sym_bytes15] = ACTIONS(696),
    [anon_sym_bytes16] = ACTIONS(696),
    [anon_sym_bytes17] = ACTIONS(696),
    [anon_sym_bytes18] = ACTIONS(696),
    [anon_sym_bytes19] = ACTIONS(696),
    [anon_sym_bytes20] = ACTIONS(696),
    [anon_sym_bytes21] = ACTIONS(696),
    [anon_sym_bytes22] = ACTIONS(696),
    [anon_sym_bytes23] = ACTIONS(696),
    [anon_sym_bytes24] = ACTIONS(696),
    [anon_sym_bytes25] = ACTIONS(696),
    [anon_sym_bytes26] = ACTIONS(696),
    [anon_sym_bytes27] = ACTIONS(696),
    [anon_sym_bytes28] = ACTIONS(696),
    [anon_sym_bytes29] = ACTIONS(696),
    [anon_sym_bytes30] = ACTIONS(696),
    [anon_sym_bytes31] = ACTIONS(696),
    [anon_sym_bytes32] = ACTIONS(696),
    [anon_sym_fixed] = ACTIONS(696),
    [aux_sym__fixed_token1] = ACTIONS(696),
    [anon_sym_ufixed] = ACTIONS(696),
    [aux_sym__ufixed_token1] = ACTIONS(696),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(234)] = {
    [sym_identifier] = ACTIONS(632),
    [anon_sym_RBRACE] = ACTIONS(630),
    [anon_sym_type] = ACTIONS(632),
    [anon_sym_error] = ACTIONS(632),
    [anon_sym_struct] = ACTIONS(632),
    [anon_sym_enum] = ACTIONS(632),
    [anon_sym_event] = ACTIONS(632),
    [anon_sym_using] = ACTIONS(632),
    [anon_sym_function] = ACTIONS(632),
    [anon_sym_byte] = ACTIONS(632),
    [anon_sym_address] = ACTIONS(632),
    [anon_sym_var] = ACTIONS(632),
    [anon_sym_modifier] = ACTIONS(632),
    [anon_sym_constructor] = ACTIONS(632),
    [anon_sym_fallback] = ACTIONS(632),
    [anon_sym_receive] = ACTIONS(632),
    [anon_sym_mapping] = ACTIONS(632),
    [anon_sym_bool] = ACTIONS(632),
    [anon_sym_string] = ACTIONS(632),
    [anon_sym_int] = ACTIONS(632),
    [anon_sym_int8] = ACTIONS(632),
    [anon_sym_int16] = ACTIONS(632),
    [anon_sym_int24] = ACTIONS(632),
    [anon_sym_int32] = ACTIONS(632),
    [anon_sym_int40] = ACTIONS(632),
    [anon_sym_int48] = ACTIONS(632),
    [anon_sym_int56] = ACTIONS(632),
    [anon_sym_int64] = ACTIONS(632),
    [anon_sym_int72] = ACTIONS(632),
    [anon_sym_int80] = ACTIONS(632),
    [anon_sym_int88] = ACTIONS(632),
    [anon_sym_int96] = ACTIONS(632),
    [anon_sym_int104] = ACTIONS(632),
    [anon_sym_int112] = ACTIONS(632),
    [anon_sym_int120] = ACTIONS(632),
    [anon_sym_int128] = ACTIONS(632),
    [anon_sym_int136] = ACTIONS(632),
    [anon_sym_int144] = ACTIONS(632),
    [anon_sym_int152] = ACTIONS(632),
    [anon_sym_int160] = ACTIONS(632),
    [anon_sym_int168] = ACTIONS(632),
    [anon_sym_int176] = ACTIONS(632),
    [anon_sym_int184] = ACTIONS(632),
    [anon_sym_int192] = ACTIONS(632),
    [anon_sym_int200] = ACTIONS(632),
    [anon_sym_int208] = ACTIONS(632),
    [anon_sym_int216] = ACTIONS(632),
    [anon_sym_int224] = ACTIONS(632),
    [anon_sym_int232] = ACTIONS(632),
    [anon_sym_int240] = ACTIONS(632),
    [anon_sym_int248] = ACTIONS(632),
    [anon_sym_int256] = ACTIONS(632),
    [anon_sym_uint] = ACTIONS(632),
    [anon_sym_uint8] = ACTIONS(632),
    [anon_sym_uint16] = ACTIONS(632),
    [anon_sym_uint24] = ACTIONS(632),
    [anon_sym_uint32] = ACTIONS(632),
    [anon_sym_uint40] = ACTIONS(632),
    [anon_sym_uint48] = ACTIONS(632),
    [anon_sym_uint56] = ACTIONS(632),
    [anon_sym_uint64] = ACTIONS(632),
    [anon_sym_uint72] = ACTIONS(632),
    [anon_sym_uint80] = ACTIONS(632),
    [anon_sym_uint88] = ACTIONS(632),
    [anon_sym_uint96] = ACTIONS(632),
    [anon_sym_uint104] = ACTIONS(632),
    [anon_sym_uint112] = ACTIONS(632),
    [anon_sym_uint120] = ACTIONS(632),
    [anon_sym_uint128] = ACTIONS(632),
    [anon_sym_uint136] = ACTIONS(632),
    [anon_sym_uint144] = ACTIONS(632),
    [anon_sym_uint152] = ACTIONS(632),
    [anon_sym_uint160] = ACTIONS(632),
    [anon_sym_uint168] = ACTIONS(632),
    [anon_sym_uint176] = ACTIONS(632),
    [anon_sym_uint184] = ACTIONS(632),
    [anon_sym_uint192] = ACTIONS(632),
    [anon_sym_uint200] = ACTIONS(632),
    [anon_sym_uint208] = ACTIONS(632),
    [anon_sym_uint216] = ACTIONS(632),
    [anon_sym_uint224] = ACTIONS(632),
    [anon_sym_uint232] = ACTIONS(632),
    [anon_sym_uint240] = ACTIONS(632),
    [anon_sym_uint248] = ACTIONS(632),
    [anon_sym_uint256] = ACTIONS(632),
    [anon_sym_bytes] = ACTIONS(632),
    [anon_sym_bytes1] = ACTIONS(632),
    [anon_sym_bytes2] = ACTIONS(632),
    [anon_sym_bytes3] = ACTIONS(632),
    [anon_sym_bytes4] = ACTIONS(632),
    [anon_sym_bytes5] = ACTIONS(632),
    [anon_sym_bytes6] = ACTIONS(632),
    [anon_sym_bytes7] = ACTIONS(632),
    [anon_sym_bytes8] = ACTIONS(632),
    [anon_sym_bytes9] = ACTIONS(632),
    [anon_sym_bytes10] = ACTIONS(632),
    [anon_sym_bytes11] = ACTIONS(632),
    [anon_sym_bytes12] = ACTIONS(632),
    [anon_sym_bytes13] = ACTIONS(632),
    [anon_sym_bytes14] = ACTIONS(632),
    [anon_sym_bytes15] = ACTIONS(632),
    [anon_sym_bytes16] = ACTIONS(632),
    [anon_sym_bytes17] = ACTIONS(632),
    [anon_sym_bytes18] = ACTIONS(632),
    [anon_sym_bytes19] = ACTIONS(632),
    [anon_sym_bytes20] = ACTIONS(632),
    [anon_sym_bytes21] = ACTIONS(632),
    [anon_sym_bytes22] = ACTIONS(632),
    [anon_sym_bytes23] = ACTIONS(632),
    [anon_sym_bytes24] = ACTIONS(632),
    [anon_sym_bytes25] = ACTIONS(632),
    [anon_sym_bytes26] = ACTIONS(632),
    [anon_sym_bytes27] = ACTIONS(632),
    [anon_sym_bytes28] = ACTIONS(632),
    [anon_sym_bytes29] = ACTIONS(632),
    [anon_sym_bytes30] = ACTIONS(632),
    [anon_sym_bytes31] = ACTIONS(632),
    [anon_sym_bytes32] = ACTIONS(632),
    [anon_sym_fixed] = ACTIONS(632),
    [aux_sym__fixed_token1] = ACTIONS(632),
    [anon_sym_ufixed] = ACTIONS(632),
    [aux_sym__ufixed_token1] = ACTIONS(632),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(235)] = {
    [sym_identifier] = ACTIONS(716),
    [anon_sym_RBRACE] = ACTIONS(714),
    [anon_sym_type] = ACTIONS(716),
    [anon_sym_error] = ACTIONS(716),
    [anon_sym_struct] = ACTIONS(716),
    [anon_sym_enum] = ACTIONS(716),
    [anon_sym_event] = ACTIONS(716),
    [anon_sym_using] = ACTIONS(716),
    [anon_sym_function] = ACTIONS(716),
    [anon_sym_byte] = ACTIONS(716),
    [anon_sym_address] = ACTIONS(716),
    [anon_sym_var] = ACTIONS(716),
    [anon_sym_modifier] = ACTIONS(716),
    [anon_sym_constructor] = ACTIONS(716),
    [anon_sym_fallback] = ACTIONS(716),
    [anon_sym_receive] = ACTIONS(716),
    [anon_sym_mapping] = ACTIONS(716),
    [anon_sym_bool] = ACTIONS(716),
    [anon_sym_string] = ACTIONS(716),
    [anon_sym_int] = ACTIONS(716),
    [anon_sym_int8] = ACTIONS(716),
    [anon_sym_int16] = ACTIONS(716),
    [anon_sym_int24] = ACTIONS(716),
    [anon_sym_int32] = ACTIONS(716),
    [anon_sym_int40] = ACTIONS(716),
    [anon_sym_int48] = ACTIONS(716),
    [anon_sym_int56] = ACTIONS(716),
    [anon_sym_int64] = ACTIONS(716),
    [anon_sym_int72] = ACTIONS(716),
    [anon_sym_int80] = ACTIONS(716),
    [anon_sym_int88] = ACTIONS(716),
    [anon_sym_int96] = ACTIONS(716),
    [anon_sym_int104] = ACTIONS(716),
    [anon_sym_int112] = ACTIONS(716),
    [anon_sym_int120] = ACTIONS(716),
    [anon_sym_int128] = ACTIONS(716),
    [anon_sym_int136] = ACTIONS(716),
    [anon_sym_int144] = ACTIONS(716),
    [anon_sym_int152] = ACTIONS(716),
    [anon_sym_int160] = ACTIONS(716),
    [anon_sym_int168] = ACTIONS(716),
    [anon_sym_int176] = ACTIONS(716),
    [anon_sym_int184] = ACTIONS(716),
    [anon_sym_int192] = ACTIONS(716),
    [anon_sym_int200] = ACTIONS(716),
    [anon_sym_int208] = ACTIONS(716),
    [anon_sym_int216] = ACTIONS(716),
    [anon_sym_int224] = ACTIONS(716),
    [anon_sym_int232] = ACTIONS(716),
    [anon_sym_int240] = ACTIONS(716),
    [anon_sym_int248] = ACTIONS(716),
    [anon_sym_int256] = ACTIONS(716),
    [anon_sym_uint] = ACTIONS(716),
    [anon_sym_uint8] = ACTIONS(716),
    [anon_sym_uint16] = ACTIONS(716),
    [anon_sym_uint24] = ACTIONS(716),
    [anon_sym_uint32] = ACTIONS(716),
    [anon_sym_uint40] = ACTIONS(716),
    [anon_sym_uint48] = ACTIONS(716),
    [anon_sym_uint56] = ACTIONS(716),
    [anon_sym_uint64] = ACTIONS(716),
    [anon_sym_uint72] = ACTIONS(716),
    [anon_sym_uint80] = ACTIONS(716),
    [anon_sym_uint88] = ACTIONS(716),
    [anon_sym_uint96] = ACTIONS(716),
    [anon_sym_uint104] = ACTIONS(716),
    [anon_sym_uint112] = ACTIONS(716),
    [anon_sym_uint120] = ACTIONS(716),
    [anon_sym_uint128] = ACTIONS(716),
    [anon_sym_uint136] = ACTIONS(716),
    [anon_sym_uint144] = ACTIONS(716),
    [anon_sym_uint152] = ACTIONS(716),
    [anon_sym_uint160] = ACTIONS(716),
    [anon_sym_uint168] = ACTIONS(716),
    [anon_sym_uint176] = ACTIONS(716),
    [anon_sym_uint184] = ACTIONS(716),
    [anon_sym_uint192] = ACTIONS(716),
    [anon_sym_uint200] = ACTIONS(716),
    [anon_sym_uint208] = ACTIONS(716),
    [anon_sym_uint216] = ACTIONS(716),
    [anon_sym_uint224] = ACTIONS(716),
    [anon_sym_uint232] = ACTIONS(716),
    [anon_sym_uint240] = ACTIONS(716),
    [anon_sym_uint248] = ACTIONS(716),
    [anon_sym_uint256] = ACTIONS(716),
    [anon_sym_bytes] = ACTIONS(716),
    [anon_sym_bytes1] = ACTIONS(716),
    [anon_sym_bytes2] = ACTIONS(716),
    [anon_sym_bytes3] = ACTIONS(716),
    [anon_sym_bytes4] = ACTIONS(716),
    [anon_sym_bytes5] = ACTIONS(716),
    [anon_sym_bytes6] = ACTIONS(716),
    [anon_sym_bytes7] = ACTIONS(716),
    [anon_sym_bytes8] = ACTIONS(716),
    [anon_sym_bytes9] = ACTIONS(716),
    [anon_sym_bytes10] = ACTIONS(716),
    [anon_sym_bytes11] = ACTIONS(716),
    [anon_sym_bytes12] = ACTIONS(716),
    [anon_sym_bytes13] = ACTIONS(716),
    [anon_sym_bytes14] = ACTIONS(716),
    [anon_sym_bytes15] = ACTIONS(716),
    [anon_sym_bytes16] = ACTIONS(716),
    [anon_sym_bytes17] = ACTIONS(716),
    [anon_sym_bytes18] = ACTIONS(716),
    [anon_sym_bytes19] = ACTIONS(716),
    [anon_sym_bytes20] = ACTIONS(716),
    [anon_sym_bytes21] = ACTIONS(716),
    [anon_sym_bytes22] = ACTIONS(716),
    [anon_sym_bytes23] = ACTIONS(716),
    [anon_sym_bytes24] = ACTIONS(716),
    [anon_sym_bytes25] = ACTIONS(716),
    [anon_sym_bytes26] = ACTIONS(716),
    [anon_sym_bytes27] = ACTIONS(716),
    [anon_sym_bytes28] = ACTIONS(716),
    [anon_sym_bytes29] = ACTIONS(716),
    [anon_sym_bytes30] = ACTIONS(716),
    [anon_sym_bytes31] = ACTIONS(716),
    [anon_sym_bytes32] = ACTIONS(716),
    [anon_sym_fixed] = ACTIONS(716),
    [aux_sym__fixed_token1] = ACTIONS(716),
    [anon_sym_ufixed] = ACTIONS(716),
    [aux_sym__ufixed_token1] = ACTIONS(716),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(236)] = {
    [sym_identifier] = ACTIONS(764),
    [anon_sym_RBRACE] = ACTIONS(762),
    [anon_sym_type] = ACTIONS(764),
    [anon_sym_error] = ACTIONS(764),
    [anon_sym_struct] = ACTIONS(764),
    [anon_sym_enum] = ACTIONS(764),
    [anon_sym_event] = ACTIONS(764),
    [anon_sym_using] = ACTIONS(764),
    [anon_sym_function] = ACTIONS(764),
    [anon_sym_byte] = ACTIONS(764),
    [anon_sym_address] = ACTIONS(764),
    [anon_sym_var] = ACTIONS(764),
    [anon_sym_modifier] = ACTIONS(764),
    [anon_sym_constructor] = ACTIONS(764),
    [anon_sym_fallback] = ACTIONS(764),
    [anon_sym_receive] = ACTIONS(764),
    [anon_sym_mapping] = ACTIONS(764),
    [anon_sym_bool] = ACTIONS(764),
    [anon_sym_string] = ACTIONS(764),
    [anon_sym_int] = ACTIONS(764),
    [anon_sym_int8] = ACTIONS(764),
    [anon_sym_int16] = ACTIONS(764),
    [anon_sym_int24] = ACTIONS(764),
    [anon_sym_int32] = ACTIONS(764),
    [anon_sym_int40] = ACTIONS(764),
    [anon_sym_int48] = ACTIONS(764),
    [anon_sym_int56] = ACTIONS(764),
    [anon_sym_int64] = ACTIONS(764),
    [anon_sym_int72] = ACTIONS(764),
    [anon_sym_int80] = ACTIONS(764),
    [anon_sym_int88] = ACTIONS(764),
    [anon_sym_int96] = ACTIONS(764),
    [anon_sym_int104] = ACTIONS(764),
    [anon_sym_int112] = ACTIONS(764),
    [anon_sym_int120] = ACTIONS(764),
    [anon_sym_int128] = ACTIONS(764),
    [anon_sym_int136] = ACTIONS(764),
    [anon_sym_int144] = ACTIONS(764),
    [anon_sym_int152] = ACTIONS(764),
    [anon_sym_int160] = ACTIONS(764),
    [anon_sym_int168] = ACTIONS(764),
    [anon_sym_int176] = ACTIONS(764),
    [anon_sym_int184] = ACTIONS(764),
    [anon_sym_int192] = ACTIONS(764),
    [anon_sym_int200] = ACTIONS(764),
    [anon_sym_int208] = ACTIONS(764),
    [anon_sym_int216] = ACTIONS(764),
    [anon_sym_int224] = ACTIONS(764),
    [anon_sym_int232] = ACTIONS(764),
    [anon_sym_int240] = ACTIONS(764),
    [anon_sym_int248] = ACTIONS(764),
    [anon_sym_int256] = ACTIONS(764),
    [anon_sym_uint] = ACTIONS(764),
    [anon_sym_uint8] = ACTIONS(764),
    [anon_sym_uint16] = ACTIONS(764),
    [anon_sym_uint24] = ACTIONS(764),
    [anon_sym_uint32] = ACTIONS(764),
    [anon_sym_uint40] = ACTIONS(764),
    [anon_sym_uint48] = ACTIONS(764),
    [anon_sym_uint56] = ACTIONS(764),
    [anon_sym_uint64] = ACTIONS(764),
    [anon_sym_uint72] = ACTIONS(764),
    [anon_sym_uint80] = ACTIONS(764),
    [anon_sym_uint88] = ACTIONS(764),
    [anon_sym_uint96] = ACTIONS(764),
    [anon_sym_uint104] = ACTIONS(764),
    [anon_sym_uint112] = ACTIONS(764),
    [anon_sym_uint120] = ACTIONS(764),
    [anon_sym_uint128] = ACTIONS(764),
    [anon_sym_uint136] = ACTIONS(764),
    [anon_sym_uint144] = ACTIONS(764),
    [anon_sym_uint152] = ACTIONS(764),
    [anon_sym_uint160] = ACTIONS(764),
    [anon_sym_uint168] = ACTIONS(764),
    [anon_sym_uint176] = ACTIONS(764),
    [anon_sym_uint184] = ACTIONS(764),
    [anon_sym_uint192] = ACTIONS(764),
    [anon_sym_uint200] = ACTIONS(764),
    [anon_sym_uint208] = ACTIONS(764),
    [anon_sym_uint216] = ACTIONS(764),
    [anon_sym_uint224] = ACTIONS(764),
    [anon_sym_uint232] = ACTIONS(764),
    [anon_sym_uint240] = ACTIONS(764),
    [anon_sym_uint248] = ACTIONS(764),
    [anon_sym_uint256] = ACTIONS(764),
    [anon_sym_bytes] = ACTIONS(764),
    [anon_sym_bytes1] = ACTIONS(764),
    [anon_sym_bytes2] = ACTIONS(764),
    [anon_sym_bytes3] = ACTIONS(764),
    [anon_sym_bytes4] = ACTIONS(764),
    [anon_sym_bytes5] = ACTIONS(764),
    [anon_sym_bytes6] = ACTIONS(764),
    [anon_sym_bytes7] = ACTIONS(764),
    [anon_sym_bytes8] = ACTIONS(764),
    [anon_sym_bytes9] = ACTIONS(764),
    [anon_sym_bytes10] = ACTIONS(764),
    [anon_sym_bytes11] = ACTIONS(764),
    [anon_sym_bytes12] = ACTIONS(764),
    [anon_sym_bytes13] = ACTIONS(764),
    [anon_sym_bytes14] = ACTIONS(764),
    [anon_sym_bytes15] = ACTIONS(764),
    [anon_sym_bytes16] = ACTIONS(764),
    [anon_sym_bytes17] = ACTIONS(764),
    [anon_sym_bytes18] = ACTIONS(764),
    [anon_sym_bytes19] = ACTIONS(764),
    [anon_sym_bytes20] = ACTIONS(764),
    [anon_sym_bytes21] = ACTIONS(764),
    [anon_sym_bytes22] = ACTIONS(764),
    [anon_sym_bytes23] = ACTIONS(764),
    [anon_sym_bytes24] = ACTIONS(764),
    [anon_sym_bytes25] = ACTIONS(764),
    [anon_sym_bytes26] = ACTIONS(764),
    [anon_sym_bytes27] = ACTIONS(764),
    [anon_sym_bytes28] = ACTIONS(764),
    [anon_sym_bytes29] = ACTIONS(764),
    [anon_sym_bytes30] = ACTIONS(764),
    [anon_sym_bytes31] = ACTIONS(764),
    [anon_sym_bytes32] = ACTIONS(764),
    [anon_sym_fixed] = ACTIONS(764),
    [aux_sym__fixed_token1] = ACTIONS(764),
    [anon_sym_ufixed] = ACTIONS(764),
    [aux_sym__ufixed_token1] = ACTIONS(764),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(237)] = {
    [sym_identifier] = ACTIONS(780),
    [anon_sym_RBRACE] = ACTIONS(778),
    [anon_sym_type] = ACTIONS(780),
    [anon_sym_error] = ACTIONS(780),
    [anon_sym_struct] = ACTIONS(780),
    [anon_sym_enum] = ACTIONS(780),
    [anon_sym_event] = ACTIONS(780),
    [anon_sym_using] = ACTIONS(780),
    [anon_sym_function] = ACTIONS(780),
    [anon_sym_byte] = ACTIONS(780),
    [anon_sym_address] = ACTIONS(780),
    [anon_sym_var] = ACTIONS(780),
    [anon_sym_modifier] = ACTIONS(780),
    [anon_sym_constructor] = ACTIONS(780),
    [anon_sym_fallback] = ACTIONS(780),
    [anon_sym_receive] = ACTIONS(780),
    [anon_sym_mapping] = ACTIONS(780),
    [anon_sym_bool] = ACTIONS(780),
    [anon_sym_string] = ACTIONS(780),
    [anon_sym_int] = ACTIONS(780),
    [anon_sym_int8] = ACTIONS(780),
    [anon_sym_int16] = ACTIONS(780),
    [anon_sym_int24] = ACTIONS(780),
    [anon_sym_int32] = ACTIONS(780),
    [anon_sym_int40] = ACTIONS(780),
    [anon_sym_int48] = ACTIONS(780),
    [anon_sym_int56] = ACTIONS(780),
    [anon_sym_int64] = ACTIONS(780),
    [anon_sym_int72] = ACTIONS(780),
    [anon_sym_int80] = ACTIONS(780),
    [anon_sym_int88] = ACTIONS(780),
    [anon_sym_int96] = ACTIONS(780),
    [anon_sym_int104] = ACTIONS(780),
    [anon_sym_int112] = ACTIONS(780),
    [anon_sym_int120] = ACTIONS(780),
    [anon_sym_int128] = ACTIONS(780),
    [anon_sym_int136] = ACTIONS(780),
    [anon_sym_int144] = ACTIONS(780),
    [anon_sym_int152] = ACTIONS(780),
    [anon_sym_int160] = ACTIONS(780),
    [anon_sym_int168] = ACTIONS(780),
    [anon_sym_int176] = ACTIONS(780),
    [anon_sym_int184] = ACTIONS(780),
    [anon_sym_int192] = ACTIONS(780),
    [anon_sym_int200] = ACTIONS(780),
    [anon_sym_int208] = ACTIONS(780),
    [anon_sym_int216] = ACTIONS(780),
    [anon_sym_int224] = ACTIONS(780),
    [anon_sym_int232] = ACTIONS(780),
    [anon_sym_int240] = ACTIONS(780),
    [anon_sym_int248] = ACTIONS(780),
    [anon_sym_int256] = ACTIONS(780),
    [anon_sym_uint] = ACTIONS(780),
    [anon_sym_uint8] = ACTIONS(780),
    [anon_sym_uint16] = ACTIONS(780),
    [anon_sym_uint24] = ACTIONS(780),
    [anon_sym_uint32] = ACTIONS(780),
    [anon_sym_uint40] = ACTIONS(780),
    [anon_sym_uint48] = ACTIONS(780),
    [anon_sym_uint56] = ACTIONS(780),
    [anon_sym_uint64] = ACTIONS(780),
    [anon_sym_uint72] = ACTIONS(780),
    [anon_sym_uint80] = ACTIONS(780),
    [anon_sym_uint88] = ACTIONS(780),
    [anon_sym_uint96] = ACTIONS(780),
    [anon_sym_uint104] = ACTIONS(780),
    [anon_sym_uint112] = ACTIONS(780),
    [anon_sym_uint120] = ACTIONS(780),
    [anon_sym_uint128] = ACTIONS(780),
    [anon_sym_uint136] = ACTIONS(780),
    [anon_sym_uint144] = ACTIONS(780),
    [anon_sym_uint152] = ACTIONS(780),
    [anon_sym_uint160] = ACTIONS(780),
    [anon_sym_uint168] = ACTIONS(780),
    [anon_sym_uint176] = ACTIONS(780),
    [anon_sym_uint184] = ACTIONS(780),
    [anon_sym_uint192] = ACTIONS(780),
    [anon_sym_uint200] = ACTIONS(780),
    [anon_sym_uint208] = ACTIONS(780),
    [anon_sym_uint216] = ACTIONS(780),
    [anon_sym_uint224] = ACTIONS(780),
    [anon_sym_uint232] = ACTIONS(780),
    [anon_sym_uint240] = ACTIONS(780),
    [anon_sym_uint248] = ACTIONS(780),
    [anon_sym_uint256] = ACTIONS(780),
    [anon_sym_bytes] = ACTIONS(780),
    [anon_sym_bytes1] = ACTIONS(780),
    [anon_sym_bytes2] = ACTIONS(780),
    [anon_sym_bytes3] = ACTIONS(780),
    [anon_sym_bytes4] = ACTIONS(780),
    [anon_sym_bytes5] = ACTIONS(780),
    [anon_sym_bytes6] = ACTIONS(780),
    [anon_sym_bytes7] = ACTIONS(780),
    [anon_sym_bytes8] = ACTIONS(780),
    [anon_sym_bytes9] = ACTIONS(780),
    [anon_sym_bytes10] = ACTIONS(780),
    [anon_sym_bytes11] = ACTIONS(780),
    [anon_sym_bytes12] = ACTIONS(780),
    [anon_sym_bytes13] = ACTIONS(780),
    [anon_sym_bytes14] = ACTIONS(780),
    [anon_sym_bytes15] = ACTIONS(780),
    [anon_sym_bytes16] = ACTIONS(780),
    [anon_sym_bytes17] = ACTIONS(780),
    [anon_sym_bytes18] = ACTIONS(780),
    [anon_sym_bytes19] = ACTIONS(780),
    [anon_sym_bytes20] = ACTIONS(780),
    [anon_sym_bytes21] = ACTIONS(780),
    [anon_sym_bytes22] = ACTIONS(780),
    [anon_sym_bytes23] = ACTIONS(780),
    [anon_sym_bytes24] = ACTIONS(780),
    [anon_sym_bytes25] = ACTIONS(780),
    [anon_sym_bytes26] = ACTIONS(780),
    [anon_sym_bytes27] = ACTIONS(780),
    [anon_sym_bytes28] = ACTIONS(780),
    [anon_sym_bytes29] = ACTIONS(780),
    [anon_sym_bytes30] = ACTIONS(780),
    [anon_sym_bytes31] = ACTIONS(780),
    [anon_sym_bytes32] = ACTIONS(780),
    [anon_sym_fixed] = ACTIONS(780),
    [aux_sym__fixed_token1] = ACTIONS(780),
    [anon_sym_ufixed] = ACTIONS(780),
    [aux_sym__ufixed_token1] = ACTIONS(780),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(238)] = {
    [sym_identifier] = ACTIONS(788),
    [anon_sym_RBRACE] = ACTIONS(786),
    [anon_sym_type] = ACTIONS(788),
    [anon_sym_error] = ACTIONS(788),
    [anon_sym_struct] = ACTIONS(788),
    [anon_sym_enum] = ACTIONS(788),
    [anon_sym_event] = ACTIONS(788),
    [anon_sym_using] = ACTIONS(788),
    [anon_sym_function] = ACTIONS(788),
    [anon_sym_byte] = ACTIONS(788),
    [anon_sym_address] = ACTIONS(788),
    [anon_sym_var] = ACTIONS(788),
    [anon_sym_modifier] = ACTIONS(788),
    [anon_sym_constructor] = ACTIONS(788),
    [anon_sym_fallback] = ACTIONS(788),
    [anon_sym_receive] = ACTIONS(788),
    [anon_sym_mapping] = ACTIONS(788),
    [anon_sym_bool] = ACTIONS(788),
    [anon_sym_string] = ACTIONS(788),
    [anon_sym_int] = ACTIONS(788),
    [anon_sym_int8] = ACTIONS(788),
    [anon_sym_int16] = ACTIONS(788),
    [anon_sym_int24] = ACTIONS(788),
    [anon_sym_int32] = ACTIONS(788),
    [anon_sym_int40] = ACTIONS(788),
    [anon_sym_int48] = ACTIONS(788),
    [anon_sym_int56] = ACTIONS(788),
    [anon_sym_int64] = ACTIONS(788),
    [anon_sym_int72] = ACTIONS(788),
    [anon_sym_int80] = ACTIONS(788),
    [anon_sym_int88] = ACTIONS(788),
    [anon_sym_int96] = ACTIONS(788),
    [anon_sym_int104] = ACTIONS(788),
    [anon_sym_int112] = ACTIONS(788),
    [anon_sym_int120] = ACTIONS(788),
    [anon_sym_int128] = ACTIONS(788),
    [anon_sym_int136] = ACTIONS(788),
    [anon_sym_int144] = ACTIONS(788),
    [anon_sym_int152] = ACTIONS(788),
    [anon_sym_int160] = ACTIONS(788),
    [anon_sym_int168] = ACTIONS(788),
    [anon_sym_int176] = ACTIONS(788),
    [anon_sym_int184] = ACTIONS(788),
    [anon_sym_int192] = ACTIONS(788),
    [anon_sym_int200] = ACTIONS(788),
    [anon_sym_int208] = ACTIONS(788),
    [anon_sym_int216] = ACTIONS(788),
    [anon_sym_int224] = ACTIONS(788),
    [anon_sym_int232] = ACTIONS(788),
    [anon_sym_int240] = ACTIONS(788),
    [anon_sym_int248] = ACTIONS(788),
    [anon_sym_int256] = ACTIONS(788),
    [anon_sym_uint] = ACTIONS(788),
    [anon_sym_uint8] = ACTIONS(788),
    [anon_sym_uint16] = ACTIONS(788),
    [anon_sym_uint24] = ACTIONS(788),
    [anon_sym_uint32] = ACTIONS(788),
    [anon_sym_uint40] = ACTIONS(788),
    [anon_sym_uint48] = ACTIONS(788),
    [anon_sym_uint56] = ACTIONS(788),
    [anon_sym_uint64] = ACTIONS(788),
    [anon_sym_uint72] = ACTIONS(788),
    [anon_sym_uint80] = ACTIONS(788),
    [anon_sym_uint88] = ACTIONS(788),
    [anon_sym_uint96] = ACTIONS(788),
    [anon_sym_uint104] = ACTIONS(788),
    [anon_sym_uint112] = ACTIONS(788),
    [anon_sym_uint120] = ACTIONS(788),
    [anon_sym_uint128] = ACTIONS(788),
    [anon_sym_uint136] = ACTIONS(788),
    [anon_sym_uint144] = ACTIONS(788),
    [anon_sym_uint152] = ACTIONS(788),
    [anon_sym_uint160] = ACTIONS(788),
    [anon_sym_uint168] = ACTIONS(788),
    [anon_sym_uint176] = ACTIONS(788),
    [anon_sym_uint184] = ACTIONS(788),
    [anon_sym_uint192] = ACTIONS(788),
    [anon_sym_uint200] = ACTIONS(788),
    [anon_sym_uint208] = ACTIONS(788),
    [anon_sym_uint216] = ACTIONS(788),
    [anon_sym_uint224] = ACTIONS(788),
    [anon_sym_uint232] = ACTIONS(788),
    [anon_sym_uint240] = ACTIONS(788),
    [anon_sym_uint248] = ACTIONS(788),
    [anon_sym_uint256] = ACTIONS(788),
    [anon_sym_bytes] = ACTIONS(788),
    [anon_sym_bytes1] = ACTIONS(788),
    [anon_sym_bytes2] = ACTIONS(788),
    [anon_sym_bytes3] = ACTIONS(788),
    [anon_sym_bytes4] = ACTIONS(788),
    [anon_sym_bytes5] = ACTIONS(788),
    [anon_sym_bytes6] = ACTIONS(788),
    [anon_sym_bytes7] = ACTIONS(788),
    [anon_sym_bytes8] = ACTIONS(788),
    [anon_sym_bytes9] = ACTIONS(788),
    [anon_sym_bytes10] = ACTIONS(788),
    [anon_sym_bytes11] = ACTIONS(788),
    [anon_sym_bytes12] = ACTIONS(788),
    [anon_sym_bytes13] = ACTIONS(788),
    [anon_sym_bytes14] = ACTIONS(788),
    [anon_sym_bytes15] = ACTIONS(788),
    [anon_sym_bytes16] = ACTIONS(788),
    [anon_sym_bytes17] = ACTIONS(788),
    [anon_sym_bytes18] = ACTIONS(788),
    [anon_sym_bytes19] = ACTIONS(788),
    [anon_sym_bytes20] = ACTIONS(788),
    [anon_sym_bytes21] = ACTIONS(788),
    [anon_sym_bytes22] = ACTIONS(788),
    [anon_sym_bytes23] = ACTIONS(788),
    [anon_sym_bytes24] = ACTIONS(788),
    [anon_sym_bytes25] = ACTIONS(788),
    [anon_sym_bytes26] = ACTIONS(788),
    [anon_sym_bytes27] = ACTIONS(788),
    [anon_sym_bytes28] = ACTIONS(788),
    [anon_sym_bytes29] = ACTIONS(788),
    [anon_sym_bytes30] = ACTIONS(788),
    [anon_sym_bytes31] = ACTIONS(788),
    [anon_sym_bytes32] = ACTIONS(788),
    [anon_sym_fixed] = ACTIONS(788),
    [aux_sym__fixed_token1] = ACTIONS(788),
    [anon_sym_ufixed] = ACTIONS(788),
    [aux_sym__ufixed_token1] = ACTIONS(788),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(239)] = {
    [sym_identifier] = ACTIONS(712),
    [anon_sym_RBRACE] = ACTIONS(710),
    [anon_sym_type] = ACTIONS(712),
    [anon_sym_error] = ACTIONS(712),
    [anon_sym_struct] = ACTIONS(712),
    [anon_sym_enum] = ACTIONS(712),
    [anon_sym_event] = ACTIONS(712),
    [anon_sym_using] = ACTIONS(712),
    [anon_sym_function] = ACTIONS(712),
    [anon_sym_byte] = ACTIONS(712),
    [anon_sym_address] = ACTIONS(712),
    [anon_sym_var] = ACTIONS(712),
    [anon_sym_modifier] = ACTIONS(712),
    [anon_sym_constructor] = ACTIONS(712),
    [anon_sym_fallback] = ACTIONS(712),
    [anon_sym_receive] = ACTIONS(712),
    [anon_sym_mapping] = ACTIONS(712),
    [anon_sym_bool] = ACTIONS(712),
    [anon_sym_string] = ACTIONS(712),
    [anon_sym_int] = ACTIONS(712),
    [anon_sym_int8] = ACTIONS(712),
    [anon_sym_int16] = ACTIONS(712),
    [anon_sym_int24] = ACTIONS(712),
    [anon_sym_int32] = ACTIONS(712),
    [anon_sym_int40] = ACTIONS(712),
    [anon_sym_int48] = ACTIONS(712),
    [anon_sym_int56] = ACTIONS(712),
    [anon_sym_int64] = ACTIONS(712),
    [anon_sym_int72] = ACTIONS(712),
    [anon_sym_int80] = ACTIONS(712),
    [anon_sym_int88] = ACTIONS(712),
    [anon_sym_int96] = ACTIONS(712),
    [anon_sym_int104] = ACTIONS(712),
    [anon_sym_int112] = ACTIONS(712),
    [anon_sym_int120] = ACTIONS(712),
    [anon_sym_int128] = ACTIONS(712),
    [anon_sym_int136] = ACTIONS(712),
    [anon_sym_int144] = ACTIONS(712),
    [anon_sym_int152] = ACTIONS(712),
    [anon_sym_int160] = ACTIONS(712),
    [anon_sym_int168] = ACTIONS(712),
    [anon_sym_int176] = ACTIONS(712),
    [anon_sym_int184] = ACTIONS(712),
    [anon_sym_int192] = ACTIONS(712),
    [anon_sym_int200] = ACTIONS(712),
    [anon_sym_int208] = ACTIONS(712),
    [anon_sym_int216] = ACTIONS(712),
    [anon_sym_int224] = ACTIONS(712),
    [anon_sym_int232] = ACTIONS(712),
    [anon_sym_int240] = ACTIONS(712),
    [anon_sym_int248] = ACTIONS(712),
    [anon_sym_int256] = ACTIONS(712),
    [anon_sym_uint] = ACTIONS(712),
    [anon_sym_uint8] = ACTIONS(712),
    [anon_sym_uint16] = ACTIONS(712),
    [anon_sym_uint24] = ACTIONS(712),
    [anon_sym_uint32] = ACTIONS(712),
    [anon_sym_uint40] = ACTIONS(712),
    [anon_sym_uint48] = ACTIONS(712),
    [anon_sym_uint56] = ACTIONS(712),
    [anon_sym_uint64] = ACTIONS(712),
    [anon_sym_uint72] = ACTIONS(712),
    [anon_sym_uint80] = ACTIONS(712),
    [anon_sym_uint88] = ACTIONS(712),
    [anon_sym_uint96] = ACTIONS(712),
    [anon_sym_uint104] = ACTIONS(712),
    [anon_sym_uint112] = ACTIONS(712),
    [anon_sym_uint120] = ACTIONS(712),
    [anon_sym_uint128] = ACTIONS(712),
    [anon_sym_uint136] = ACTIONS(712),
    [anon_sym_uint144] = ACTIONS(712),
    [anon_sym_uint152] = ACTIONS(712),
    [anon_sym_uint160] = ACTIONS(712),
    [anon_sym_uint168] = ACTIONS(712),
    [anon_sym_uint176] = ACTIONS(712),
    [anon_sym_uint184] = ACTIONS(712),
    [anon_sym_uint192] = ACTIONS(712),
    [anon_sym_uint200] = ACTIONS(712),
    [anon_sym_uint208] = ACTIONS(712),
    [anon_sym_uint216] = ACTIONS(712),
    [anon_sym_uint224] = ACTIONS(712),
    [anon_sym_uint232] = ACTIONS(712),
    [anon_sym_uint240] = ACTIONS(712),
    [anon_sym_uint248] = ACTIONS(712),
    [anon_sym_uint256] = ACTIONS(712),
    [anon_sym_bytes] = ACTIONS(712),
    [anon_sym_bytes1] = ACTIONS(712),
    [anon_sym_bytes2] = ACTIONS(712),
    [anon_sym_bytes3] = ACTIONS(712),
    [anon_sym_bytes4] = ACTIONS(712),
    [anon_sym_bytes5] = ACTIONS(712),
    [anon_sym_bytes6] = ACTIONS(712),
    [anon_sym_bytes7] = ACTIONS(712),
    [anon_sym_bytes8] = ACTIONS(712),
    [anon_sym_bytes9] = ACTIONS(712),
    [anon_sym_bytes10] = ACTIONS(712),
    [anon_sym_bytes11] = ACTIONS(712),
    [anon_sym_bytes12] = ACTIONS(712),
    [anon_sym_bytes13] = ACTIONS(712),
    [anon_sym_bytes14] = ACTIONS(712),
    [anon_sym_bytes15] = ACTIONS(712),
    [anon_sym_bytes16] = ACTIONS(712),
    [anon_sym_bytes17] = ACTIONS(712),
    [anon_sym_bytes18] = ACTIONS(712),
    [anon_sym_bytes19] = ACTIONS(712),
    [anon_sym_bytes20] = ACTIONS(712),
    [anon_sym_bytes21] = ACTIONS(712),
    [anon_sym_bytes22] = ACTIONS(712),
    [anon_sym_bytes23] = ACTIONS(712),
    [anon_sym_bytes24] = ACTIONS(712),
    [anon_sym_bytes25] = ACTIONS(712),
    [anon_sym_bytes26] = ACTIONS(712),
    [anon_sym_bytes27] = ACTIONS(712),
    [anon_sym_bytes28] = ACTIONS(712),
    [anon_sym_bytes29] = ACTIONS(712),
    [anon_sym_bytes30] = ACTIONS(712),
    [anon_sym_bytes31] = ACTIONS(712),
    [anon_sym_bytes32] = ACTIONS(712),
    [anon_sym_fixed] = ACTIONS(712),
    [aux_sym__fixed_token1] = ACTIONS(712),
    [anon_sym_ufixed] = ACTIONS(712),
    [aux_sym__ufixed_token1] = ACTIONS(712),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(240)] = {
    [sym_identifier] = ACTIONS(740),
    [anon_sym_RBRACE] = ACTIONS(738),
    [anon_sym_type] = ACTIONS(740),
    [anon_sym_error] = ACTIONS(740),
    [anon_sym_struct] = ACTIONS(740),
    [anon_sym_enum] = ACTIONS(740),
    [anon_sym_event] = ACTIONS(740),
    [anon_sym_using] = ACTIONS(740),
    [anon_sym_function] = ACTIONS(740),
    [anon_sym_byte] = ACTIONS(740),
    [anon_sym_address] = ACTIONS(740),
    [anon_sym_var] = ACTIONS(740),
    [anon_sym_modifier] = ACTIONS(740),
    [anon_sym_constructor] = ACTIONS(740),
    [anon_sym_fallback] = ACTIONS(740),
    [anon_sym_receive] = ACTIONS(740),
    [anon_sym_mapping] = ACTIONS(740),
    [anon_sym_bool] = ACTIONS(740),
    [anon_sym_string] = ACTIONS(740),
    [anon_sym_int] = ACTIONS(740),
    [anon_sym_int8] = ACTIONS(740),
    [anon_sym_int16] = ACTIONS(740),
    [anon_sym_int24] = ACTIONS(740),
    [anon_sym_int32] = ACTIONS(740),
    [anon_sym_int40] = ACTIONS(740),
    [anon_sym_int48] = ACTIONS(740),
    [anon_sym_int56] = ACTIONS(740),
    [anon_sym_int64] = ACTIONS(740),
    [anon_sym_int72] = ACTIONS(740),
    [anon_sym_int80] = ACTIONS(740),
    [anon_sym_int88] = ACTIONS(740),
    [anon_sym_int96] = ACTIONS(740),
    [anon_sym_int104] = ACTIONS(740),
    [anon_sym_int112] = ACTIONS(740),
    [anon_sym_int120] = ACTIONS(740),
    [anon_sym_int128] = ACTIONS(740),
    [anon_sym_int136] = ACTIONS(740),
    [anon_sym_int144] = ACTIONS(740),
    [anon_sym_int152] = ACTIONS(740),
    [anon_sym_int160] = ACTIONS(740),
    [anon_sym_int168] = ACTIONS(740),
    [anon_sym_int176] = ACTIONS(740),
    [anon_sym_int184] = ACTIONS(740),
    [anon_sym_int192] = ACTIONS(740),
    [anon_sym_int200] = ACTIONS(740),
    [anon_sym_int208] = ACTIONS(740),
    [anon_sym_int216] = ACTIONS(740),
    [anon_sym_int224] = ACTIONS(740),
    [anon_sym_int232] = ACTIONS(740),
    [anon_sym_int240] = ACTIONS(740),
    [anon_sym_int248] = ACTIONS(740),
    [anon_sym_int256] = ACTIONS(740),
    [anon_sym_uint] = ACTIONS(740),
    [anon_sym_uint8] = ACTIONS(740),
    [anon_sym_uint16] = ACTIONS(740),
    [anon_sym_uint24] = ACTIONS(740),
    [anon_sym_uint32] = ACTIONS(740),
    [anon_sym_uint40] = ACTIONS(740),
    [anon_sym_uint48] = ACTIONS(740),
    [anon_sym_uint56] = ACTIONS(740),
    [anon_sym_uint64] = ACTIONS(740),
    [anon_sym_uint72] = ACTIONS(740),
    [anon_sym_uint80] = ACTIONS(740),
    [anon_sym_uint88] = ACTIONS(740),
    [anon_sym_uint96] = ACTIONS(740),
    [anon_sym_uint104] = ACTIONS(740),
    [anon_sym_uint112] = ACTIONS(740),
    [anon_sym_uint120] = ACTIONS(740),
    [anon_sym_uint128] = ACTIONS(740),
    [anon_sym_uint136] = ACTIONS(740),
    [anon_sym_uint144] = ACTIONS(740),
    [anon_sym_uint152] = ACTIONS(740),
    [anon_sym_uint160] = ACTIONS(740),
    [anon_sym_uint168] = ACTIONS(740),
    [anon_sym_uint176] = ACTIONS(740),
    [anon_sym_uint184] = ACTIONS(740),
    [anon_sym_uint192] = ACTIONS(740),
    [anon_sym_uint200] = ACTIONS(740),
    [anon_sym_uint208] = ACTIONS(740),
    [anon_sym_uint216] = ACTIONS(740),
    [anon_sym_uint224] = ACTIONS(740),
    [anon_sym_uint232] = ACTIONS(740),
    [anon_sym_uint240] = ACTIONS(740),
    [anon_sym_uint248] = ACTIONS(740),
    [anon_sym_uint256] = ACTIONS(740),
    [anon_sym_bytes] = ACTIONS(740),
    [anon_sym_bytes1] = ACTIONS(740),
    [anon_sym_bytes2] = ACTIONS(740),
    [anon_sym_bytes3] = ACTIONS(740),
    [anon_sym_bytes4] = ACTIONS(740),
    [anon_sym_bytes5] = ACTIONS(740),
    [anon_sym_bytes6] = ACTIONS(740),
    [anon_sym_bytes7] = ACTIONS(740),
    [anon_sym_bytes8] = ACTIONS(740),
    [anon_sym_bytes9] = ACTIONS(740),
    [anon_sym_bytes10] = ACTIONS(740),
    [anon_sym_bytes11] = ACTIONS(740),
    [anon_sym_bytes12] = ACTIONS(740),
    [anon_sym_bytes13] = ACTIONS(740),
    [anon_sym_bytes14] = ACTIONS(740),
    [anon_sym_bytes15] = ACTIONS(740),
    [anon_sym_bytes16] = ACTIONS(740),
    [anon_sym_bytes17] = ACTIONS(740),
    [anon_sym_bytes18] = ACTIONS(740),
    [anon_sym_bytes19] = ACTIONS(740),
    [anon_sym_bytes20] = ACTIONS(740),
    [anon_sym_bytes21] = ACTIONS(740),
    [anon_sym_bytes22] = ACTIONS(740),
    [anon_sym_bytes23] = ACTIONS(740),
    [anon_sym_bytes24] = ACTIONS(740),
    [anon_sym_bytes25] = ACTIONS(740),
    [anon_sym_bytes26] = ACTIONS(740),
    [anon_sym_bytes27] = ACTIONS(740),
    [anon_sym_bytes28] = ACTIONS(740),
    [anon_sym_bytes29] = ACTIONS(740),
    [anon_sym_bytes30] = ACTIONS(740),
    [anon_sym_bytes31] = ACTIONS(740),
    [anon_sym_bytes32] = ACTIONS(740),
    [anon_sym_fixed] = ACTIONS(740),
    [aux_sym__fixed_token1] = ACTIONS(740),
    [anon_sym_ufixed] = ACTIONS(740),
    [aux_sym__ufixed_token1] = ACTIONS(740),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(241)] = {
    [sym_identifier] = ACTIONS(768),
    [anon_sym_RBRACE] = ACTIONS(766),
    [anon_sym_type] = ACTIONS(768),
    [anon_sym_error] = ACTIONS(768),
    [anon_sym_struct] = ACTIONS(768),
    [anon_sym_enum] = ACTIONS(768),
    [anon_sym_event] = ACTIONS(768),
    [anon_sym_using] = ACTIONS(768),
    [anon_sym_function] = ACTIONS(768),
    [anon_sym_byte] = ACTIONS(768),
    [anon_sym_address] = ACTIONS(768),
    [anon_sym_var] = ACTIONS(768),
    [anon_sym_modifier] = ACTIONS(768),
    [anon_sym_constructor] = ACTIONS(768),
    [anon_sym_fallback] = ACTIONS(768),
    [anon_sym_receive] = ACTIONS(768),
    [anon_sym_mapping] = ACTIONS(768),
    [anon_sym_bool] = ACTIONS(768),
    [anon_sym_string] = ACTIONS(768),
    [anon_sym_int] = ACTIONS(768),
    [anon_sym_int8] = ACTIONS(768),
    [anon_sym_int16] = ACTIONS(768),
    [anon_sym_int24] = ACTIONS(768),
    [anon_sym_int32] = ACTIONS(768),
    [anon_sym_int40] = ACTIONS(768),
    [anon_sym_int48] = ACTIONS(768),
    [anon_sym_int56] = ACTIONS(768),
    [anon_sym_int64] = ACTIONS(768),
    [anon_sym_int72] = ACTIONS(768),
    [anon_sym_int80] = ACTIONS(768),
    [anon_sym_int88] = ACTIONS(768),
    [anon_sym_int96] = ACTIONS(768),
    [anon_sym_int104] = ACTIONS(768),
    [anon_sym_int112] = ACTIONS(768),
    [anon_sym_int120] = ACTIONS(768),
    [anon_sym_int128] = ACTIONS(768),
    [anon_sym_int136] = ACTIONS(768),
    [anon_sym_int144] = ACTIONS(768),
    [anon_sym_int152] = ACTIONS(768),
    [anon_sym_int160] = ACTIONS(768),
    [anon_sym_int168] = ACTIONS(768),
    [anon_sym_int176] = ACTIONS(768),
    [anon_sym_int184] = ACTIONS(768),
    [anon_sym_int192] = ACTIONS(768),
    [anon_sym_int200] = ACTIONS(768),
    [anon_sym_int208] = ACTIONS(768),
    [anon_sym_int216] = ACTIONS(768),
    [anon_sym_int224] = ACTIONS(768),
    [anon_sym_int232] = ACTIONS(768),
    [anon_sym_int240] = ACTIONS(768),
    [anon_sym_int248] = ACTIONS(768),
    [anon_sym_int256] = ACTIONS(768),
    [anon_sym_uint] = ACTIONS(768),
    [anon_sym_uint8] = ACTIONS(768),
    [anon_sym_uint16] = ACTIONS(768),
    [anon_sym_uint24] = ACTIONS(768),
    [anon_sym_uint32] = ACTIONS(768),
    [anon_sym_uint40] = ACTIONS(768),
    [anon_sym_uint48] = ACTIONS(768),
    [anon_sym_uint56] = ACTIONS(768),
    [anon_sym_uint64] = ACTIONS(768),
    [anon_sym_uint72] = ACTIONS(768),
    [anon_sym_uint80] = ACTIONS(768),
    [anon_sym_uint88] = ACTIONS(768),
    [anon_sym_uint96] = ACTIONS(768),
    [anon_sym_uint104] = ACTIONS(768),
    [anon_sym_uint112] = ACTIONS(768),
    [anon_sym_uint120] = ACTIONS(768),
    [anon_sym_uint128] = ACTIONS(768),
    [anon_sym_uint136] = ACTIONS(768),
    [anon_sym_uint144] = ACTIONS(768),
    [anon_sym_uint152] = ACTIONS(768),
    [anon_sym_uint160] = ACTIONS(768),
    [anon_sym_uint168] = ACTIONS(768),
    [anon_sym_uint176] = ACTIONS(768),
    [anon_sym_uint184] = ACTIONS(768),
    [anon_sym_uint192] = ACTIONS(768),
    [anon_sym_uint200] = ACTIONS(768),
    [anon_sym_uint208] = ACTIONS(768),
    [anon_sym_uint216] = ACTIONS(768),
    [anon_sym_uint224] = ACTIONS(768),
    [anon_sym_uint232] = ACTIONS(768),
    [anon_sym_uint240] = ACTIONS(768),
    [anon_sym_uint248] = ACTIONS(768),
    [anon_sym_uint256] = ACTIONS(768),
    [anon_sym_bytes] = ACTIONS(768),
    [anon_sym_bytes1] = ACTIONS(768),
    [anon_sym_bytes2] = ACTIONS(768),
    [anon_sym_bytes3] = ACTIONS(768),
    [anon_sym_bytes4] = ACTIONS(768),
    [anon_sym_bytes5] = ACTIONS(768),
    [anon_sym_bytes6] = ACTIONS(768),
    [anon_sym_bytes7] = ACTIONS(768),
    [anon_sym_bytes8] = ACTIONS(768),
    [anon_sym_bytes9] = ACTIONS(768),
    [anon_sym_bytes10] = ACTIONS(768),
    [anon_sym_bytes11] = ACTIONS(768),
    [anon_sym_bytes12] = ACTIONS(768),
    [anon_sym_bytes13] = ACTIONS(768),
    [anon_sym_bytes14] = ACTIONS(768),
    [anon_sym_bytes15] = ACTIONS(768),
    [anon_sym_bytes16] = ACTIONS(768),
    [anon_sym_bytes17] = ACTIONS(768),
    [anon_sym_bytes18] = ACTIONS(768),
    [anon_sym_bytes19] = ACTIONS(768),
    [anon_sym_bytes20] = ACTIONS(768),
    [anon_sym_bytes21] = ACTIONS(768),
    [anon_sym_bytes22] = ACTIONS(768),
    [anon_sym_bytes23] = ACTIONS(768),
    [anon_sym_bytes24] = ACTIONS(768),
    [anon_sym_bytes25] = ACTIONS(768),
    [anon_sym_bytes26] = ACTIONS(768),
    [anon_sym_bytes27] = ACTIONS(768),
    [anon_sym_bytes28] = ACTIONS(768),
    [anon_sym_bytes29] = ACTIONS(768),
    [anon_sym_bytes30] = ACTIONS(768),
    [anon_sym_bytes31] = ACTIONS(768),
    [anon_sym_bytes32] = ACTIONS(768),
    [anon_sym_fixed] = ACTIONS(768),
    [aux_sym__fixed_token1] = ACTIONS(768),
    [anon_sym_ufixed] = ACTIONS(768),
    [aux_sym__ufixed_token1] = ACTIONS(768),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(242)] = {
    [sym_identifier] = ACTIONS(652),
    [anon_sym_RBRACE] = ACTIONS(650),
    [anon_sym_type] = ACTIONS(652),
    [anon_sym_error] = ACTIONS(652),
    [anon_sym_struct] = ACTIONS(652),
    [anon_sym_enum] = ACTIONS(652),
    [anon_sym_event] = ACTIONS(652),
    [anon_sym_using] = ACTIONS(652),
    [anon_sym_function] = ACTIONS(652),
    [anon_sym_byte] = ACTIONS(652),
    [anon_sym_address] = ACTIONS(652),
    [anon_sym_var] = ACTIONS(652),
    [anon_sym_modifier] = ACTIONS(652),
    [anon_sym_constructor] = ACTIONS(652),
    [anon_sym_fallback] = ACTIONS(652),
    [anon_sym_receive] = ACTIONS(652),
    [anon_sym_mapping] = ACTIONS(652),
    [anon_sym_bool] = ACTIONS(652),
    [anon_sym_string] = ACTIONS(652),
    [anon_sym_int] = ACTIONS(652),
    [anon_sym_int8] = ACTIONS(652),
    [anon_sym_int16] = ACTIONS(652),
    [anon_sym_int24] = ACTIONS(652),
    [anon_sym_int32] = ACTIONS(652),
    [anon_sym_int40] = ACTIONS(652),
    [anon_sym_int48] = ACTIONS(652),
    [anon_sym_int56] = ACTIONS(652),
    [anon_sym_int64] = ACTIONS(652),
    [anon_sym_int72] = ACTIONS(652),
    [anon_sym_int80] = ACTIONS(652),
    [anon_sym_int88] = ACTIONS(652),
    [anon_sym_int96] = ACTIONS(652),
    [anon_sym_int104] = ACTIONS(652),
    [anon_sym_int112] = ACTIONS(652),
    [anon_sym_int120] = ACTIONS(652),
    [anon_sym_int128] = ACTIONS(652),
    [anon_sym_int136] = ACTIONS(652),
    [anon_sym_int144] = ACTIONS(652),
    [anon_sym_int152] = ACTIONS(652),
    [anon_sym_int160] = ACTIONS(652),
    [anon_sym_int168] = ACTIONS(652),
    [anon_sym_int176] = ACTIONS(652),
    [anon_sym_int184] = ACTIONS(652),
    [anon_sym_int192] = ACTIONS(652),
    [anon_sym_int200] = ACTIONS(652),
    [anon_sym_int208] = ACTIONS(652),
    [anon_sym_int216] = ACTIONS(652),
    [anon_sym_int224] = ACTIONS(652),
    [anon_sym_int232] = ACTIONS(652),
    [anon_sym_int240] = ACTIONS(652),
    [anon_sym_int248] = ACTIONS(652),
    [anon_sym_int256] = ACTIONS(652),
    [anon_sym_uint] = ACTIONS(652),
    [anon_sym_uint8] = ACTIONS(652),
    [anon_sym_uint16] = ACTIONS(652),
    [anon_sym_uint24] = ACTIONS(652),
    [anon_sym_uint32] = ACTIONS(652),
    [anon_sym_uint40] = ACTIONS(652),
    [anon_sym_uint48] = ACTIONS(652),
    [anon_sym_uint56] = ACTIONS(652),
    [anon_sym_uint64] = ACTIONS(652),
    [anon_sym_uint72] = ACTIONS(652),
    [anon_sym_uint80] = ACTIONS(652),
    [anon_sym_uint88] = ACTIONS(652),
    [anon_sym_uint96] = ACTIONS(652),
    [anon_sym_uint104] = ACTIONS(652),
    [anon_sym_uint112] = ACTIONS(652),
    [anon_sym_uint120] = ACTIONS(652),
    [anon_sym_uint128] = ACTIONS(652),
    [anon_sym_uint136] = ACTIONS(652),
    [anon_sym_uint144] = ACTIONS(652),
    [anon_sym_uint152] = ACTIONS(652),
    [anon_sym_uint160] = ACTIONS(652),
    [anon_sym_uint168] = ACTIONS(652),
    [anon_sym_uint176] = ACTIONS(652),
    [anon_sym_uint184] = ACTIONS(652),
    [anon_sym_uint192] = ACTIONS(652),
    [anon_sym_uint200] = ACTIONS(652),
    [anon_sym_uint208] = ACTIONS(652),
    [anon_sym_uint216] = ACTIONS(652),
    [anon_sym_uint224] = ACTIONS(652),
    [anon_sym_uint232] = ACTIONS(652),
    [anon_sym_uint240] = ACTIONS(652),
    [anon_sym_uint248] = ACTIONS(652),
    [anon_sym_uint256] = ACTIONS(652),
    [anon_sym_bytes] = ACTIONS(652),
    [anon_sym_bytes1] = ACTIONS(652),
    [anon_sym_bytes2] = ACTIONS(652),
    [anon_sym_bytes3] = ACTIONS(652),
    [anon_sym_bytes4] = ACTIONS(652),
    [anon_sym_bytes5] = ACTIONS(652),
    [anon_sym_bytes6] = ACTIONS(652),
    [anon_sym_bytes7] = ACTIONS(652),
    [anon_sym_bytes8] = ACTIONS(652),
    [anon_sym_bytes9] = ACTIONS(652),
    [anon_sym_bytes10] = ACTIONS(652),
    [anon_sym_bytes11] = ACTIONS(652),
    [anon_sym_bytes12] = ACTIONS(652),
    [anon_sym_bytes13] = ACTIONS(652),
    [anon_sym_bytes14] = ACTIONS(652),
    [anon_sym_bytes15] = ACTIONS(652),
    [anon_sym_bytes16] = ACTIONS(652),
    [anon_sym_bytes17] = ACTIONS(652),
    [anon_sym_bytes18] = ACTIONS(652),
    [anon_sym_bytes19] = ACTIONS(652),
    [anon_sym_bytes20] = ACTIONS(652),
    [anon_sym_bytes21] = ACTIONS(652),
    [anon_sym_bytes22] = ACTIONS(652),
    [anon_sym_bytes23] = ACTIONS(652),
    [anon_sym_bytes24] = ACTIONS(652),
    [anon_sym_bytes25] = ACTIONS(652),
    [anon_sym_bytes26] = ACTIONS(652),
    [anon_sym_bytes27] = ACTIONS(652),
    [anon_sym_bytes28] = ACTIONS(652),
    [anon_sym_bytes29] = ACTIONS(652),
    [anon_sym_bytes30] = ACTIONS(652),
    [anon_sym_bytes31] = ACTIONS(652),
    [anon_sym_bytes32] = ACTIONS(652),
    [anon_sym_fixed] = ACTIONS(652),
    [aux_sym__fixed_token1] = ACTIONS(652),
    [anon_sym_ufixed] = ACTIONS(652),
    [aux_sym__ufixed_token1] = ACTIONS(652),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(243)] = {
    [sym_identifier] = ACTIONS(656),
    [anon_sym_RBRACE] = ACTIONS(654),
    [anon_sym_type] = ACTIONS(656),
    [anon_sym_error] = ACTIONS(656),
    [anon_sym_struct] = ACTIONS(656),
    [anon_sym_enum] = ACTIONS(656),
    [anon_sym_event] = ACTIONS(656),
    [anon_sym_using] = ACTIONS(656),
    [anon_sym_function] = ACTIONS(656),
    [anon_sym_byte] = ACTIONS(656),
    [anon_sym_address] = ACTIONS(656),
    [anon_sym_var] = ACTIONS(656),
    [anon_sym_modifier] = ACTIONS(656),
    [anon_sym_constructor] = ACTIONS(656),
    [anon_sym_fallback] = ACTIONS(656),
    [anon_sym_receive] = ACTIONS(656),
    [anon_sym_mapping] = ACTIONS(656),
    [anon_sym_bool] = ACTIONS(656),
    [anon_sym_string] = ACTIONS(656),
    [anon_sym_int] = ACTIONS(656),
    [anon_sym_int8] = ACTIONS(656),
    [anon_sym_int16] = ACTIONS(656),
    [anon_sym_int24] = ACTIONS(656),
    [anon_sym_int32] = ACTIONS(656),
    [anon_sym_int40] = ACTIONS(656),
    [anon_sym_int48] = ACTIONS(656),
    [anon_sym_int56] = ACTIONS(656),
    [anon_sym_int64] = ACTIONS(656),
    [anon_sym_int72] = ACTIONS(656),
    [anon_sym_int80] = ACTIONS(656),
    [anon_sym_int88] = ACTIONS(656),
    [anon_sym_int96] = ACTIONS(656),
    [anon_sym_int104] = ACTIONS(656),
    [anon_sym_int112] = ACTIONS(656),
    [anon_sym_int120] = ACTIONS(656),
    [anon_sym_int128] = ACTIONS(656),
    [anon_sym_int136] = ACTIONS(656),
    [anon_sym_int144] = ACTIONS(656),
    [anon_sym_int152] = ACTIONS(656),
    [anon_sym_int160] = ACTIONS(656),
    [anon_sym_int168] = ACTIONS(656),
    [anon_sym_int176] = ACTIONS(656),
    [anon_sym_int184] = ACTIONS(656),
    [anon_sym_int192] = ACTIONS(656),
    [anon_sym_int200] = ACTIONS(656),
    [anon_sym_int208] = ACTIONS(656),
    [anon_sym_int216] = ACTIONS(656),
    [anon_sym_int224] = ACTIONS(656),
    [anon_sym_int232] = ACTIONS(656),
    [anon_sym_int240] = ACTIONS(656),
    [anon_sym_int248] = ACTIONS(656),
    [anon_sym_int256] = ACTIONS(656),
    [anon_sym_uint] = ACTIONS(656),
    [anon_sym_uint8] = ACTIONS(656),
    [anon_sym_uint16] = ACTIONS(656),
    [anon_sym_uint24] = ACTIONS(656),
    [anon_sym_uint32] = ACTIONS(656),
    [anon_sym_uint40] = ACTIONS(656),
    [anon_sym_uint48] = ACTIONS(656),
    [anon_sym_uint56] = ACTIONS(656),
    [anon_sym_uint64] = ACTIONS(656),
    [anon_sym_uint72] = ACTIONS(656),
    [anon_sym_uint80] = ACTIONS(656),
    [anon_sym_uint88] = ACTIONS(656),
    [anon_sym_uint96] = ACTIONS(656),
    [anon_sym_uint104] = ACTIONS(656),
    [anon_sym_uint112] = ACTIONS(656),
    [anon_sym_uint120] = ACTIONS(656),
    [anon_sym_uint128] = ACTIONS(656),
    [anon_sym_uint136] = ACTIONS(656),
    [anon_sym_uint144] = ACTIONS(656),
    [anon_sym_uint152] = ACTIONS(656),
    [anon_sym_uint160] = ACTIONS(656),
    [anon_sym_uint168] = ACTIONS(656),
    [anon_sym_uint176] = ACTIONS(656),
    [anon_sym_uint184] = ACTIONS(656),
    [anon_sym_uint192] = ACTIONS(656),
    [anon_sym_uint200] = ACTIONS(656),
    [anon_sym_uint208] = ACTIONS(656),
    [anon_sym_uint216] = ACTIONS(656),
    [anon_sym_uint224] = ACTIONS(656),
    [anon_sym_uint232] = ACTIONS(656),
    [anon_sym_uint240] = ACTIONS(656),
    [anon_sym_uint248] = ACTIONS(656),
    [anon_sym_uint256] = ACTIONS(656),
    [anon_sym_bytes] = ACTIONS(656),
    [anon_sym_bytes1] = ACTIONS(656),
    [anon_sym_bytes2] = ACTIONS(656),
    [anon_sym_bytes3] = ACTIONS(656),
    [anon_sym_bytes4] = ACTIONS(656),
    [anon_sym_bytes5] = ACTIONS(656),
    [anon_sym_bytes6] = ACTIONS(656),
    [anon_sym_bytes7] = ACTIONS(656),
    [anon_sym_bytes8] = ACTIONS(656),
    [anon_sym_bytes9] = ACTIONS(656),
    [anon_sym_bytes10] = ACTIONS(656),
    [anon_sym_bytes11] = ACTIONS(656),
    [anon_sym_bytes12] = ACTIONS(656),
    [anon_sym_bytes13] = ACTIONS(656),
    [anon_sym_bytes14] = ACTIONS(656),
    [anon_sym_bytes15] = ACTIONS(656),
    [anon_sym_bytes16] = ACTIONS(656),
    [anon_sym_bytes17] = ACTIONS(656),
    [anon_sym_bytes18] = ACTIONS(656),
    [anon_sym_bytes19] = ACTIONS(656),
    [anon_sym_bytes20] = ACTIONS(656),
    [anon_sym_bytes21] = ACTIONS(656),
    [anon_sym_bytes22] = ACTIONS(656),
    [anon_sym_bytes23] = ACTIONS(656),
    [anon_sym_bytes24] = ACTIONS(656),
    [anon_sym_bytes25] = ACTIONS(656),
    [anon_sym_bytes26] = ACTIONS(656),
    [anon_sym_bytes27] = ACTIONS(656),
    [anon_sym_bytes28] = ACTIONS(656),
    [anon_sym_bytes29] = ACTIONS(656),
    [anon_sym_bytes30] = ACTIONS(656),
    [anon_sym_bytes31] = ACTIONS(656),
    [anon_sym_bytes32] = ACTIONS(656),
    [anon_sym_fixed] = ACTIONS(656),
    [aux_sym__fixed_token1] = ACTIONS(656),
    [anon_sym_ufixed] = ACTIONS(656),
    [aux_sym__ufixed_token1] = ACTIONS(656),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(244)] = {
    [sym_identifier] = ACTIONS(660),
    [anon_sym_RBRACE] = ACTIONS(658),
    [anon_sym_type] = ACTIONS(660),
    [anon_sym_error] = ACTIONS(660),
    [anon_sym_struct] = ACTIONS(660),
    [anon_sym_enum] = ACTIONS(660),
    [anon_sym_event] = ACTIONS(660),
    [anon_sym_using] = ACTIONS(660),
    [anon_sym_function] = ACTIONS(660),
    [anon_sym_byte] = ACTIONS(660),
    [anon_sym_address] = ACTIONS(660),
    [anon_sym_var] = ACTIONS(660),
    [anon_sym_modifier] = ACTIONS(660),
    [anon_sym_constructor] = ACTIONS(660),
    [anon_sym_fallback] = ACTIONS(660),
    [anon_sym_receive] = ACTIONS(660),
    [anon_sym_mapping] = ACTIONS(660),
    [anon_sym_bool] = ACTIONS(660),
    [anon_sym_string] = ACTIONS(660),
    [anon_sym_int] = ACTIONS(660),
    [anon_sym_int8] = ACTIONS(660),
    [anon_sym_int16] = ACTIONS(660),
    [anon_sym_int24] = ACTIONS(660),
    [anon_sym_int32] = ACTIONS(660),
    [anon_sym_int40] = ACTIONS(660),
    [anon_sym_int48] = ACTIONS(660),
    [anon_sym_int56] = ACTIONS(660),
    [anon_sym_int64] = ACTIONS(660),
    [anon_sym_int72] = ACTIONS(660),
    [anon_sym_int80] = ACTIONS(660),
    [anon_sym_int88] = ACTIONS(660),
    [anon_sym_int96] = ACTIONS(660),
    [anon_sym_int104] = ACTIONS(660),
    [anon_sym_int112] = ACTIONS(660),
    [anon_sym_int120] = ACTIONS(660),
    [anon_sym_int128] = ACTIONS(660),
    [anon_sym_int136] = ACTIONS(660),
    [anon_sym_int144] = ACTIONS(660),
    [anon_sym_int152] = ACTIONS(660),
    [anon_sym_int160] = ACTIONS(660),
    [anon_sym_int168] = ACTIONS(660),
    [anon_sym_int176] = ACTIONS(660),
    [anon_sym_int184] = ACTIONS(660),
    [anon_sym_int192] = ACTIONS(660),
    [anon_sym_int200] = ACTIONS(660),
    [anon_sym_int208] = ACTIONS(660),
    [anon_sym_int216] = ACTIONS(660),
    [anon_sym_int224] = ACTIONS(660),
    [anon_sym_int232] = ACTIONS(660),
    [anon_sym_int240] = ACTIONS(660),
    [anon_sym_int248] = ACTIONS(660),
    [anon_sym_int256] = ACTIONS(660),
    [anon_sym_uint] = ACTIONS(660),
    [anon_sym_uint8] = ACTIONS(660),
    [anon_sym_uint16] = ACTIONS(660),
    [anon_sym_uint24] = ACTIONS(660),
    [anon_sym_uint32] = ACTIONS(660),
    [anon_sym_uint40] = ACTIONS(660),
    [anon_sym_uint48] = ACTIONS(660),
    [anon_sym_uint56] = ACTIONS(660),
    [anon_sym_uint64] = ACTIONS(660),
    [anon_sym_uint72] = ACTIONS(660),
    [anon_sym_uint80] = ACTIONS(660),
    [anon_sym_uint88] = ACTIONS(660),
    [anon_sym_uint96] = ACTIONS(660),
    [anon_sym_uint104] = ACTIONS(660),
    [anon_sym_uint112] = ACTIONS(660),
    [anon_sym_uint120] = ACTIONS(660),
    [anon_sym_uint128] = ACTIONS(660),
    [anon_sym_uint136] = ACTIONS(660),
    [anon_sym_uint144] = ACTIONS(660),
    [anon_sym_uint152] = ACTIONS(660),
    [anon_sym_uint160] = ACTIONS(660),
    [anon_sym_uint168] = ACTIONS(660),
    [anon_sym_uint176] = ACTIONS(660),
    [anon_sym_uint184] = ACTIONS(660),
    [anon_sym_uint192] = ACTIONS(660),
    [anon_sym_uint200] = ACTIONS(660),
    [anon_sym_uint208] = ACTIONS(660),
    [anon_sym_uint216] = ACTIONS(660),
    [anon_sym_uint224] = ACTIONS(660),
    [anon_sym_uint232] = ACTIONS(660),
    [anon_sym_uint240] = ACTIONS(660),
    [anon_sym_uint248] = ACTIONS(660),
    [anon_sym_uint256] = ACTIONS(660),
    [anon_sym_bytes] = ACTIONS(660),
    [anon_sym_bytes1] = ACTIONS(660),
    [anon_sym_bytes2] = ACTIONS(660),
    [anon_sym_bytes3] = ACTIONS(660),
    [anon_sym_bytes4] = ACTIONS(660),
    [anon_sym_bytes5] = ACTIONS(660),
    [anon_sym_bytes6] = ACTIONS(660),
    [anon_sym_bytes7] = ACTIONS(660),
    [anon_sym_bytes8] = ACTIONS(660),
    [anon_sym_bytes9] = ACTIONS(660),
    [anon_sym_bytes10] = ACTIONS(660),
    [anon_sym_bytes11] = ACTIONS(660),
    [anon_sym_bytes12] = ACTIONS(660),
    [anon_sym_bytes13] = ACTIONS(660),
    [anon_sym_bytes14] = ACTIONS(660),
    [anon_sym_bytes15] = ACTIONS(660),
    [anon_sym_bytes16] = ACTIONS(660),
    [anon_sym_bytes17] = ACTIONS(660),
    [anon_sym_bytes18] = ACTIONS(660),
    [anon_sym_bytes19] = ACTIONS(660),
    [anon_sym_bytes20] = ACTIONS(660),
    [anon_sym_bytes21] = ACTIONS(660),
    [anon_sym_bytes22] = ACTIONS(660),
    [anon_sym_bytes23] = ACTIONS(660),
    [anon_sym_bytes24] = ACTIONS(660),
    [anon_sym_bytes25] = ACTIONS(660),
    [anon_sym_bytes26] = ACTIONS(660),
    [anon_sym_bytes27] = ACTIONS(660),
    [anon_sym_bytes28] = ACTIONS(660),
    [anon_sym_bytes29] = ACTIONS(660),
    [anon_sym_bytes30] = ACTIONS(660),
    [anon_sym_bytes31] = ACTIONS(660),
    [anon_sym_bytes32] = ACTIONS(660),
    [anon_sym_fixed] = ACTIONS(660),
    [aux_sym__fixed_token1] = ACTIONS(660),
    [anon_sym_ufixed] = ACTIONS(660),
    [aux_sym__ufixed_token1] = ACTIONS(660),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(245)] = {
    [sym_identifier] = ACTIONS(836),
    [anon_sym_RBRACE] = ACTIONS(838),
    [anon_sym_type] = ACTIONS(836),
    [anon_sym_error] = ACTIONS(836),
    [anon_sym_struct] = ACTIONS(836),
    [anon_sym_enum] = ACTIONS(836),
    [anon_sym_event] = ACTIONS(836),
    [anon_sym_using] = ACTIONS(836),
    [anon_sym_function] = ACTIONS(836),
    [anon_sym_byte] = ACTIONS(836),
    [anon_sym_address] = ACTIONS(836),
    [anon_sym_var] = ACTIONS(836),
    [anon_sym_modifier] = ACTIONS(836),
    [anon_sym_constructor] = ACTIONS(836),
    [anon_sym_fallback] = ACTIONS(836),
    [anon_sym_receive] = ACTIONS(836),
    [anon_sym_mapping] = ACTIONS(836),
    [anon_sym_bool] = ACTIONS(836),
    [anon_sym_string] = ACTIONS(836),
    [anon_sym_int] = ACTIONS(836),
    [anon_sym_int8] = ACTIONS(836),
    [anon_sym_int16] = ACTIONS(836),
    [anon_sym_int24] = ACTIONS(836),
    [anon_sym_int32] = ACTIONS(836),
    [anon_sym_int40] = ACTIONS(836),
    [anon_sym_int48] = ACTIONS(836),
    [anon_sym_int56] = ACTIONS(836),
    [anon_sym_int64] = ACTIONS(836),
    [anon_sym_int72] = ACTIONS(836),
    [anon_sym_int80] = ACTIONS(836),
    [anon_sym_int88] = ACTIONS(836),
    [anon_sym_int96] = ACTIONS(836),
    [anon_sym_int104] = ACTIONS(836),
    [anon_sym_int112] = ACTIONS(836),
    [anon_sym_int120] = ACTIONS(836),
    [anon_sym_int128] = ACTIONS(836),
    [anon_sym_int136] = ACTIONS(836),
    [anon_sym_int144] = ACTIONS(836),
    [anon_sym_int152] = ACTIONS(836),
    [anon_sym_int160] = ACTIONS(836),
    [anon_sym_int168] = ACTIONS(836),
    [anon_sym_int176] = ACTIONS(836),
    [anon_sym_int184] = ACTIONS(836),
    [anon_sym_int192] = ACTIONS(836),
    [anon_sym_int200] = ACTIONS(836),
    [anon_sym_int208] = ACTIONS(836),
    [anon_sym_int216] = ACTIONS(836),
    [anon_sym_int224] = ACTIONS(836),
    [anon_sym_int232] = ACTIONS(836),
    [anon_sym_int240] = ACTIONS(836),
    [anon_sym_int248] = ACTIONS(836),
    [anon_sym_int256] = ACTIONS(836),
    [anon_sym_uint] = ACTIONS(836),
    [anon_sym_uint8] = ACTIONS(836),
    [anon_sym_uint16] = ACTIONS(836),
    [anon_sym_uint24] = ACTIONS(836),
    [anon_sym_uint32] = ACTIONS(836),
    [anon_sym_uint40] = ACTIONS(836),
    [anon_sym_uint48] = ACTIONS(836),
    [anon_sym_uint56] = ACTIONS(836),
    [anon_sym_uint64] = ACTIONS(836),
    [anon_sym_uint72] = ACTIONS(836),
    [anon_sym_uint80] = ACTIONS(836),
    [anon_sym_uint88] = ACTIONS(836),
    [anon_sym_uint96] = ACTIONS(836),
    [anon_sym_uint104] = ACTIONS(836),
    [anon_sym_uint112] = ACTIONS(836),
    [anon_sym_uint120] = ACTIONS(836),
    [anon_sym_uint128] = ACTIONS(836),
    [anon_sym_uint136] = ACTIONS(836),
    [anon_sym_uint144] = ACTIONS(836),
    [anon_sym_uint152] = ACTIONS(836),
    [anon_sym_uint160] = ACTIONS(836),
    [anon_sym_uint168] = ACTIONS(836),
    [anon_sym_uint176] = ACTIONS(836),
    [anon_sym_uint184] = ACTIONS(836),
    [anon_sym_uint192] = ACTIONS(836),
    [anon_sym_uint200] = ACTIONS(836),
    [anon_sym_uint208] = ACTIONS(836),
    [anon_sym_uint216] = ACTIONS(836),
    [anon_sym_uint224] = ACTIONS(836),
    [anon_sym_uint232] = ACTIONS(836),
    [anon_sym_uint240] = ACTIONS(836),
    [anon_sym_uint248] = ACTIONS(836),
    [anon_sym_uint256] = ACTIONS(836),
    [anon_sym_bytes] = ACTIONS(836),
    [anon_sym_bytes1] = ACTIONS(836),
    [anon_sym_bytes2] = ACTIONS(836),
    [anon_sym_bytes3] = ACTIONS(836),
    [anon_sym_bytes4] = ACTIONS(836),
    [anon_sym_bytes5] = ACTIONS(836),
    [anon_sym_bytes6] = ACTIONS(836),
    [anon_sym_bytes7] = ACTIONS(836),
    [anon_sym_bytes8] = ACTIONS(836),
    [anon_sym_bytes9] = ACTIONS(836),
    [anon_sym_bytes10] = ACTIONS(836),
    [anon_sym_bytes11] = ACTIONS(836),
    [anon_sym_bytes12] = ACTIONS(836),
    [anon_sym_bytes13] = ACTIONS(836),
    [anon_sym_bytes14] = ACTIONS(836),
    [anon_sym_bytes15] = ACTIONS(836),
    [anon_sym_bytes16] = ACTIONS(836),
    [anon_sym_bytes17] = ACTIONS(836),
    [anon_sym_bytes18] = ACTIONS(836),
    [anon_sym_bytes19] = ACTIONS(836),
    [anon_sym_bytes20] = ACTIONS(836),
    [anon_sym_bytes21] = ACTIONS(836),
    [anon_sym_bytes22] = ACTIONS(836),
    [anon_sym_bytes23] = ACTIONS(836),
    [anon_sym_bytes24] = ACTIONS(836),
    [anon_sym_bytes25] = ACTIONS(836),
    [anon_sym_bytes26] = ACTIONS(836),
    [anon_sym_bytes27] = ACTIONS(836),
    [anon_sym_bytes28] = ACTIONS(836),
    [anon_sym_bytes29] = ACTIONS(836),
    [anon_sym_bytes30] = ACTIONS(836),
    [anon_sym_bytes31] = ACTIONS(836),
    [anon_sym_bytes32] = ACTIONS(836),
    [anon_sym_fixed] = ACTIONS(836),
    [aux_sym__fixed_token1] = ACTIONS(836),
    [anon_sym_ufixed] = ACTIONS(836),
    [aux_sym__ufixed_token1] = ACTIONS(836),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(246)] = {
    [sym_identifier] = ACTIONS(840),
    [anon_sym_RBRACE] = ACTIONS(842),
    [anon_sym_type] = ACTIONS(840),
    [anon_sym_error] = ACTIONS(840),
    [anon_sym_struct] = ACTIONS(840),
    [anon_sym_enum] = ACTIONS(840),
    [anon_sym_event] = ACTIONS(840),
    [anon_sym_using] = ACTIONS(840),
    [anon_sym_function] = ACTIONS(840),
    [anon_sym_byte] = ACTIONS(840),
    [anon_sym_address] = ACTIONS(840),
    [anon_sym_var] = ACTIONS(840),
    [anon_sym_modifier] = ACTIONS(840),
    [anon_sym_constructor] = ACTIONS(840),
    [anon_sym_fallback] = ACTIONS(840),
    [anon_sym_receive] = ACTIONS(840),
    [anon_sym_mapping] = ACTIONS(840),
    [anon_sym_bool] = ACTIONS(840),
    [anon_sym_string] = ACTIONS(840),
    [anon_sym_int] = ACTIONS(840),
    [anon_sym_int8] = ACTIONS(840),
    [anon_sym_int16] = ACTIONS(840),
    [anon_sym_int24] = ACTIONS(840),
    [anon_sym_int32] = ACTIONS(840),
    [anon_sym_int40] = ACTIONS(840),
    [anon_sym_int48] = ACTIONS(840),
    [anon_sym_int56] = ACTIONS(840),
    [anon_sym_int64] = ACTIONS(840),
    [anon_sym_int72] = ACTIONS(840),
    [anon_sym_int80] = ACTIONS(840),
    [anon_sym_int88] = ACTIONS(840),
    [anon_sym_int96] = ACTIONS(840),
    [anon_sym_int104] = ACTIONS(840),
    [anon_sym_int112] = ACTIONS(840),
    [anon_sym_int120] = ACTIONS(840),
    [anon_sym_int128] = ACTIONS(840),
    [anon_sym_int136] = ACTIONS(840),
    [anon_sym_int144] = ACTIONS(840),
    [anon_sym_int152] = ACTIONS(840),
    [anon_sym_int160] = ACTIONS(840),
    [anon_sym_int168] = ACTIONS(840),
    [anon_sym_int176] = ACTIONS(840),
    [anon_sym_int184] = ACTIONS(840),
    [anon_sym_int192] = ACTIONS(840),
    [anon_sym_int200] = ACTIONS(840),
    [anon_sym_int208] = ACTIONS(840),
    [anon_sym_int216] = ACTIONS(840),
    [anon_sym_int224] = ACTIONS(840),
    [anon_sym_int232] = ACTIONS(840),
    [anon_sym_int240] = ACTIONS(840),
    [anon_sym_int248] = ACTIONS(840),
    [anon_sym_int256] = ACTIONS(840),
    [anon_sym_uint] = ACTIONS(840),
    [anon_sym_uint8] = ACTIONS(840),
    [anon_sym_uint16] = ACTIONS(840),
    [anon_sym_uint24] = ACTIONS(840),
    [anon_sym_uint32] = ACTIONS(840),
    [anon_sym_uint40] = ACTIONS(840),
    [anon_sym_uint48] = ACTIONS(840),
    [anon_sym_uint56] = ACTIONS(840),
    [anon_sym_uint64] = ACTIONS(840),
    [anon_sym_uint72] = ACTIONS(840),
    [anon_sym_uint80] = ACTIONS(840),
    [anon_sym_uint88] = ACTIONS(840),
    [anon_sym_uint96] = ACTIONS(840),
    [anon_sym_uint104] = ACTIONS(840),
    [anon_sym_uint112] = ACTIONS(840),
    [anon_sym_uint120] = ACTIONS(840),
    [anon_sym_uint128] = ACTIONS(840),
    [anon_sym_uint136] = ACTIONS(840),
    [anon_sym_uint144] = ACTIONS(840),
    [anon_sym_uint152] = ACTIONS(840),
    [anon_sym_uint160] = ACTIONS(840),
    [anon_sym_uint168] = ACTIONS(840),
    [anon_sym_uint176] = ACTIONS(840),
    [anon_sym_uint184] = ACTIONS(840),
    [anon_sym_uint192] = ACTIONS(840),
    [anon_sym_uint200] = ACTIONS(840),
    [anon_sym_uint208] = ACTIONS(840),
    [anon_sym_uint216] = ACTIONS(840),
    [anon_sym_uint224] = ACTIONS(840),
    [anon_sym_uint232] = ACTIONS(840),
    [anon_sym_uint240] = ACTIONS(840),
    [anon_sym_uint248] = ACTIONS(840),
    [anon_sym_uint256] = ACTIONS(840),
    [anon_sym_bytes] = ACTIONS(840),
    [anon_sym_bytes1] = ACTIONS(840),
    [anon_sym_bytes2] = ACTIONS(840),
    [anon_sym_bytes3] = ACTIONS(840),
    [anon_sym_bytes4] = ACTIONS(840),
    [anon_sym_bytes5] = ACTIONS(840),
    [anon_sym_bytes6] = ACTIONS(840),
    [anon_sym_bytes7] = ACTIONS(840),
    [anon_sym_bytes8] = ACTIONS(840),
    [anon_sym_bytes9] = ACTIONS(840),
    [anon_sym_bytes10] = ACTIONS(840),
    [anon_sym_bytes11] = ACTIONS(840),
    [anon_sym_bytes12] = ACTIONS(840),
    [anon_sym_bytes13] = ACTIONS(840),
    [anon_sym_bytes14] = ACTIONS(840),
    [anon_sym_bytes15] = ACTIONS(840),
    [anon_sym_bytes16] = ACTIONS(840),
    [anon_sym_bytes17] = ACTIONS(840),
    [anon_sym_bytes18] = ACTIONS(840),
    [anon_sym_bytes19] = ACTIONS(840),
    [anon_sym_bytes20] = ACTIONS(840),
    [anon_sym_bytes21] = ACTIONS(840),
    [anon_sym_bytes22] = ACTIONS(840),
    [anon_sym_bytes23] = ACTIONS(840),
    [anon_sym_bytes24] = ACTIONS(840),
    [anon_sym_bytes25] = ACTIONS(840),
    [anon_sym_bytes26] = ACTIONS(840),
    [anon_sym_bytes27] = ACTIONS(840),
    [anon_sym_bytes28] = ACTIONS(840),
    [anon_sym_bytes29] = ACTIONS(840),
    [anon_sym_bytes30] = ACTIONS(840),
    [anon_sym_bytes31] = ACTIONS(840),
    [anon_sym_bytes32] = ACTIONS(840),
    [anon_sym_fixed] = ACTIONS(840),
    [aux_sym__fixed_token1] = ACTIONS(840),
    [anon_sym_ufixed] = ACTIONS(840),
    [aux_sym__ufixed_token1] = ACTIONS(840),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(247)] = {
    [sym_identifier] = ACTIONS(688),
    [anon_sym_RBRACE] = ACTIONS(686),
    [anon_sym_type] = ACTIONS(688),
    [anon_sym_error] = ACTIONS(688),
    [anon_sym_struct] = ACTIONS(688),
    [anon_sym_enum] = ACTIONS(688),
    [anon_sym_event] = ACTIONS(688),
    [anon_sym_using] = ACTIONS(688),
    [anon_sym_function] = ACTIONS(688),
    [anon_sym_byte] = ACTIONS(688),
    [anon_sym_address] = ACTIONS(688),
    [anon_sym_var] = ACTIONS(688),
    [anon_sym_modifier] = ACTIONS(688),
    [anon_sym_constructor] = ACTIONS(688),
    [anon_sym_fallback] = ACTIONS(688),
    [anon_sym_receive] = ACTIONS(688),
    [anon_sym_mapping] = ACTIONS(688),
    [anon_sym_bool] = ACTIONS(688),
    [anon_sym_string] = ACTIONS(688),
    [anon_sym_int] = ACTIONS(688),
    [anon_sym_int8] = ACTIONS(688),
    [anon_sym_int16] = ACTIONS(688),
    [anon_sym_int24] = ACTIONS(688),
    [anon_sym_int32] = ACTIONS(688),
    [anon_sym_int40] = ACTIONS(688),
    [anon_sym_int48] = ACTIONS(688),
    [anon_sym_int56] = ACTIONS(688),
    [anon_sym_int64] = ACTIONS(688),
    [anon_sym_int72] = ACTIONS(688),
    [anon_sym_int80] = ACTIONS(688),
    [anon_sym_int88] = ACTIONS(688),
    [anon_sym_int96] = ACTIONS(688),
    [anon_sym_int104] = ACTIONS(688),
    [anon_sym_int112] = ACTIONS(688),
    [anon_sym_int120] = ACTIONS(688),
    [anon_sym_int128] = ACTIONS(688),
    [anon_sym_int136] = ACTIONS(688),
    [anon_sym_int144] = ACTIONS(688),
    [anon_sym_int152] = ACTIONS(688),
    [anon_sym_int160] = ACTIONS(688),
    [anon_sym_int168] = ACTIONS(688),
    [anon_sym_int176] = ACTIONS(688),
    [anon_sym_int184] = ACTIONS(688),
    [anon_sym_int192] = ACTIONS(688),
    [anon_sym_int200] = ACTIONS(688),
    [anon_sym_int208] = ACTIONS(688),
    [anon_sym_int216] = ACTIONS(688),
    [anon_sym_int224] = ACTIONS(688),
    [anon_sym_int232] = ACTIONS(688),
    [anon_sym_int240] = ACTIONS(688),
    [anon_sym_int248] = ACTIONS(688),
    [anon_sym_int256] = ACTIONS(688),
    [anon_sym_uint] = ACTIONS(688),
    [anon_sym_uint8] = ACTIONS(688),
    [anon_sym_uint16] = ACTIONS(688),
    [anon_sym_uint24] = ACTIONS(688),
    [anon_sym_uint32] = ACTIONS(688),
    [anon_sym_uint40] = ACTIONS(688),
    [anon_sym_uint48] = ACTIONS(688),
    [anon_sym_uint56] = ACTIONS(688),
    [anon_sym_uint64] = ACTIONS(688),
    [anon_sym_uint72] = ACTIONS(688),
    [anon_sym_uint80] = ACTIONS(688),
    [anon_sym_uint88] = ACTIONS(688),
    [anon_sym_uint96] = ACTIONS(688),
    [anon_sym_uint104] = ACTIONS(688),
    [anon_sym_uint112] = ACTIONS(688),
    [anon_sym_uint120] = ACTIONS(688),
    [anon_sym_uint128] = ACTIONS(688),
    [anon_sym_uint136] = ACTIONS(688),
    [anon_sym_uint144] = ACTIONS(688),
    [anon_sym_uint152] = ACTIONS(688),
    [anon_sym_uint160] = ACTIONS(688),
    [anon_sym_uint168] = ACTIONS(688),
    [anon_sym_uint176] = ACTIONS(688),
    [anon_sym_uint184] = ACTIONS(688),
    [anon_sym_uint192] = ACTIONS(688),
    [anon_sym_uint200] = ACTIONS(688),
    [anon_sym_uint208] = ACTIONS(688),
    [anon_sym_uint216] = ACTIONS(688),
    [anon_sym_uint224] = ACTIONS(688),
    [anon_sym_uint232] = ACTIONS(688),
    [anon_sym_uint240] = ACTIONS(688),
    [anon_sym_uint248] = ACTIONS(688),
    [anon_sym_uint256] = ACTIONS(688),
    [anon_sym_bytes] = ACTIONS(688),
    [anon_sym_bytes1] = ACTIONS(688),
    [anon_sym_bytes2] = ACTIONS(688),
    [anon_sym_bytes3] = ACTIONS(688),
    [anon_sym_bytes4] = ACTIONS(688),
    [anon_sym_bytes5] = ACTIONS(688),
    [anon_sym_bytes6] = ACTIONS(688),
    [anon_sym_bytes7] = ACTIONS(688),
    [anon_sym_bytes8] = ACTIONS(688),
    [anon_sym_bytes9] = ACTIONS(688),
    [anon_sym_bytes10] = ACTIONS(688),
    [anon_sym_bytes11] = ACTIONS(688),
    [anon_sym_bytes12] = ACTIONS(688),
    [anon_sym_bytes13] = ACTIONS(688),
    [anon_sym_bytes14] = ACTIONS(688),
    [anon_sym_bytes15] = ACTIONS(688),
    [anon_sym_bytes16] = ACTIONS(688),
    [anon_sym_bytes17] = ACTIONS(688),
    [anon_sym_bytes18] = ACTIONS(688),
    [anon_sym_bytes19] = ACTIONS(688),
    [anon_sym_bytes20] = ACTIONS(688),
    [anon_sym_bytes21] = ACTIONS(688),
    [anon_sym_bytes22] = ACTIONS(688),
    [anon_sym_bytes23] = ACTIONS(688),
    [anon_sym_bytes24] = ACTIONS(688),
    [anon_sym_bytes25] = ACTIONS(688),
    [anon_sym_bytes26] = ACTIONS(688),
    [anon_sym_bytes27] = ACTIONS(688),
    [anon_sym_bytes28] = ACTIONS(688),
    [anon_sym_bytes29] = ACTIONS(688),
    [anon_sym_bytes30] = ACTIONS(688),
    [anon_sym_bytes31] = ACTIONS(688),
    [anon_sym_bytes32] = ACTIONS(688),
    [anon_sym_fixed] = ACTIONS(688),
    [aux_sym__fixed_token1] = ACTIONS(688),
    [anon_sym_ufixed] = ACTIONS(688),
    [aux_sym__ufixed_token1] = ACTIONS(688),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(248)] = {
    [sym_identifier] = ACTIONS(692),
    [anon_sym_RBRACE] = ACTIONS(690),
    [anon_sym_type] = ACTIONS(692),
    [anon_sym_error] = ACTIONS(692),
    [anon_sym_struct] = ACTIONS(692),
    [anon_sym_enum] = ACTIONS(692),
    [anon_sym_event] = ACTIONS(692),
    [anon_sym_using] = ACTIONS(692),
    [anon_sym_function] = ACTIONS(692),
    [anon_sym_byte] = ACTIONS(692),
    [anon_sym_address] = ACTIONS(692),
    [anon_sym_var] = ACTIONS(692),
    [anon_sym_modifier] = ACTIONS(692),
    [anon_sym_constructor] = ACTIONS(692),
    [anon_sym_fallback] = ACTIONS(692),
    [anon_sym_receive] = ACTIONS(692),
    [anon_sym_mapping] = ACTIONS(692),
    [anon_sym_bool] = ACTIONS(692),
    [anon_sym_string] = ACTIONS(692),
    [anon_sym_int] = ACTIONS(692),
    [anon_sym_int8] = ACTIONS(692),
    [anon_sym_int16] = ACTIONS(692),
    [anon_sym_int24] = ACTIONS(692),
    [anon_sym_int32] = ACTIONS(692),
    [anon_sym_int40] = ACTIONS(692),
    [anon_sym_int48] = ACTIONS(692),
    [anon_sym_int56] = ACTIONS(692),
    [anon_sym_int64] = ACTIONS(692),
    [anon_sym_int72] = ACTIONS(692),
    [anon_sym_int80] = ACTIONS(692),
    [anon_sym_int88] = ACTIONS(692),
    [anon_sym_int96] = ACTIONS(692),
    [anon_sym_int104] = ACTIONS(692),
    [anon_sym_int112] = ACTIONS(692),
    [anon_sym_int120] = ACTIONS(692),
    [anon_sym_int128] = ACTIONS(692),
    [anon_sym_int136] = ACTIONS(692),
    [anon_sym_int144] = ACTIONS(692),
    [anon_sym_int152] = ACTIONS(692),
    [anon_sym_int160] = ACTIONS(692),
    [anon_sym_int168] = ACTIONS(692),
    [anon_sym_int176] = ACTIONS(692),
    [anon_sym_int184] = ACTIONS(692),
    [anon_sym_int192] = ACTIONS(692),
    [anon_sym_int200] = ACTIONS(692),
    [anon_sym_int208] = ACTIONS(692),
    [anon_sym_int216] = ACTIONS(692),
    [anon_sym_int224] = ACTIONS(692),
    [anon_sym_int232] = ACTIONS(692),
    [anon_sym_int240] = ACTIONS(692),
    [anon_sym_int248] = ACTIONS(692),
    [anon_sym_int256] = ACTIONS(692),
    [anon_sym_uint] = ACTIONS(692),
    [anon_sym_uint8] = ACTIONS(692),
    [anon_sym_uint16] = ACTIONS(692),
    [anon_sym_uint24] = ACTIONS(692),
    [anon_sym_uint32] = ACTIONS(692),
    [anon_sym_uint40] = ACTIONS(692),
    [anon_sym_uint48] = ACTIONS(692),
    [anon_sym_uint56] = ACTIONS(692),
    [anon_sym_uint64] = ACTIONS(692),
    [anon_sym_uint72] = ACTIONS(692),
    [anon_sym_uint80] = ACTIONS(692),
    [anon_sym_uint88] = ACTIONS(692),
    [anon_sym_uint96] = ACTIONS(692),
    [anon_sym_uint104] = ACTIONS(692),
    [anon_sym_uint112] = ACTIONS(692),
    [anon_sym_uint120] = ACTIONS(692),
    [anon_sym_uint128] = ACTIONS(692),
    [anon_sym_uint136] = ACTIONS(692),
    [anon_sym_uint144] = ACTIONS(692),
    [anon_sym_uint152] = ACTIONS(692),
    [anon_sym_uint160] = ACTIONS(692),
    [anon_sym_uint168] = ACTIONS(692),
    [anon_sym_uint176] = ACTIONS(692),
    [anon_sym_uint184] = ACTIONS(692),
    [anon_sym_uint192] = ACTIONS(692),
    [anon_sym_uint200] = ACTIONS(692),
    [anon_sym_uint208] = ACTIONS(692),
    [anon_sym_uint216] = ACTIONS(692),
    [anon_sym_uint224] = ACTIONS(692),
    [anon_sym_uint232] = ACTIONS(692),
    [anon_sym_uint240] = ACTIONS(692),
    [anon_sym_uint248] = ACTIONS(692),
    [anon_sym_uint256] = ACTIONS(692),
    [anon_sym_bytes] = ACTIONS(692),
    [anon_sym_bytes1] = ACTIONS(692),
    [anon_sym_bytes2] = ACTIONS(692),
    [anon_sym_bytes3] = ACTIONS(692),
    [anon_sym_bytes4] = ACTIONS(692),
    [anon_sym_bytes5] = ACTIONS(692),
    [anon_sym_bytes6] = ACTIONS(692),
    [anon_sym_bytes7] = ACTIONS(692),
    [anon_sym_bytes8] = ACTIONS(692),
    [anon_sym_bytes9] = ACTIONS(692),
    [anon_sym_bytes10] = ACTIONS(692),
    [anon_sym_bytes11] = ACTIONS(692),
    [anon_sym_bytes12] = ACTIONS(692),
    [anon_sym_bytes13] = ACTIONS(692),
    [anon_sym_bytes14] = ACTIONS(692),
    [anon_sym_bytes15] = ACTIONS(692),
    [anon_sym_bytes16] = ACTIONS(692),
    [anon_sym_bytes17] = ACTIONS(692),
    [anon_sym_bytes18] = ACTIONS(692),
    [anon_sym_bytes19] = ACTIONS(692),
    [anon_sym_bytes20] = ACTIONS(692),
    [anon_sym_bytes21] = ACTIONS(692),
    [anon_sym_bytes22] = ACTIONS(692),
    [anon_sym_bytes23] = ACTIONS(692),
    [anon_sym_bytes24] = ACTIONS(692),
    [anon_sym_bytes25] = ACTIONS(692),
    [anon_sym_bytes26] = ACTIONS(692),
    [anon_sym_bytes27] = ACTIONS(692),
    [anon_sym_bytes28] = ACTIONS(692),
    [anon_sym_bytes29] = ACTIONS(692),
    [anon_sym_bytes30] = ACTIONS(692),
    [anon_sym_bytes31] = ACTIONS(692),
    [anon_sym_bytes32] = ACTIONS(692),
    [anon_sym_fixed] = ACTIONS(692),
    [aux_sym__fixed_token1] = ACTIONS(692),
    [anon_sym_ufixed] = ACTIONS(692),
    [aux_sym__ufixed_token1] = ACTIONS(692),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(249)] = {
    [sym_identifier] = ACTIONS(844),
    [anon_sym_RBRACE] = ACTIONS(846),
    [anon_sym_type] = ACTIONS(844),
    [anon_sym_error] = ACTIONS(844),
    [anon_sym_struct] = ACTIONS(844),
    [anon_sym_enum] = ACTIONS(844),
    [anon_sym_event] = ACTIONS(844),
    [anon_sym_using] = ACTIONS(844),
    [anon_sym_function] = ACTIONS(844),
    [anon_sym_byte] = ACTIONS(844),
    [anon_sym_address] = ACTIONS(844),
    [anon_sym_var] = ACTIONS(844),
    [anon_sym_modifier] = ACTIONS(844),
    [anon_sym_constructor] = ACTIONS(844),
    [anon_sym_fallback] = ACTIONS(844),
    [anon_sym_receive] = ACTIONS(844),
    [anon_sym_mapping] = ACTIONS(844),
    [anon_sym_bool] = ACTIONS(844),
    [anon_sym_string] = ACTIONS(844),
    [anon_sym_int] = ACTIONS(844),
    [anon_sym_int8] = ACTIONS(844),
    [anon_sym_int16] = ACTIONS(844),
    [anon_sym_int24] = ACTIONS(844),
    [anon_sym_int32] = ACTIONS(844),
    [anon_sym_int40] = ACTIONS(844),
    [anon_sym_int48] = ACTIONS(844),
    [anon_sym_int56] = ACTIONS(844),
    [anon_sym_int64] = ACTIONS(844),
    [anon_sym_int72] = ACTIONS(844),
    [anon_sym_int80] = ACTIONS(844),
    [anon_sym_int88] = ACTIONS(844),
    [anon_sym_int96] = ACTIONS(844),
    [anon_sym_int104] = ACTIONS(844),
    [anon_sym_int112] = ACTIONS(844),
    [anon_sym_int120] = ACTIONS(844),
    [anon_sym_int128] = ACTIONS(844),
    [anon_sym_int136] = ACTIONS(844),
    [anon_sym_int144] = ACTIONS(844),
    [anon_sym_int152] = ACTIONS(844),
    [anon_sym_int160] = ACTIONS(844),
    [anon_sym_int168] = ACTIONS(844),
    [anon_sym_int176] = ACTIONS(844),
    [anon_sym_int184] = ACTIONS(844),
    [anon_sym_int192] = ACTIONS(844),
    [anon_sym_int200] = ACTIONS(844),
    [anon_sym_int208] = ACTIONS(844),
    [anon_sym_int216] = ACTIONS(844),
    [anon_sym_int224] = ACTIONS(844),
    [anon_sym_int232] = ACTIONS(844),
    [anon_sym_int240] = ACTIONS(844),
    [anon_sym_int248] = ACTIONS(844),
    [anon_sym_int256] = ACTIONS(844),
    [anon_sym_uint] = ACTIONS(844),
    [anon_sym_uint8] = ACTIONS(844),
    [anon_sym_uint16] = ACTIONS(844),
    [anon_sym_uint24] = ACTIONS(844),
    [anon_sym_uint32] = ACTIONS(844),
    [anon_sym_uint40] = ACTIONS(844),
    [anon_sym_uint48] = ACTIONS(844),
    [anon_sym_uint56] = ACTIONS(844),
    [anon_sym_uint64] = ACTIONS(844),
    [anon_sym_uint72] = ACTIONS(844),
    [anon_sym_uint80] = ACTIONS(844),
    [anon_sym_uint88] = ACTIONS(844),
    [anon_sym_uint96] = ACTIONS(844),
    [anon_sym_uint104] = ACTIONS(844),
    [anon_sym_uint112] = ACTIONS(844),
    [anon_sym_uint120] = ACTIONS(844),
    [anon_sym_uint128] = ACTIONS(844),
    [anon_sym_uint136] = ACTIONS(844),
    [anon_sym_uint144] = ACTIONS(844),
    [anon_sym_uint152] = ACTIONS(844),
    [anon_sym_uint160] = ACTIONS(844),
    [anon_sym_uint168] = ACTIONS(844),
    [anon_sym_uint176] = ACTIONS(844),
    [anon_sym_uint184] = ACTIONS(844),
    [anon_sym_uint192] = ACTIONS(844),
    [anon_sym_uint200] = ACTIONS(844),
    [anon_sym_uint208] = ACTIONS(844),
    [anon_sym_uint216] = ACTIONS(844),
    [anon_sym_uint224] = ACTIONS(844),
    [anon_sym_uint232] = ACTIONS(844),
    [anon_sym_uint240] = ACTIONS(844),
    [anon_sym_uint248] = ACTIONS(844),
    [anon_sym_uint256] = ACTIONS(844),
    [anon_sym_bytes] = ACTIONS(844),
    [anon_sym_bytes1] = ACTIONS(844),
    [anon_sym_bytes2] = ACTIONS(844),
    [anon_sym_bytes3] = ACTIONS(844),
    [anon_sym_bytes4] = ACTIONS(844),
    [anon_sym_bytes5] = ACTIONS(844),
    [anon_sym_bytes6] = ACTIONS(844),
    [anon_sym_bytes7] = ACTIONS(844),
    [anon_sym_bytes8] = ACTIONS(844),
    [anon_sym_bytes9] = ACTIONS(844),
    [anon_sym_bytes10] = ACTIONS(844),
    [anon_sym_bytes11] = ACTIONS(844),
    [anon_sym_bytes12] = ACTIONS(844),
    [anon_sym_bytes13] = ACTIONS(844),
    [anon_sym_bytes14] = ACTIONS(844),
    [anon_sym_bytes15] = ACTIONS(844),
    [anon_sym_bytes16] = ACTIONS(844),
    [anon_sym_bytes17] = ACTIONS(844),
    [anon_sym_bytes18] = ACTIONS(844),
    [anon_sym_bytes19] = ACTIONS(844),
    [anon_sym_bytes20] = ACTIONS(844),
    [anon_sym_bytes21] = ACTIONS(844),
    [anon_sym_bytes22] = ACTIONS(844),
    [anon_sym_bytes23] = ACTIONS(844),
    [anon_sym_bytes24] = ACTIONS(844),
    [anon_sym_bytes25] = ACTIONS(844),
    [anon_sym_bytes26] = ACTIONS(844),
    [anon_sym_bytes27] = ACTIONS(844),
    [anon_sym_bytes28] = ACTIONS(844),
    [anon_sym_bytes29] = ACTIONS(844),
    [anon_sym_bytes30] = ACTIONS(844),
    [anon_sym_bytes31] = ACTIONS(844),
    [anon_sym_bytes32] = ACTIONS(844),
    [anon_sym_fixed] = ACTIONS(844),
    [aux_sym__fixed_token1] = ACTIONS(844),
    [anon_sym_ufixed] = ACTIONS(844),
    [aux_sym__ufixed_token1] = ACTIONS(844),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(250)] = {
    [sym_identifier] = ACTIONS(808),
    [anon_sym_RBRACE] = ACTIONS(806),
    [anon_sym_type] = ACTIONS(808),
    [anon_sym_error] = ACTIONS(808),
    [anon_sym_struct] = ACTIONS(808),
    [anon_sym_enum] = ACTIONS(808),
    [anon_sym_event] = ACTIONS(808),
    [anon_sym_using] = ACTIONS(808),
    [anon_sym_function] = ACTIONS(808),
    [anon_sym_byte] = ACTIONS(808),
    [anon_sym_address] = ACTIONS(808),
    [anon_sym_var] = ACTIONS(808),
    [anon_sym_modifier] = ACTIONS(808),
    [anon_sym_constructor] = ACTIONS(808),
    [anon_sym_fallback] = ACTIONS(808),
    [anon_sym_receive] = ACTIONS(808),
    [anon_sym_mapping] = ACTIONS(808),
    [anon_sym_bool] = ACTIONS(808),
    [anon_sym_string] = ACTIONS(808),
    [anon_sym_int] = ACTIONS(808),
    [anon_sym_int8] = ACTIONS(808),
    [anon_sym_int16] = ACTIONS(808),
    [anon_sym_int24] = ACTIONS(808),
    [anon_sym_int32] = ACTIONS(808),
    [anon_sym_int40] = ACTIONS(808),
    [anon_sym_int48] = ACTIONS(808),
    [anon_sym_int56] = ACTIONS(808),
    [anon_sym_int64] = ACTIONS(808),
    [anon_sym_int72] = ACTIONS(808),
    [anon_sym_int80] = ACTIONS(808),
    [anon_sym_int88] = ACTIONS(808),
    [anon_sym_int96] = ACTIONS(808),
    [anon_sym_int104] = ACTIONS(808),
    [anon_sym_int112] = ACTIONS(808),
    [anon_sym_int120] = ACTIONS(808),
    [anon_sym_int128] = ACTIONS(808),
    [anon_sym_int136] = ACTIONS(808),
    [anon_sym_int144] = ACTIONS(808),
    [anon_sym_int152] = ACTIONS(808),
    [anon_sym_int160] = ACTIONS(808),
    [anon_sym_int168] = ACTIONS(808),
    [anon_sym_int176] = ACTIONS(808),
    [anon_sym_int184] = ACTIONS(808),
    [anon_sym_int192] = ACTIONS(808),
    [anon_sym_int200] = ACTIONS(808),
    [anon_sym_int208] = ACTIONS(808),
    [anon_sym_int216] = ACTIONS(808),
    [anon_sym_int224] = ACTIONS(808),
    [anon_sym_int232] = ACTIONS(808),
    [anon_sym_int240] = ACTIONS(808),
    [anon_sym_int248] = ACTIONS(808),
    [anon_sym_int256] = ACTIONS(808),
    [anon_sym_uint] = ACTIONS(808),
    [anon_sym_uint8] = ACTIONS(808),
    [anon_sym_uint16] = ACTIONS(808),
    [anon_sym_uint24] = ACTIONS(808),
    [anon_sym_uint32] = ACTIONS(808),
    [anon_sym_uint40] = ACTIONS(808),
    [anon_sym_uint48] = ACTIONS(808),
    [anon_sym_uint56] = ACTIONS(808),
    [anon_sym_uint64] = ACTIONS(808),
    [anon_sym_uint72] = ACTIONS(808),
    [anon_sym_uint80] = ACTIONS(808),
    [anon_sym_uint88] = ACTIONS(808),
    [anon_sym_uint96] = ACTIONS(808),
    [anon_sym_uint104] = ACTIONS(808),
    [anon_sym_uint112] = ACTIONS(808),
    [anon_sym_uint120] = ACTIONS(808),
    [anon_sym_uint128] = ACTIONS(808),
    [anon_sym_uint136] = ACTIONS(808),
    [anon_sym_uint144] = ACTIONS(808),
    [anon_sym_uint152] = ACTIONS(808),
    [anon_sym_uint160] = ACTIONS(808),
    [anon_sym_uint168] = ACTIONS(808),
    [anon_sym_uint176] = ACTIONS(808),
    [anon_sym_uint184] = ACTIONS(808),
    [anon_sym_uint192] = ACTIONS(808),
    [anon_sym_uint200] = ACTIONS(808),
    [anon_sym_uint208] = ACTIONS(808),
    [anon_sym_uint216] = ACTIONS(808),
    [anon_sym_uint224] = ACTIONS(808),
    [anon_sym_uint232] = ACTIONS(808),
    [anon_sym_uint240] = ACTIONS(808),
    [anon_sym_uint248] = ACTIONS(808),
    [anon_sym_uint256] = ACTIONS(808),
    [anon_sym_bytes] = ACTIONS(808),
    [anon_sym_bytes1] = ACTIONS(808),
    [anon_sym_bytes2] = ACTIONS(808),
    [anon_sym_bytes3] = ACTIONS(808),
    [anon_sym_bytes4] = ACTIONS(808),
    [anon_sym_bytes5] = ACTIONS(808),
    [anon_sym_bytes6] = ACTIONS(808),
    [anon_sym_bytes7] = ACTIONS(808),
    [anon_sym_bytes8] = ACTIONS(808),
    [anon_sym_bytes9] = ACTIONS(808),
    [anon_sym_bytes10] = ACTIONS(808),
    [anon_sym_bytes11] = ACTIONS(808),
    [anon_sym_bytes12] = ACTIONS(808),
    [anon_sym_bytes13] = ACTIONS(808),
    [anon_sym_bytes14] = ACTIONS(808),
    [anon_sym_bytes15] = ACTIONS(808),
    [anon_sym_bytes16] = ACTIONS(808),
    [anon_sym_bytes17] = ACTIONS(808),
    [anon_sym_bytes18] = ACTIONS(808),
    [anon_sym_bytes19] = ACTIONS(808),
    [anon_sym_bytes20] = ACTIONS(808),
    [anon_sym_bytes21] = ACTIONS(808),
    [anon_sym_bytes22] = ACTIONS(808),
    [anon_sym_bytes23] = ACTIONS(808),
    [anon_sym_bytes24] = ACTIONS(808),
    [anon_sym_bytes25] = ACTIONS(808),
    [anon_sym_bytes26] = ACTIONS(808),
    [anon_sym_bytes27] = ACTIONS(808),
    [anon_sym_bytes28] = ACTIONS(808),
    [anon_sym_bytes29] = ACTIONS(808),
    [anon_sym_bytes30] = ACTIONS(808),
    [anon_sym_bytes31] = ACTIONS(808),
    [anon_sym_bytes32] = ACTIONS(808),
    [anon_sym_fixed] = ACTIONS(808),
    [aux_sym__fixed_token1] = ACTIONS(808),
    [anon_sym_ufixed] = ACTIONS(808),
    [aux_sym__ufixed_token1] = ACTIONS(808),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(251)] = {
    [sym_identifier] = ACTIONS(848),
    [anon_sym_RBRACE] = ACTIONS(850),
    [anon_sym_type] = ACTIONS(848),
    [anon_sym_error] = ACTIONS(848),
    [anon_sym_struct] = ACTIONS(848),
    [anon_sym_enum] = ACTIONS(848),
    [anon_sym_event] = ACTIONS(848),
    [anon_sym_using] = ACTIONS(848),
    [anon_sym_function] = ACTIONS(848),
    [anon_sym_byte] = ACTIONS(848),
    [anon_sym_address] = ACTIONS(848),
    [anon_sym_var] = ACTIONS(848),
    [anon_sym_modifier] = ACTIONS(848),
    [anon_sym_constructor] = ACTIONS(848),
    [anon_sym_fallback] = ACTIONS(848),
    [anon_sym_receive] = ACTIONS(848),
    [anon_sym_mapping] = ACTIONS(848),
    [anon_sym_bool] = ACTIONS(848),
    [anon_sym_string] = ACTIONS(848),
    [anon_sym_int] = ACTIONS(848),
    [anon_sym_int8] = ACTIONS(848),
    [anon_sym_int16] = ACTIONS(848),
    [anon_sym_int24] = ACTIONS(848),
    [anon_sym_int32] = ACTIONS(848),
    [anon_sym_int40] = ACTIONS(848),
    [anon_sym_int48] = ACTIONS(848),
    [anon_sym_int56] = ACTIONS(848),
    [anon_sym_int64] = ACTIONS(848),
    [anon_sym_int72] = ACTIONS(848),
    [anon_sym_int80] = ACTIONS(848),
    [anon_sym_int88] = ACTIONS(848),
    [anon_sym_int96] = ACTIONS(848),
    [anon_sym_int104] = ACTIONS(848),
    [anon_sym_int112] = ACTIONS(848),
    [anon_sym_int120] = ACTIONS(848),
    [anon_sym_int128] = ACTIONS(848),
    [anon_sym_int136] = ACTIONS(848),
    [anon_sym_int144] = ACTIONS(848),
    [anon_sym_int152] = ACTIONS(848),
    [anon_sym_int160] = ACTIONS(848),
    [anon_sym_int168] = ACTIONS(848),
    [anon_sym_int176] = ACTIONS(848),
    [anon_sym_int184] = ACTIONS(848),
    [anon_sym_int192] = ACTIONS(848),
    [anon_sym_int200] = ACTIONS(848),
    [anon_sym_int208] = ACTIONS(848),
    [anon_sym_int216] = ACTIONS(848),
    [anon_sym_int224] = ACTIONS(848),
    [anon_sym_int232] = ACTIONS(848),
    [anon_sym_int240] = ACTIONS(848),
    [anon_sym_int248] = ACTIONS(848),
    [anon_sym_int256] = ACTIONS(848),
    [anon_sym_uint] = ACTIONS(848),
    [anon_sym_uint8] = ACTIONS(848),
    [anon_sym_uint16] = ACTIONS(848),
    [anon_sym_uint24] = ACTIONS(848),
    [anon_sym_uint32] = ACTIONS(848),
    [anon_sym_uint40] = ACTIONS(848),
    [anon_sym_uint48] = ACTIONS(848),
    [anon_sym_uint56] = ACTIONS(848),
    [anon_sym_uint64] = ACTIONS(848),
    [anon_sym_uint72] = ACTIONS(848),
    [anon_sym_uint80] = ACTIONS(848),
    [anon_sym_uint88] = ACTIONS(848),
    [anon_sym_uint96] = ACTIONS(848),
    [anon_sym_uint104] = ACTIONS(848),
    [anon_sym_uint112] = ACTIONS(848),
    [anon_sym_uint120] = ACTIONS(848),
    [anon_sym_uint128] = ACTIONS(848),
    [anon_sym_uint136] = ACTIONS(848),
    [anon_sym_uint144] = ACTIONS(848),
    [anon_sym_uint152] = ACTIONS(848),
    [anon_sym_uint160] = ACTIONS(848),
    [anon_sym_uint168] = ACTIONS(848),
    [anon_sym_uint176] = ACTIONS(848),
    [anon_sym_uint184] = ACTIONS(848),
    [anon_sym_uint192] = ACTIONS(848),
    [anon_sym_uint200] = ACTIONS(848),
    [anon_sym_uint208] = ACTIONS(848),
    [anon_sym_uint216] = ACTIONS(848),
    [anon_sym_uint224] = ACTIONS(848),
    [anon_sym_uint232] = ACTIONS(848),
    [anon_sym_uint240] = ACTIONS(848),
    [anon_sym_uint248] = ACTIONS(848),
    [anon_sym_uint256] = ACTIONS(848),
    [anon_sym_bytes] = ACTIONS(848),
    [anon_sym_bytes1] = ACTIONS(848),
    [anon_sym_bytes2] = ACTIONS(848),
    [anon_sym_bytes3] = ACTIONS(848),
    [anon_sym_bytes4] = ACTIONS(848),
    [anon_sym_bytes5] = ACTIONS(848),
    [anon_sym_bytes6] = ACTIONS(848),
    [anon_sym_bytes7] = ACTIONS(848),
    [anon_sym_bytes8] = ACTIONS(848),
    [anon_sym_bytes9] = ACTIONS(848),
    [anon_sym_bytes10] = ACTIONS(848),
    [anon_sym_bytes11] = ACTIONS(848),
    [anon_sym_bytes12] = ACTIONS(848),
    [anon_sym_bytes13] = ACTIONS(848),
    [anon_sym_bytes14] = ACTIONS(848),
    [anon_sym_bytes15] = ACTIONS(848),
    [anon_sym_bytes16] = ACTIONS(848),
    [anon_sym_bytes17] = ACTIONS(848),
    [anon_sym_bytes18] = ACTIONS(848),
    [anon_sym_bytes19] = ACTIONS(848),
    [anon_sym_bytes20] = ACTIONS(848),
    [anon_sym_bytes21] = ACTIONS(848),
    [anon_sym_bytes22] = ACTIONS(848),
    [anon_sym_bytes23] = ACTIONS(848),
    [anon_sym_bytes24] = ACTIONS(848),
    [anon_sym_bytes25] = ACTIONS(848),
    [anon_sym_bytes26] = ACTIONS(848),
    [anon_sym_bytes27] = ACTIONS(848),
    [anon_sym_bytes28] = ACTIONS(848),
    [anon_sym_bytes29] = ACTIONS(848),
    [anon_sym_bytes30] = ACTIONS(848),
    [anon_sym_bytes31] = ACTIONS(848),
    [anon_sym_bytes32] = ACTIONS(848),
    [anon_sym_fixed] = ACTIONS(848),
    [aux_sym__fixed_token1] = ACTIONS(848),
    [anon_sym_ufixed] = ACTIONS(848),
    [aux_sym__ufixed_token1] = ACTIONS(848),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(252)] = {
    [sym_identifier] = ACTIONS(852),
    [anon_sym_RBRACE] = ACTIONS(854),
    [anon_sym_type] = ACTIONS(852),
    [anon_sym_error] = ACTIONS(852),
    [anon_sym_struct] = ACTIONS(852),
    [anon_sym_enum] = ACTIONS(852),
    [anon_sym_event] = ACTIONS(852),
    [anon_sym_using] = ACTIONS(852),
    [anon_sym_function] = ACTIONS(852),
    [anon_sym_byte] = ACTIONS(852),
    [anon_sym_address] = ACTIONS(852),
    [anon_sym_var] = ACTIONS(852),
    [anon_sym_modifier] = ACTIONS(852),
    [anon_sym_constructor] = ACTIONS(852),
    [anon_sym_fallback] = ACTIONS(852),
    [anon_sym_receive] = ACTIONS(852),
    [anon_sym_mapping] = ACTIONS(852),
    [anon_sym_bool] = ACTIONS(852),
    [anon_sym_string] = ACTIONS(852),
    [anon_sym_int] = ACTIONS(852),
    [anon_sym_int8] = ACTIONS(852),
    [anon_sym_int16] = ACTIONS(852),
    [anon_sym_int24] = ACTIONS(852),
    [anon_sym_int32] = ACTIONS(852),
    [anon_sym_int40] = ACTIONS(852),
    [anon_sym_int48] = ACTIONS(852),
    [anon_sym_int56] = ACTIONS(852),
    [anon_sym_int64] = ACTIONS(852),
    [anon_sym_int72] = ACTIONS(852),
    [anon_sym_int80] = ACTIONS(852),
    [anon_sym_int88] = ACTIONS(852),
    [anon_sym_int96] = ACTIONS(852),
    [anon_sym_int104] = ACTIONS(852),
    [anon_sym_int112] = ACTIONS(852),
    [anon_sym_int120] = ACTIONS(852),
    [anon_sym_int128] = ACTIONS(852),
    [anon_sym_int136] = ACTIONS(852),
    [anon_sym_int144] = ACTIONS(852),
    [anon_sym_int152] = ACTIONS(852),
    [anon_sym_int160] = ACTIONS(852),
    [anon_sym_int168] = ACTIONS(852),
    [anon_sym_int176] = ACTIONS(852),
    [anon_sym_int184] = ACTIONS(852),
    [anon_sym_int192] = ACTIONS(852),
    [anon_sym_int200] = ACTIONS(852),
    [anon_sym_int208] = ACTIONS(852),
    [anon_sym_int216] = ACTIONS(852),
    [anon_sym_int224] = ACTIONS(852),
    [anon_sym_int232] = ACTIONS(852),
    [anon_sym_int240] = ACTIONS(852),
    [anon_sym_int248] = ACTIONS(852),
    [anon_sym_int256] = ACTIONS(852),
    [anon_sym_uint] = ACTIONS(852),
    [anon_sym_uint8] = ACTIONS(852),
    [anon_sym_uint16] = ACTIONS(852),
    [anon_sym_uint24] = ACTIONS(852),
    [anon_sym_uint32] = ACTIONS(852),
    [anon_sym_uint40] = ACTIONS(852),
    [anon_sym_uint48] = ACTIONS(852),
    [anon_sym_uint56] = ACTIONS(852),
    [anon_sym_uint64] = ACTIONS(852),
    [anon_sym_uint72] = ACTIONS(852),
    [anon_sym_uint80] = ACTIONS(852),
    [anon_sym_uint88] = ACTIONS(852),
    [anon_sym_uint96] = ACTIONS(852),
    [anon_sym_uint104] = ACTIONS(852),
    [anon_sym_uint112] = ACTIONS(852),
    [anon_sym_uint120] = ACTIONS(852),
    [anon_sym_uint128] = ACTIONS(852),
    [anon_sym_uint136] = ACTIONS(852),
    [anon_sym_uint144] = ACTIONS(852),
    [anon_sym_uint152] = ACTIONS(852),
    [anon_sym_uint160] = ACTIONS(852),
    [anon_sym_uint168] = ACTIONS(852),
    [anon_sym_uint176] = ACTIONS(852),
    [anon_sym_uint184] = ACTIONS(852),
    [anon_sym_uint192] = ACTIONS(852),
    [anon_sym_uint200] = ACTIONS(852),
    [anon_sym_uint208] = ACTIONS(852),
    [anon_sym_uint216] = ACTIONS(852),
    [anon_sym_uint224] = ACTIONS(852),
    [anon_sym_uint232] = ACTIONS(852),
    [anon_sym_uint240] = ACTIONS(852),
    [anon_sym_uint248] = ACTIONS(852),
    [anon_sym_uint256] = ACTIONS(852),
    [anon_sym_bytes] = ACTIONS(852),
    [anon_sym_bytes1] = ACTIONS(852),
    [anon_sym_bytes2] = ACTIONS(852),
    [anon_sym_bytes3] = ACTIONS(852),
    [anon_sym_bytes4] = ACTIONS(852),
    [anon_sym_bytes5] = ACTIONS(852),
    [anon_sym_bytes6] = ACTIONS(852),
    [anon_sym_bytes7] = ACTIONS(852),
    [anon_sym_bytes8] = ACTIONS(852),
    [anon_sym_bytes9] = ACTIONS(852),
    [anon_sym_bytes10] = ACTIONS(852),
    [anon_sym_bytes11] = ACTIONS(852),
    [anon_sym_bytes12] = ACTIONS(852),
    [anon_sym_bytes13] = ACTIONS(852),
    [anon_sym_bytes14] = ACTIONS(852),
    [anon_sym_bytes15] = ACTIONS(852),
    [anon_sym_bytes16] = ACTIONS(852),
    [anon_sym_bytes17] = ACTIONS(852),
    [anon_sym_bytes18] = ACTIONS(852),
    [anon_sym_bytes19] = ACTIONS(852),
    [anon_sym_bytes20] = ACTIONS(852),
    [anon_sym_bytes21] = ACTIONS(852),
    [anon_sym_bytes22] = ACTIONS(852),
    [anon_sym_bytes23] = ACTIONS(852),
    [anon_sym_bytes24] = ACTIONS(852),
    [anon_sym_bytes25] = ACTIONS(852),
    [anon_sym_bytes26] = ACTIONS(852),
    [anon_sym_bytes27] = ACTIONS(852),
    [anon_sym_bytes28] = ACTIONS(852),
    [anon_sym_bytes29] = ACTIONS(852),
    [anon_sym_bytes30] = ACTIONS(852),
    [anon_sym_bytes31] = ACTIONS(852),
    [anon_sym_bytes32] = ACTIONS(852),
    [anon_sym_fixed] = ACTIONS(852),
    [aux_sym__fixed_token1] = ACTIONS(852),
    [anon_sym_ufixed] = ACTIONS(852),
    [aux_sym__ufixed_token1] = ACTIONS(852),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(253)] = {
    [sym_identifier] = ACTIONS(856),
    [anon_sym_RBRACE] = ACTIONS(858),
    [anon_sym_type] = ACTIONS(856),
    [anon_sym_error] = ACTIONS(856),
    [anon_sym_struct] = ACTIONS(856),
    [anon_sym_enum] = ACTIONS(856),
    [anon_sym_event] = ACTIONS(856),
    [anon_sym_using] = ACTIONS(856),
    [anon_sym_function] = ACTIONS(856),
    [anon_sym_byte] = ACTIONS(856),
    [anon_sym_address] = ACTIONS(856),
    [anon_sym_var] = ACTIONS(856),
    [anon_sym_modifier] = ACTIONS(856),
    [anon_sym_constructor] = ACTIONS(856),
    [anon_sym_fallback] = ACTIONS(856),
    [anon_sym_receive] = ACTIONS(856),
    [anon_sym_mapping] = ACTIONS(856),
    [anon_sym_bool] = ACTIONS(856),
    [anon_sym_string] = ACTIONS(856),
    [anon_sym_int] = ACTIONS(856),
    [anon_sym_int8] = ACTIONS(856),
    [anon_sym_int16] = ACTIONS(856),
    [anon_sym_int24] = ACTIONS(856),
    [anon_sym_int32] = ACTIONS(856),
    [anon_sym_int40] = ACTIONS(856),
    [anon_sym_int48] = ACTIONS(856),
    [anon_sym_int56] = ACTIONS(856),
    [anon_sym_int64] = ACTIONS(856),
    [anon_sym_int72] = ACTIONS(856),
    [anon_sym_int80] = ACTIONS(856),
    [anon_sym_int88] = ACTIONS(856),
    [anon_sym_int96] = ACTIONS(856),
    [anon_sym_int104] = ACTIONS(856),
    [anon_sym_int112] = ACTIONS(856),
    [anon_sym_int120] = ACTIONS(856),
    [anon_sym_int128] = ACTIONS(856),
    [anon_sym_int136] = ACTIONS(856),
    [anon_sym_int144] = ACTIONS(856),
    [anon_sym_int152] = ACTIONS(856),
    [anon_sym_int160] = ACTIONS(856),
    [anon_sym_int168] = ACTIONS(856),
    [anon_sym_int176] = ACTIONS(856),
    [anon_sym_int184] = ACTIONS(856),
    [anon_sym_int192] = ACTIONS(856),
    [anon_sym_int200] = ACTIONS(856),
    [anon_sym_int208] = ACTIONS(856),
    [anon_sym_int216] = ACTIONS(856),
    [anon_sym_int224] = ACTIONS(856),
    [anon_sym_int232] = ACTIONS(856),
    [anon_sym_int240] = ACTIONS(856),
    [anon_sym_int248] = ACTIONS(856),
    [anon_sym_int256] = ACTIONS(856),
    [anon_sym_uint] = ACTIONS(856),
    [anon_sym_uint8] = ACTIONS(856),
    [anon_sym_uint16] = ACTIONS(856),
    [anon_sym_uint24] = ACTIONS(856),
    [anon_sym_uint32] = ACTIONS(856),
    [anon_sym_uint40] = ACTIONS(856),
    [anon_sym_uint48] = ACTIONS(856),
    [anon_sym_uint56] = ACTIONS(856),
    [anon_sym_uint64] = ACTIONS(856),
    [anon_sym_uint72] = ACTIONS(856),
    [anon_sym_uint80] = ACTIONS(856),
    [anon_sym_uint88] = ACTIONS(856),
    [anon_sym_uint96] = ACTIONS(856),
    [anon_sym_uint104] = ACTIONS(856),
    [anon_sym_uint112] = ACTIONS(856),
    [anon_sym_uint120] = ACTIONS(856),
    [anon_sym_uint128] = ACTIONS(856),
    [anon_sym_uint136] = ACTIONS(856),
    [anon_sym_uint144] = ACTIONS(856),
    [anon_sym_uint152] = ACTIONS(856),
    [anon_sym_uint160] = ACTIONS(856),
    [anon_sym_uint168] = ACTIONS(856),
    [anon_sym_uint176] = ACTIONS(856),
    [anon_sym_uint184] = ACTIONS(856),
    [anon_sym_uint192] = ACTIONS(856),
    [anon_sym_uint200] = ACTIONS(856),
    [anon_sym_uint208] = ACTIONS(856),
    [anon_sym_uint216] = ACTIONS(856),
    [anon_sym_uint224] = ACTIONS(856),
    [anon_sym_uint232] = ACTIONS(856),
    [anon_sym_uint240] = ACTIONS(856),
    [anon_sym_uint248] = ACTIONS(856),
    [anon_sym_uint256] = ACTIONS(856),
    [anon_sym_bytes] = ACTIONS(856),
    [anon_sym_bytes1] = ACTIONS(856),
    [anon_sym_bytes2] = ACTIONS(856),
    [anon_sym_bytes3] = ACTIONS(856),
    [anon_sym_bytes4] = ACTIONS(856),
    [anon_sym_bytes5] = ACTIONS(856),
    [anon_sym_bytes6] = ACTIONS(856),
    [anon_sym_bytes7] = ACTIONS(856),
    [anon_sym_bytes8] = ACTIONS(856),
    [anon_sym_bytes9] = ACTIONS(856),
    [anon_sym_bytes10] = ACTIONS(856),
    [anon_sym_bytes11] = ACTIONS(856),
    [anon_sym_bytes12] = ACTIONS(856),
    [anon_sym_bytes13] = ACTIONS(856),
    [anon_sym_bytes14] = ACTIONS(856),
    [anon_sym_bytes15] = ACTIONS(856),
    [anon_sym_bytes16] = ACTIONS(856),
    [anon_sym_bytes17] = ACTIONS(856),
    [anon_sym_bytes18] = ACTIONS(856),
    [anon_sym_bytes19] = ACTIONS(856),
    [anon_sym_bytes20] = ACTIONS(856),
    [anon_sym_bytes21] = ACTIONS(856),
    [anon_sym_bytes22] = ACTIONS(856),
    [anon_sym_bytes23] = ACTIONS(856),
    [anon_sym_bytes24] = ACTIONS(856),
    [anon_sym_bytes25] = ACTIONS(856),
    [anon_sym_bytes26] = ACTIONS(856),
    [anon_sym_bytes27] = ACTIONS(856),
    [anon_sym_bytes28] = ACTIONS(856),
    [anon_sym_bytes29] = ACTIONS(856),
    [anon_sym_bytes30] = ACTIONS(856),
    [anon_sym_bytes31] = ACTIONS(856),
    [anon_sym_bytes32] = ACTIONS(856),
    [anon_sym_fixed] = ACTIONS(856),
    [aux_sym__fixed_token1] = ACTIONS(856),
    [anon_sym_ufixed] = ACTIONS(856),
    [aux_sym__ufixed_token1] = ACTIONS(856),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(254)] = {
    [sym_identifier] = ACTIONS(860),
    [anon_sym_RBRACE] = ACTIONS(862),
    [anon_sym_type] = ACTIONS(860),
    [anon_sym_error] = ACTIONS(860),
    [anon_sym_struct] = ACTIONS(860),
    [anon_sym_enum] = ACTIONS(860),
    [anon_sym_event] = ACTIONS(860),
    [anon_sym_using] = ACTIONS(860),
    [anon_sym_function] = ACTIONS(860),
    [anon_sym_byte] = ACTIONS(860),
    [anon_sym_address] = ACTIONS(860),
    [anon_sym_var] = ACTIONS(860),
    [anon_sym_modifier] = ACTIONS(860),
    [anon_sym_constructor] = ACTIONS(860),
    [anon_sym_fallback] = ACTIONS(860),
    [anon_sym_receive] = ACTIONS(860),
    [anon_sym_mapping] = ACTIONS(860),
    [anon_sym_bool] = ACTIONS(860),
    [anon_sym_string] = ACTIONS(860),
    [anon_sym_int] = ACTIONS(860),
    [anon_sym_int8] = ACTIONS(860),
    [anon_sym_int16] = ACTIONS(860),
    [anon_sym_int24] = ACTIONS(860),
    [anon_sym_int32] = ACTIONS(860),
    [anon_sym_int40] = ACTIONS(860),
    [anon_sym_int48] = ACTIONS(860),
    [anon_sym_int56] = ACTIONS(860),
    [anon_sym_int64] = ACTIONS(860),
    [anon_sym_int72] = ACTIONS(860),
    [anon_sym_int80] = ACTIONS(860),
    [anon_sym_int88] = ACTIONS(860),
    [anon_sym_int96] = ACTIONS(860),
    [anon_sym_int104] = ACTIONS(860),
    [anon_sym_int112] = ACTIONS(860),
    [anon_sym_int120] = ACTIONS(860),
    [anon_sym_int128] = ACTIONS(860),
    [anon_sym_int136] = ACTIONS(860),
    [anon_sym_int144] = ACTIONS(860),
    [anon_sym_int152] = ACTIONS(860),
    [anon_sym_int160] = ACTIONS(860),
    [anon_sym_int168] = ACTIONS(860),
    [anon_sym_int176] = ACTIONS(860),
    [anon_sym_int184] = ACTIONS(860),
    [anon_sym_int192] = ACTIONS(860),
    [anon_sym_int200] = ACTIONS(860),
    [anon_sym_int208] = ACTIONS(860),
    [anon_sym_int216] = ACTIONS(860),
    [anon_sym_int224] = ACTIONS(860),
    [anon_sym_int232] = ACTIONS(860),
    [anon_sym_int240] = ACTIONS(860),
    [anon_sym_int248] = ACTIONS(860),
    [anon_sym_int256] = ACTIONS(860),
    [anon_sym_uint] = ACTIONS(860),
    [anon_sym_uint8] = ACTIONS(860),
    [anon_sym_uint16] = ACTIONS(860),
    [anon_sym_uint24] = ACTIONS(860),
    [anon_sym_uint32] = ACTIONS(860),
    [anon_sym_uint40] = ACTIONS(860),
    [anon_sym_uint48] = ACTIONS(860),
    [anon_sym_uint56] = ACTIONS(860),
    [anon_sym_uint64] = ACTIONS(860),
    [anon_sym_uint72] = ACTIONS(860),
    [anon_sym_uint80] = ACTIONS(860),
    [anon_sym_uint88] = ACTIONS(860),
    [anon_sym_uint96] = ACTIONS(860),
    [anon_sym_uint104] = ACTIONS(860),
    [anon_sym_uint112] = ACTIONS(860),
    [anon_sym_uint120] = ACTIONS(860),
    [anon_sym_uint128] = ACTIONS(860),
    [anon_sym_uint136] = ACTIONS(860),
    [anon_sym_uint144] = ACTIONS(860),
    [anon_sym_uint152] = ACTIONS(860),
    [anon_sym_uint160] = ACTIONS(860),
    [anon_sym_uint168] = ACTIONS(860),
    [anon_sym_uint176] = ACTIONS(860),
    [anon_sym_uint184] = ACTIONS(860),
    [anon_sym_uint192] = ACTIONS(860),
    [anon_sym_uint200] = ACTIONS(860),
    [anon_sym_uint208] = ACTIONS(860),
    [anon_sym_uint216] = ACTIONS(860),
    [anon_sym_uint224] = ACTIONS(860),
    [anon_sym_uint232] = ACTIONS(860),
    [anon_sym_uint240] = ACTIONS(860),
    [anon_sym_uint248] = ACTIONS(860),
    [anon_sym_uint256] = ACTIONS(860),
    [anon_sym_bytes] = ACTIONS(860),
    [anon_sym_bytes1] = ACTIONS(860),
    [anon_sym_bytes2] = ACTIONS(860),
    [anon_sym_bytes3] = ACTIONS(860),
    [anon_sym_bytes4] = ACTIONS(860),
    [anon_sym_bytes5] = ACTIONS(860),
    [anon_sym_bytes6] = ACTIONS(860),
    [anon_sym_bytes7] = ACTIONS(860),
    [anon_sym_bytes8] = ACTIONS(860),
    [anon_sym_bytes9] = ACTIONS(860),
    [anon_sym_bytes10] = ACTIONS(860),
    [anon_sym_bytes11] = ACTIONS(860),
    [anon_sym_bytes12] = ACTIONS(860),
    [anon_sym_bytes13] = ACTIONS(860),
    [anon_sym_bytes14] = ACTIONS(860),
    [anon_sym_bytes15] = ACTIONS(860),
    [anon_sym_bytes16] = ACTIONS(860),
    [anon_sym_bytes17] = ACTIONS(860),
    [anon_sym_bytes18] = ACTIONS(860),
    [anon_sym_bytes19] = ACTIONS(860),
    [anon_sym_bytes20] = ACTIONS(860),
    [anon_sym_bytes21] = ACTIONS(860),
    [anon_sym_bytes22] = ACTIONS(860),
    [anon_sym_bytes23] = ACTIONS(860),
    [anon_sym_bytes24] = ACTIONS(860),
    [anon_sym_bytes25] = ACTIONS(860),
    [anon_sym_bytes26] = ACTIONS(860),
    [anon_sym_bytes27] = ACTIONS(860),
    [anon_sym_bytes28] = ACTIONS(860),
    [anon_sym_bytes29] = ACTIONS(860),
    [anon_sym_bytes30] = ACTIONS(860),
    [anon_sym_bytes31] = ACTIONS(860),
    [anon_sym_bytes32] = ACTIONS(860),
    [anon_sym_fixed] = ACTIONS(860),
    [aux_sym__fixed_token1] = ACTIONS(860),
    [anon_sym_ufixed] = ACTIONS(860),
    [aux_sym__ufixed_token1] = ACTIONS(860),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(255)] = {
    [sym_identifier] = ACTIONS(864),
    [anon_sym_RBRACE] = ACTIONS(866),
    [anon_sym_type] = ACTIONS(864),
    [anon_sym_error] = ACTIONS(864),
    [anon_sym_struct] = ACTIONS(864),
    [anon_sym_enum] = ACTIONS(864),
    [anon_sym_event] = ACTIONS(864),
    [anon_sym_using] = ACTIONS(864),
    [anon_sym_function] = ACTIONS(864),
    [anon_sym_byte] = ACTIONS(864),
    [anon_sym_address] = ACTIONS(864),
    [anon_sym_var] = ACTIONS(864),
    [anon_sym_modifier] = ACTIONS(864),
    [anon_sym_constructor] = ACTIONS(864),
    [anon_sym_fallback] = ACTIONS(864),
    [anon_sym_receive] = ACTIONS(864),
    [anon_sym_mapping] = ACTIONS(864),
    [anon_sym_bool] = ACTIONS(864),
    [anon_sym_string] = ACTIONS(864),
    [anon_sym_int] = ACTIONS(864),
    [anon_sym_int8] = ACTIONS(864),
    [anon_sym_int16] = ACTIONS(864),
    [anon_sym_int24] = ACTIONS(864),
    [anon_sym_int32] = ACTIONS(864),
    [anon_sym_int40] = ACTIONS(864),
    [anon_sym_int48] = ACTIONS(864),
    [anon_sym_int56] = ACTIONS(864),
    [anon_sym_int64] = ACTIONS(864),
    [anon_sym_int72] = ACTIONS(864),
    [anon_sym_int80] = ACTIONS(864),
    [anon_sym_int88] = ACTIONS(864),
    [anon_sym_int96] = ACTIONS(864),
    [anon_sym_int104] = ACTIONS(864),
    [anon_sym_int112] = ACTIONS(864),
    [anon_sym_int120] = ACTIONS(864),
    [anon_sym_int128] = ACTIONS(864),
    [anon_sym_int136] = ACTIONS(864),
    [anon_sym_int144] = ACTIONS(864),
    [anon_sym_int152] = ACTIONS(864),
    [anon_sym_int160] = ACTIONS(864),
    [anon_sym_int168] = ACTIONS(864),
    [anon_sym_int176] = ACTIONS(864),
    [anon_sym_int184] = ACTIONS(864),
    [anon_sym_int192] = ACTIONS(864),
    [anon_sym_int200] = ACTIONS(864),
    [anon_sym_int208] = ACTIONS(864),
    [anon_sym_int216] = ACTIONS(864),
    [anon_sym_int224] = ACTIONS(864),
    [anon_sym_int232] = ACTIONS(864),
    [anon_sym_int240] = ACTIONS(864),
    [anon_sym_int248] = ACTIONS(864),
    [anon_sym_int256] = ACTIONS(864),
    [anon_sym_uint] = ACTIONS(864),
    [anon_sym_uint8] = ACTIONS(864),
    [anon_sym_uint16] = ACTIONS(864),
    [anon_sym_uint24] = ACTIONS(864),
    [anon_sym_uint32] = ACTIONS(864),
    [anon_sym_uint40] = ACTIONS(864),
    [anon_sym_uint48] = ACTIONS(864),
    [anon_sym_uint56] = ACTIONS(864),
    [anon_sym_uint64] = ACTIONS(864),
    [anon_sym_uint72] = ACTIONS(864),
    [anon_sym_uint80] = ACTIONS(864),
    [anon_sym_uint88] = ACTIONS(864),
    [anon_sym_uint96] = ACTIONS(864),
    [anon_sym_uint104] = ACTIONS(864),
    [anon_sym_uint112] = ACTIONS(864),
    [anon_sym_uint120] = ACTIONS(864),
    [anon_sym_uint128] = ACTIONS(864),
    [anon_sym_uint136] = ACTIONS(864),
    [anon_sym_uint144] = ACTIONS(864),
    [anon_sym_uint152] = ACTIONS(864),
    [anon_sym_uint160] = ACTIONS(864),
    [anon_sym_uint168] = ACTIONS(864),
    [anon_sym_uint176] = ACTIONS(864),
    [anon_sym_uint184] = ACTIONS(864),
    [anon_sym_uint192] = ACTIONS(864),
    [anon_sym_uint200] = ACTIONS(864),
    [anon_sym_uint208] = ACTIONS(864),
    [anon_sym_uint216] = ACTIONS(864),
    [anon_sym_uint224] = ACTIONS(864),
    [anon_sym_uint232] = ACTIONS(864),
    [anon_sym_uint240] = ACTIONS(864),
    [anon_sym_uint248] = ACTIONS(864),
    [anon_sym_uint256] = ACTIONS(864),
    [anon_sym_bytes] = ACTIONS(864),
    [anon_sym_bytes1] = ACTIONS(864),
    [anon_sym_bytes2] = ACTIONS(864),
    [anon_sym_bytes3] = ACTIONS(864),
    [anon_sym_bytes4] = ACTIONS(864),
    [anon_sym_bytes5] = ACTIONS(864),
    [anon_sym_bytes6] = ACTIONS(864),
    [anon_sym_bytes7] = ACTIONS(864),
    [anon_sym_bytes8] = ACTIONS(864),
    [anon_sym_bytes9] = ACTIONS(864),
    [anon_sym_bytes10] = ACTIONS(864),
    [anon_sym_bytes11] = ACTIONS(864),
    [anon_sym_bytes12] = ACTIONS(864),
    [anon_sym_bytes13] = ACTIONS(864),
    [anon_sym_bytes14] = ACTIONS(864),
    [anon_sym_bytes15] = ACTIONS(864),
    [anon_sym_bytes16] = ACTIONS(864),
    [anon_sym_bytes17] = ACTIONS(864),
    [anon_sym_bytes18] = ACTIONS(864),
    [anon_sym_bytes19] = ACTIONS(864),
    [anon_sym_bytes20] = ACTIONS(864),
    [anon_sym_bytes21] = ACTIONS(864),
    [anon_sym_bytes22] = ACTIONS(864),
    [anon_sym_bytes23] = ACTIONS(864),
    [anon_sym_bytes24] = ACTIONS(864),
    [anon_sym_bytes25] = ACTIONS(864),
    [anon_sym_bytes26] = ACTIONS(864),
    [anon_sym_bytes27] = ACTIONS(864),
    [anon_sym_bytes28] = ACTIONS(864),
    [anon_sym_bytes29] = ACTIONS(864),
    [anon_sym_bytes30] = ACTIONS(864),
    [anon_sym_bytes31] = ACTIONS(864),
    [anon_sym_bytes32] = ACTIONS(864),
    [anon_sym_fixed] = ACTIONS(864),
    [aux_sym__fixed_token1] = ACTIONS(864),
    [anon_sym_ufixed] = ACTIONS(864),
    [aux_sym__ufixed_token1] = ACTIONS(864),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(256)] = {
    [sym_identifier] = ACTIONS(868),
    [anon_sym_RBRACE] = ACTIONS(870),
    [anon_sym_type] = ACTIONS(868),
    [anon_sym_error] = ACTIONS(868),
    [anon_sym_struct] = ACTIONS(868),
    [anon_sym_enum] = ACTIONS(868),
    [anon_sym_event] = ACTIONS(868),
    [anon_sym_using] = ACTIONS(868),
    [anon_sym_function] = ACTIONS(868),
    [anon_sym_byte] = ACTIONS(868),
    [anon_sym_address] = ACTIONS(868),
    [anon_sym_var] = ACTIONS(868),
    [anon_sym_modifier] = ACTIONS(868),
    [anon_sym_constructor] = ACTIONS(868),
    [anon_sym_fallback] = ACTIONS(868),
    [anon_sym_receive] = ACTIONS(868),
    [anon_sym_mapping] = ACTIONS(868),
    [anon_sym_bool] = ACTIONS(868),
    [anon_sym_string] = ACTIONS(868),
    [anon_sym_int] = ACTIONS(868),
    [anon_sym_int8] = ACTIONS(868),
    [anon_sym_int16] = ACTIONS(868),
    [anon_sym_int24] = ACTIONS(868),
    [anon_sym_int32] = ACTIONS(868),
    [anon_sym_int40] = ACTIONS(868),
    [anon_sym_int48] = ACTIONS(868),
    [anon_sym_int56] = ACTIONS(868),
    [anon_sym_int64] = ACTIONS(868),
    [anon_sym_int72] = ACTIONS(868),
    [anon_sym_int80] = ACTIONS(868),
    [anon_sym_int88] = ACTIONS(868),
    [anon_sym_int96] = ACTIONS(868),
    [anon_sym_int104] = ACTIONS(868),
    [anon_sym_int112] = ACTIONS(868),
    [anon_sym_int120] = ACTIONS(868),
    [anon_sym_int128] = ACTIONS(868),
    [anon_sym_int136] = ACTIONS(868),
    [anon_sym_int144] = ACTIONS(868),
    [anon_sym_int152] = ACTIONS(868),
    [anon_sym_int160] = ACTIONS(868),
    [anon_sym_int168] = ACTIONS(868),
    [anon_sym_int176] = ACTIONS(868),
    [anon_sym_int184] = ACTIONS(868),
    [anon_sym_int192] = ACTIONS(868),
    [anon_sym_int200] = ACTIONS(868),
    [anon_sym_int208] = ACTIONS(868),
    [anon_sym_int216] = ACTIONS(868),
    [anon_sym_int224] = ACTIONS(868),
    [anon_sym_int232] = ACTIONS(868),
    [anon_sym_int240] = ACTIONS(868),
    [anon_sym_int248] = ACTIONS(868),
    [anon_sym_int256] = ACTIONS(868),
    [anon_sym_uint] = ACTIONS(868),
    [anon_sym_uint8] = ACTIONS(868),
    [anon_sym_uint16] = ACTIONS(868),
    [anon_sym_uint24] = ACTIONS(868),
    [anon_sym_uint32] = ACTIONS(868),
    [anon_sym_uint40] = ACTIONS(868),
    [anon_sym_uint48] = ACTIONS(868),
    [anon_sym_uint56] = ACTIONS(868),
    [anon_sym_uint64] = ACTIONS(868),
    [anon_sym_uint72] = ACTIONS(868),
    [anon_sym_uint80] = ACTIONS(868),
    [anon_sym_uint88] = ACTIONS(868),
    [anon_sym_uint96] = ACTIONS(868),
    [anon_sym_uint104] = ACTIONS(868),
    [anon_sym_uint112] = ACTIONS(868),
    [anon_sym_uint120] = ACTIONS(868),
    [anon_sym_uint128] = ACTIONS(868),
    [anon_sym_uint136] = ACTIONS(868),
    [anon_sym_uint144] = ACTIONS(868),
    [anon_sym_uint152] = ACTIONS(868),
    [anon_sym_uint160] = ACTIONS(868),
    [anon_sym_uint168] = ACTIONS(868),
    [anon_sym_uint176] = ACTIONS(868),
    [anon_sym_uint184] = ACTIONS(868),
    [anon_sym_uint192] = ACTIONS(868),
    [anon_sym_uint200] = ACTIONS(868),
    [anon_sym_uint208] = ACTIONS(868),
    [anon_sym_uint216] = ACTIONS(868),
    [anon_sym_uint224] = ACTIONS(868),
    [anon_sym_uint232] = ACTIONS(868),
    [anon_sym_uint240] = ACTIONS(868),
    [anon_sym_uint248] = ACTIONS(868),
    [anon_sym_uint256] = ACTIONS(868),
    [anon_sym_bytes] = ACTIONS(868),
    [anon_sym_bytes1] = ACTIONS(868),
    [anon_sym_bytes2] = ACTIONS(868),
    [anon_sym_bytes3] = ACTIONS(868),
    [anon_sym_bytes4] = ACTIONS(868),
    [anon_sym_bytes5] = ACTIONS(868),
    [anon_sym_bytes6] = ACTIONS(868),
    [anon_sym_bytes7] = ACTIONS(868),
    [anon_sym_bytes8] = ACTIONS(868),
    [anon_sym_bytes9] = ACTIONS(868),
    [anon_sym_bytes10] = ACTIONS(868),
    [anon_sym_bytes11] = ACTIONS(868),
    [anon_sym_bytes12] = ACTIONS(868),
    [anon_sym_bytes13] = ACTIONS(868),
    [anon_sym_bytes14] = ACTIONS(868),
    [anon_sym_bytes15] = ACTIONS(868),
    [anon_sym_bytes16] = ACTIONS(868),
    [anon_sym_bytes17] = ACTIONS(868),
    [anon_sym_bytes18] = ACTIONS(868),
    [anon_sym_bytes19] = ACTIONS(868),
    [anon_sym_bytes20] = ACTIONS(868),
    [anon_sym_bytes21] = ACTIONS(868),
    [anon_sym_bytes22] = ACTIONS(868),
    [anon_sym_bytes23] = ACTIONS(868),
    [anon_sym_bytes24] = ACTIONS(868),
    [anon_sym_bytes25] = ACTIONS(868),
    [anon_sym_bytes26] = ACTIONS(868),
    [anon_sym_bytes27] = ACTIONS(868),
    [anon_sym_bytes28] = ACTIONS(868),
    [anon_sym_bytes29] = ACTIONS(868),
    [anon_sym_bytes30] = ACTIONS(868),
    [anon_sym_bytes31] = ACTIONS(868),
    [anon_sym_bytes32] = ACTIONS(868),
    [anon_sym_fixed] = ACTIONS(868),
    [aux_sym__fixed_token1] = ACTIONS(868),
    [anon_sym_ufixed] = ACTIONS(868),
    [aux_sym__ufixed_token1] = ACTIONS(868),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(257)] = {
    [sym_identifier] = ACTIONS(872),
    [anon_sym_RBRACE] = ACTIONS(874),
    [anon_sym_type] = ACTIONS(872),
    [anon_sym_error] = ACTIONS(872),
    [anon_sym_struct] = ACTIONS(872),
    [anon_sym_enum] = ACTIONS(872),
    [anon_sym_event] = ACTIONS(872),
    [anon_sym_using] = ACTIONS(872),
    [anon_sym_function] = ACTIONS(872),
    [anon_sym_byte] = ACTIONS(872),
    [anon_sym_address] = ACTIONS(872),
    [anon_sym_var] = ACTIONS(872),
    [anon_sym_modifier] = ACTIONS(872),
    [anon_sym_constructor] = ACTIONS(872),
    [anon_sym_fallback] = ACTIONS(872),
    [anon_sym_receive] = ACTIONS(872),
    [anon_sym_mapping] = ACTIONS(872),
    [anon_sym_bool] = ACTIONS(872),
    [anon_sym_string] = ACTIONS(872),
    [anon_sym_int] = ACTIONS(872),
    [anon_sym_int8] = ACTIONS(872),
    [anon_sym_int16] = ACTIONS(872),
    [anon_sym_int24] = ACTIONS(872),
    [anon_sym_int32] = ACTIONS(872),
    [anon_sym_int40] = ACTIONS(872),
    [anon_sym_int48] = ACTIONS(872),
    [anon_sym_int56] = ACTIONS(872),
    [anon_sym_int64] = ACTIONS(872),
    [anon_sym_int72] = ACTIONS(872),
    [anon_sym_int80] = ACTIONS(872),
    [anon_sym_int88] = ACTIONS(872),
    [anon_sym_int96] = ACTIONS(872),
    [anon_sym_int104] = ACTIONS(872),
    [anon_sym_int112] = ACTIONS(872),
    [anon_sym_int120] = ACTIONS(872),
    [anon_sym_int128] = ACTIONS(872),
    [anon_sym_int136] = ACTIONS(872),
    [anon_sym_int144] = ACTIONS(872),
    [anon_sym_int152] = ACTIONS(872),
    [anon_sym_int160] = ACTIONS(872),
    [anon_sym_int168] = ACTIONS(872),
    [anon_sym_int176] = ACTIONS(872),
    [anon_sym_int184] = ACTIONS(872),
    [anon_sym_int192] = ACTIONS(872),
    [anon_sym_int200] = ACTIONS(872),
    [anon_sym_int208] = ACTIONS(872),
    [anon_sym_int216] = ACTIONS(872),
    [anon_sym_int224] = ACTIONS(872),
    [anon_sym_int232] = ACTIONS(872),
    [anon_sym_int240] = ACTIONS(872),
    [anon_sym_int248] = ACTIONS(872),
    [anon_sym_int256] = ACTIONS(872),
    [anon_sym_uint] = ACTIONS(872),
    [anon_sym_uint8] = ACTIONS(872),
    [anon_sym_uint16] = ACTIONS(872),
    [anon_sym_uint24] = ACTIONS(872),
    [anon_sym_uint32] = ACTIONS(872),
    [anon_sym_uint40] = ACTIONS(872),
    [anon_sym_uint48] = ACTIONS(872),
    [anon_sym_uint56] = ACTIONS(872),
    [anon_sym_uint64] = ACTIONS(872),
    [anon_sym_uint72] = ACTIONS(872),
    [anon_sym_uint80] = ACTIONS(872),
    [anon_sym_uint88] = ACTIONS(872),
    [anon_sym_uint96] = ACTIONS(872),
    [anon_sym_uint104] = ACTIONS(872),
    [anon_sym_uint112] = ACTIONS(872),
    [anon_sym_uint120] = ACTIONS(872),
    [anon_sym_uint128] = ACTIONS(872),
    [anon_sym_uint136] = ACTIONS(872),
    [anon_sym_uint144] = ACTIONS(872),
    [anon_sym_uint152] = ACTIONS(872),
    [anon_sym_uint160] = ACTIONS(872),
    [anon_sym_uint168] = ACTIONS(872),
    [anon_sym_uint176] = ACTIONS(872),
    [anon_sym_uint184] = ACTIONS(872),
    [anon_sym_uint192] = ACTIONS(872),
    [anon_sym_uint200] = ACTIONS(872),
    [anon_sym_uint208] = ACTIONS(872),
    [anon_sym_uint216] = ACTIONS(872),
    [anon_sym_uint224] = ACTIONS(872),
    [anon_sym_uint232] = ACTIONS(872),
    [anon_sym_uint240] = ACTIONS(872),
    [anon_sym_uint248] = ACTIONS(872),
    [anon_sym_uint256] = ACTIONS(872),
    [anon_sym_bytes] = ACTIONS(872),
    [anon_sym_bytes1] = ACTIONS(872),
    [anon_sym_bytes2] = ACTIONS(872),
    [anon_sym_bytes3] = ACTIONS(872),
    [anon_sym_bytes4] = ACTIONS(872),
    [anon_sym_bytes5] = ACTIONS(872),
    [anon_sym_bytes6] = ACTIONS(872),
    [anon_sym_bytes7] = ACTIONS(872),
    [anon_sym_bytes8] = ACTIONS(872),
    [anon_sym_bytes9] = ACTIONS(872),
    [anon_sym_bytes10] = ACTIONS(872),
    [anon_sym_bytes11] = ACTIONS(872),
    [anon_sym_bytes12] = ACTIONS(872),
    [anon_sym_bytes13] = ACTIONS(872),
    [anon_sym_bytes14] = ACTIONS(872),
    [anon_sym_bytes15] = ACTIONS(872),
    [anon_sym_bytes16] = ACTIONS(872),
    [anon_sym_bytes17] = ACTIONS(872),
    [anon_sym_bytes18] = ACTIONS(872),
    [anon_sym_bytes19] = ACTIONS(872),
    [anon_sym_bytes20] = ACTIONS(872),
    [anon_sym_bytes21] = ACTIONS(872),
    [anon_sym_bytes22] = ACTIONS(872),
    [anon_sym_bytes23] = ACTIONS(872),
    [anon_sym_bytes24] = ACTIONS(872),
    [anon_sym_bytes25] = ACTIONS(872),
    [anon_sym_bytes26] = ACTIONS(872),
    [anon_sym_bytes27] = ACTIONS(872),
    [anon_sym_bytes28] = ACTIONS(872),
    [anon_sym_bytes29] = ACTIONS(872),
    [anon_sym_bytes30] = ACTIONS(872),
    [anon_sym_bytes31] = ACTIONS(872),
    [anon_sym_bytes32] = ACTIONS(872),
    [anon_sym_fixed] = ACTIONS(872),
    [aux_sym__fixed_token1] = ACTIONS(872),
    [anon_sym_ufixed] = ACTIONS(872),
    [aux_sym__ufixed_token1] = ACTIONS(872),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(258)] = {
    [sym_identifier] = ACTIONS(876),
    [anon_sym_RBRACE] = ACTIONS(878),
    [anon_sym_type] = ACTIONS(876),
    [anon_sym_error] = ACTIONS(876),
    [anon_sym_struct] = ACTIONS(876),
    [anon_sym_enum] = ACTIONS(876),
    [anon_sym_event] = ACTIONS(876),
    [anon_sym_using] = ACTIONS(876),
    [anon_sym_function] = ACTIONS(876),
    [anon_sym_byte] = ACTIONS(876),
    [anon_sym_address] = ACTIONS(876),
    [anon_sym_var] = ACTIONS(876),
    [anon_sym_modifier] = ACTIONS(876),
    [anon_sym_constructor] = ACTIONS(876),
    [anon_sym_fallback] = ACTIONS(876),
    [anon_sym_receive] = ACTIONS(876),
    [anon_sym_mapping] = ACTIONS(876),
    [anon_sym_bool] = ACTIONS(876),
    [anon_sym_string] = ACTIONS(876),
    [anon_sym_int] = ACTIONS(876),
    [anon_sym_int8] = ACTIONS(876),
    [anon_sym_int16] = ACTIONS(876),
    [anon_sym_int24] = ACTIONS(876),
    [anon_sym_int32] = ACTIONS(876),
    [anon_sym_int40] = ACTIONS(876),
    [anon_sym_int48] = ACTIONS(876),
    [anon_sym_int56] = ACTIONS(876),
    [anon_sym_int64] = ACTIONS(876),
    [anon_sym_int72] = ACTIONS(876),
    [anon_sym_int80] = ACTIONS(876),
    [anon_sym_int88] = ACTIONS(876),
    [anon_sym_int96] = ACTIONS(876),
    [anon_sym_int104] = ACTIONS(876),
    [anon_sym_int112] = ACTIONS(876),
    [anon_sym_int120] = ACTIONS(876),
    [anon_sym_int128] = ACTIONS(876),
    [anon_sym_int136] = ACTIONS(876),
    [anon_sym_int144] = ACTIONS(876),
    [anon_sym_int152] = ACTIONS(876),
    [anon_sym_int160] = ACTIONS(876),
    [anon_sym_int168] = ACTIONS(876),
    [anon_sym_int176] = ACTIONS(876),
    [anon_sym_int184] = ACTIONS(876),
    [anon_sym_int192] = ACTIONS(876),
    [anon_sym_int200] = ACTIONS(876),
    [anon_sym_int208] = ACTIONS(876),
    [anon_sym_int216] = ACTIONS(876),
    [anon_sym_int224] = ACTIONS(876),
    [anon_sym_int232] = ACTIONS(876),
    [anon_sym_int240] = ACTIONS(876),
    [anon_sym_int248] = ACTIONS(876),
    [anon_sym_int256] = ACTIONS(876),
    [anon_sym_uint] = ACTIONS(876),
    [anon_sym_uint8] = ACTIONS(876),
    [anon_sym_uint16] = ACTIONS(876),
    [anon_sym_uint24] = ACTIONS(876),
    [anon_sym_uint32] = ACTIONS(876),
    [anon_sym_uint40] = ACTIONS(876),
    [anon_sym_uint48] = ACTIONS(876),
    [anon_sym_uint56] = ACTIONS(876),
    [anon_sym_uint64] = ACTIONS(876),
    [anon_sym_uint72] = ACTIONS(876),
    [anon_sym_uint80] = ACTIONS(876),
    [anon_sym_uint88] = ACTIONS(876),
    [anon_sym_uint96] = ACTIONS(876),
    [anon_sym_uint104] = ACTIONS(876),
    [anon_sym_uint112] = ACTIONS(876),
    [anon_sym_uint120] = ACTIONS(876),
    [anon_sym_uint128] = ACTIONS(876),
    [anon_sym_uint136] = ACTIONS(876),
    [anon_sym_uint144] = ACTIONS(876),
    [anon_sym_uint152] = ACTIONS(876),
    [anon_sym_uint160] = ACTIONS(876),
    [anon_sym_uint168] = ACTIONS(876),
    [anon_sym_uint176] = ACTIONS(876),
    [anon_sym_uint184] = ACTIONS(876),
    [anon_sym_uint192] = ACTIONS(876),
    [anon_sym_uint200] = ACTIONS(876),
    [anon_sym_uint208] = ACTIONS(876),
    [anon_sym_uint216] = ACTIONS(876),
    [anon_sym_uint224] = ACTIONS(876),
    [anon_sym_uint232] = ACTIONS(876),
    [anon_sym_uint240] = ACTIONS(876),
    [anon_sym_uint248] = ACTIONS(876),
    [anon_sym_uint256] = ACTIONS(876),
    [anon_sym_bytes] = ACTIONS(876),
    [anon_sym_bytes1] = ACTIONS(876),
    [anon_sym_bytes2] = ACTIONS(876),
    [anon_sym_bytes3] = ACTIONS(876),
    [anon_sym_bytes4] = ACTIONS(876),
    [anon_sym_bytes5] = ACTIONS(876),
    [anon_sym_bytes6] = ACTIONS(876),
    [anon_sym_bytes7] = ACTIONS(876),
    [anon_sym_bytes8] = ACTIONS(876),
    [anon_sym_bytes9] = ACTIONS(876),
    [anon_sym_bytes10] = ACTIONS(876),
    [anon_sym_bytes11] = ACTIONS(876),
    [anon_sym_bytes12] = ACTIONS(876),
    [anon_sym_bytes13] = ACTIONS(876),
    [anon_sym_bytes14] = ACTIONS(876),
    [anon_sym_bytes15] = ACTIONS(876),
    [anon_sym_bytes16] = ACTIONS(876),
    [anon_sym_bytes17] = ACTIONS(876),
    [anon_sym_bytes18] = ACTIONS(876),
    [anon_sym_bytes19] = ACTIONS(876),
    [anon_sym_bytes20] = ACTIONS(876),
    [anon_sym_bytes21] = ACTIONS(876),
    [anon_sym_bytes22] = ACTIONS(876),
    [anon_sym_bytes23] = ACTIONS(876),
    [anon_sym_bytes24] = ACTIONS(876),
    [anon_sym_bytes25] = ACTIONS(876),
    [anon_sym_bytes26] = ACTIONS(876),
    [anon_sym_bytes27] = ACTIONS(876),
    [anon_sym_bytes28] = ACTIONS(876),
    [anon_sym_bytes29] = ACTIONS(876),
    [anon_sym_bytes30] = ACTIONS(876),
    [anon_sym_bytes31] = ACTIONS(876),
    [anon_sym_bytes32] = ACTIONS(876),
    [anon_sym_fixed] = ACTIONS(876),
    [aux_sym__fixed_token1] = ACTIONS(876),
    [anon_sym_ufixed] = ACTIONS(876),
    [aux_sym__ufixed_token1] = ACTIONS(876),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(259)] = {
    [sym_identifier] = ACTIONS(880),
    [anon_sym_RBRACE] = ACTIONS(882),
    [anon_sym_type] = ACTIONS(880),
    [anon_sym_error] = ACTIONS(880),
    [anon_sym_struct] = ACTIONS(880),
    [anon_sym_enum] = ACTIONS(880),
    [anon_sym_event] = ACTIONS(880),
    [anon_sym_using] = ACTIONS(880),
    [anon_sym_function] = ACTIONS(880),
    [anon_sym_byte] = ACTIONS(880),
    [anon_sym_address] = ACTIONS(880),
    [anon_sym_var] = ACTIONS(880),
    [anon_sym_modifier] = ACTIONS(880),
    [anon_sym_constructor] = ACTIONS(880),
    [anon_sym_fallback] = ACTIONS(880),
    [anon_sym_receive] = ACTIONS(880),
    [anon_sym_mapping] = ACTIONS(880),
    [anon_sym_bool] = ACTIONS(880),
    [anon_sym_string] = ACTIONS(880),
    [anon_sym_int] = ACTIONS(880),
    [anon_sym_int8] = ACTIONS(880),
    [anon_sym_int16] = ACTIONS(880),
    [anon_sym_int24] = ACTIONS(880),
    [anon_sym_int32] = ACTIONS(880),
    [anon_sym_int40] = ACTIONS(880),
    [anon_sym_int48] = ACTIONS(880),
    [anon_sym_int56] = ACTIONS(880),
    [anon_sym_int64] = ACTIONS(880),
    [anon_sym_int72] = ACTIONS(880),
    [anon_sym_int80] = ACTIONS(880),
    [anon_sym_int88] = ACTIONS(880),
    [anon_sym_int96] = ACTIONS(880),
    [anon_sym_int104] = ACTIONS(880),
    [anon_sym_int112] = ACTIONS(880),
    [anon_sym_int120] = ACTIONS(880),
    [anon_sym_int128] = ACTIONS(880),
    [anon_sym_int136] = ACTIONS(880),
    [anon_sym_int144] = ACTIONS(880),
    [anon_sym_int152] = ACTIONS(880),
    [anon_sym_int160] = ACTIONS(880),
    [anon_sym_int168] = ACTIONS(880),
    [anon_sym_int176] = ACTIONS(880),
    [anon_sym_int184] = ACTIONS(880),
    [anon_sym_int192] = ACTIONS(880),
    [anon_sym_int200] = ACTIONS(880),
    [anon_sym_int208] = ACTIONS(880),
    [anon_sym_int216] = ACTIONS(880),
    [anon_sym_int224] = ACTIONS(880),
    [anon_sym_int232] = ACTIONS(880),
    [anon_sym_int240] = ACTIONS(880),
    [anon_sym_int248] = ACTIONS(880),
    [anon_sym_int256] = ACTIONS(880),
    [anon_sym_uint] = ACTIONS(880),
    [anon_sym_uint8] = ACTIONS(880),
    [anon_sym_uint16] = ACTIONS(880),
    [anon_sym_uint24] = ACTIONS(880),
    [anon_sym_uint32] = ACTIONS(880),
    [anon_sym_uint40] = ACTIONS(880),
    [anon_sym_uint48] = ACTIONS(880),
    [anon_sym_uint56] = ACTIONS(880),
    [anon_sym_uint64] = ACTIONS(880),
    [anon_sym_uint72] = ACTIONS(880),
    [anon_sym_uint80] = ACTIONS(880),
    [anon_sym_uint88] = ACTIONS(880),
    [anon_sym_uint96] = ACTIONS(880),
    [anon_sym_uint104] = ACTIONS(880),
    [anon_sym_uint112] = ACTIONS(880),
    [anon_sym_uint120] = ACTIONS(880),
    [anon_sym_uint128] = ACTIONS(880),
    [anon_sym_uint136] = ACTIONS(880),
    [anon_sym_uint144] = ACTIONS(880),
    [anon_sym_uint152] = ACTIONS(880),
    [anon_sym_uint160] = ACTIONS(880),
    [anon_sym_uint168] = ACTIONS(880),
    [anon_sym_uint176] = ACTIONS(880),
    [anon_sym_uint184] = ACTIONS(880),
    [anon_sym_uint192] = ACTIONS(880),
    [anon_sym_uint200] = ACTIONS(880),
    [anon_sym_uint208] = ACTIONS(880),
    [anon_sym_uint216] = ACTIONS(880),
    [anon_sym_uint224] = ACTIONS(880),
    [anon_sym_uint232] = ACTIONS(880),
    [anon_sym_uint240] = ACTIONS(880),
    [anon_sym_uint248] = ACTIONS(880),
    [anon_sym_uint256] = ACTIONS(880),
    [anon_sym_bytes] = ACTIONS(880),
    [anon_sym_bytes1] = ACTIONS(880),
    [anon_sym_bytes2] = ACTIONS(880),
    [anon_sym_bytes3] = ACTIONS(880),
    [anon_sym_bytes4] = ACTIONS(880),
    [anon_sym_bytes5] = ACTIONS(880),
    [anon_sym_bytes6] = ACTIONS(880),
    [anon_sym_bytes7] = ACTIONS(880),
    [anon_sym_bytes8] = ACTIONS(880),
    [anon_sym_bytes9] = ACTIONS(880),
    [anon_sym_bytes10] = ACTIONS(880),
    [anon_sym_bytes11] = ACTIONS(880),
    [anon_sym_bytes12] = ACTIONS(880),
    [anon_sym_bytes13] = ACTIONS(880),
    [anon_sym_bytes14] = ACTIONS(880),
    [anon_sym_bytes15] = ACTIONS(880),
    [anon_sym_bytes16] = ACTIONS(880),
    [anon_sym_bytes17] = ACTIONS(880),
    [anon_sym_bytes18] = ACTIONS(880),
    [anon_sym_bytes19] = ACTIONS(880),
    [anon_sym_bytes20] = ACTIONS(880),
    [anon_sym_bytes21] = ACTIONS(880),
    [anon_sym_bytes22] = ACTIONS(880),
    [anon_sym_bytes23] = ACTIONS(880),
    [anon_sym_bytes24] = ACTIONS(880),
    [anon_sym_bytes25] = ACTIONS(880),
    [anon_sym_bytes26] = ACTIONS(880),
    [anon_sym_bytes27] = ACTIONS(880),
    [anon_sym_bytes28] = ACTIONS(880),
    [anon_sym_bytes29] = ACTIONS(880),
    [anon_sym_bytes30] = ACTIONS(880),
    [anon_sym_bytes31] = ACTIONS(880),
    [anon_sym_bytes32] = ACTIONS(880),
    [anon_sym_fixed] = ACTIONS(880),
    [aux_sym__fixed_token1] = ACTIONS(880),
    [anon_sym_ufixed] = ACTIONS(880),
    [aux_sym__ufixed_token1] = ACTIONS(880),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(260)] = {
    [sym_identifier] = ACTIONS(884),
    [anon_sym_RBRACE] = ACTIONS(886),
    [anon_sym_type] = ACTIONS(884),
    [anon_sym_error] = ACTIONS(884),
    [anon_sym_struct] = ACTIONS(884),
    [anon_sym_enum] = ACTIONS(884),
    [anon_sym_event] = ACTIONS(884),
    [anon_sym_using] = ACTIONS(884),
    [anon_sym_function] = ACTIONS(884),
    [anon_sym_byte] = ACTIONS(884),
    [anon_sym_address] = ACTIONS(884),
    [anon_sym_var] = ACTIONS(884),
    [anon_sym_modifier] = ACTIONS(884),
    [anon_sym_constructor] = ACTIONS(884),
    [anon_sym_fallback] = ACTIONS(884),
    [anon_sym_receive] = ACTIONS(884),
    [anon_sym_mapping] = ACTIONS(884),
    [anon_sym_bool] = ACTIONS(884),
    [anon_sym_string] = ACTIONS(884),
    [anon_sym_int] = ACTIONS(884),
    [anon_sym_int8] = ACTIONS(884),
    [anon_sym_int16] = ACTIONS(884),
    [anon_sym_int24] = ACTIONS(884),
    [anon_sym_int32] = ACTIONS(884),
    [anon_sym_int40] = ACTIONS(884),
    [anon_sym_int48] = ACTIONS(884),
    [anon_sym_int56] = ACTIONS(884),
    [anon_sym_int64] = ACTIONS(884),
    [anon_sym_int72] = ACTIONS(884),
    [anon_sym_int80] = ACTIONS(884),
    [anon_sym_int88] = ACTIONS(884),
    [anon_sym_int96] = ACTIONS(884),
    [anon_sym_int104] = ACTIONS(884),
    [anon_sym_int112] = ACTIONS(884),
    [anon_sym_int120] = ACTIONS(884),
    [anon_sym_int128] = ACTIONS(884),
    [anon_sym_int136] = ACTIONS(884),
    [anon_sym_int144] = ACTIONS(884),
    [anon_sym_int152] = ACTIONS(884),
    [anon_sym_int160] = ACTIONS(884),
    [anon_sym_int168] = ACTIONS(884),
    [anon_sym_int176] = ACTIONS(884),
    [anon_sym_int184] = ACTIONS(884),
    [anon_sym_int192] = ACTIONS(884),
    [anon_sym_int200] = ACTIONS(884),
    [anon_sym_int208] = ACTIONS(884),
    [anon_sym_int216] = ACTIONS(884),
    [anon_sym_int224] = ACTIONS(884),
    [anon_sym_int232] = ACTIONS(884),
    [anon_sym_int240] = ACTIONS(884),
    [anon_sym_int248] = ACTIONS(884),
    [anon_sym_int256] = ACTIONS(884),
    [anon_sym_uint] = ACTIONS(884),
    [anon_sym_uint8] = ACTIONS(884),
    [anon_sym_uint16] = ACTIONS(884),
    [anon_sym_uint24] = ACTIONS(884),
    [anon_sym_uint32] = ACTIONS(884),
    [anon_sym_uint40] = ACTIONS(884),
    [anon_sym_uint48] = ACTIONS(884),
    [anon_sym_uint56] = ACTIONS(884),
    [anon_sym_uint64] = ACTIONS(884),
    [anon_sym_uint72] = ACTIONS(884),
    [anon_sym_uint80] = ACTIONS(884),
    [anon_sym_uint88] = ACTIONS(884),
    [anon_sym_uint96] = ACTIONS(884),
    [anon_sym_uint104] = ACTIONS(884),
    [anon_sym_uint112] = ACTIONS(884),
    [anon_sym_uint120] = ACTIONS(884),
    [anon_sym_uint128] = ACTIONS(884),
    [anon_sym_uint136] = ACTIONS(884),
    [anon_sym_uint144] = ACTIONS(884),
    [anon_sym_uint152] = ACTIONS(884),
    [anon_sym_uint160] = ACTIONS(884),
    [anon_sym_uint168] = ACTIONS(884),
    [anon_sym_uint176] = ACTIONS(884),
    [anon_sym_uint184] = ACTIONS(884),
    [anon_sym_uint192] = ACTIONS(884),
    [anon_sym_uint200] = ACTIONS(884),
    [anon_sym_uint208] = ACTIONS(884),
    [anon_sym_uint216] = ACTIONS(884),
    [anon_sym_uint224] = ACTIONS(884),
    [anon_sym_uint232] = ACTIONS(884),
    [anon_sym_uint240] = ACTIONS(884),
    [anon_sym_uint248] = ACTIONS(884),
    [anon_sym_uint256] = ACTIONS(884),
    [anon_sym_bytes] = ACTIONS(884),
    [anon_sym_bytes1] = ACTIONS(884),
    [anon_sym_bytes2] = ACTIONS(884),
    [anon_sym_bytes3] = ACTIONS(884),
    [anon_sym_bytes4] = ACTIONS(884),
    [anon_sym_bytes5] = ACTIONS(884),
    [anon_sym_bytes6] = ACTIONS(884),
    [anon_sym_bytes7] = ACTIONS(884),
    [anon_sym_bytes8] = ACTIONS(884),
    [anon_sym_bytes9] = ACTIONS(884),
    [anon_sym_bytes10] = ACTIONS(884),
    [anon_sym_bytes11] = ACTIONS(884),
    [anon_sym_bytes12] = ACTIONS(884),
    [anon_sym_bytes13] = ACTIONS(884),
    [anon_sym_bytes14] = ACTIONS(884),
    [anon_sym_bytes15] = ACTIONS(884),
    [anon_sym_bytes16] = ACTIONS(884),
    [anon_sym_bytes17] = ACTIONS(884),
    [anon_sym_bytes18] = ACTIONS(884),
    [anon_sym_bytes19] = ACTIONS(884),
    [anon_sym_bytes20] = ACTIONS(884),
    [anon_sym_bytes21] = ACTIONS(884),
    [anon_sym_bytes22] = ACTIONS(884),
    [anon_sym_bytes23] = ACTIONS(884),
    [anon_sym_bytes24] = ACTIONS(884),
    [anon_sym_bytes25] = ACTIONS(884),
    [anon_sym_bytes26] = ACTIONS(884),
    [anon_sym_bytes27] = ACTIONS(884),
    [anon_sym_bytes28] = ACTIONS(884),
    [anon_sym_bytes29] = ACTIONS(884),
    [anon_sym_bytes30] = ACTIONS(884),
    [anon_sym_bytes31] = ACTIONS(884),
    [anon_sym_bytes32] = ACTIONS(884),
    [anon_sym_fixed] = ACTIONS(884),
    [aux_sym__fixed_token1] = ACTIONS(884),
    [anon_sym_ufixed] = ACTIONS(884),
    [aux_sym__ufixed_token1] = ACTIONS(884),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(261)] = {
    [sym_identifier] = ACTIONS(888),
    [anon_sym_RBRACE] = ACTIONS(890),
    [anon_sym_type] = ACTIONS(888),
    [anon_sym_error] = ACTIONS(888),
    [anon_sym_struct] = ACTIONS(888),
    [anon_sym_enum] = ACTIONS(888),
    [anon_sym_event] = ACTIONS(888),
    [anon_sym_using] = ACTIONS(888),
    [anon_sym_function] = ACTIONS(888),
    [anon_sym_byte] = ACTIONS(888),
    [anon_sym_address] = ACTIONS(888),
    [anon_sym_var] = ACTIONS(888),
    [anon_sym_modifier] = ACTIONS(888),
    [anon_sym_constructor] = ACTIONS(888),
    [anon_sym_fallback] = ACTIONS(888),
    [anon_sym_receive] = ACTIONS(888),
    [anon_sym_mapping] = ACTIONS(888),
    [anon_sym_bool] = ACTIONS(888),
    [anon_sym_string] = ACTIONS(888),
    [anon_sym_int] = ACTIONS(888),
    [anon_sym_int8] = ACTIONS(888),
    [anon_sym_int16] = ACTIONS(888),
    [anon_sym_int24] = ACTIONS(888),
    [anon_sym_int32] = ACTIONS(888),
    [anon_sym_int40] = ACTIONS(888),
    [anon_sym_int48] = ACTIONS(888),
    [anon_sym_int56] = ACTIONS(888),
    [anon_sym_int64] = ACTIONS(888),
    [anon_sym_int72] = ACTIONS(888),
    [anon_sym_int80] = ACTIONS(888),
    [anon_sym_int88] = ACTIONS(888),
    [anon_sym_int96] = ACTIONS(888),
    [anon_sym_int104] = ACTIONS(888),
    [anon_sym_int112] = ACTIONS(888),
    [anon_sym_int120] = ACTIONS(888),
    [anon_sym_int128] = ACTIONS(888),
    [anon_sym_int136] = ACTIONS(888),
    [anon_sym_int144] = ACTIONS(888),
    [anon_sym_int152] = ACTIONS(888),
    [anon_sym_int160] = ACTIONS(888),
    [anon_sym_int168] = ACTIONS(888),
    [anon_sym_int176] = ACTIONS(888),
    [anon_sym_int184] = ACTIONS(888),
    [anon_sym_int192] = ACTIONS(888),
    [anon_sym_int200] = ACTIONS(888),
    [anon_sym_int208] = ACTIONS(888),
    [anon_sym_int216] = ACTIONS(888),
    [anon_sym_int224] = ACTIONS(888),
    [anon_sym_int232] = ACTIONS(888),
    [anon_sym_int240] = ACTIONS(888),
    [anon_sym_int248] = ACTIONS(888),
    [anon_sym_int256] = ACTIONS(888),
    [anon_sym_uint] = ACTIONS(888),
    [anon_sym_uint8] = ACTIONS(888),
    [anon_sym_uint16] = ACTIONS(888),
    [anon_sym_uint24] = ACTIONS(888),
    [anon_sym_uint32] = ACTIONS(888),
    [anon_sym_uint40] = ACTIONS(888),
    [anon_sym_uint48] = ACTIONS(888),
    [anon_sym_uint56] = ACTIONS(888),
    [anon_sym_uint64] = ACTIONS(888),
    [anon_sym_uint72] = ACTIONS(888),
    [anon_sym_uint80] = ACTIONS(888),
    [anon_sym_uint88] = ACTIONS(888),
    [anon_sym_uint96] = ACTIONS(888),
    [anon_sym_uint104] = ACTIONS(888),
    [anon_sym_uint112] = ACTIONS(888),
    [anon_sym_uint120] = ACTIONS(888),
    [anon_sym_uint128] = ACTIONS(888),
    [anon_sym_uint136] = ACTIONS(888),
    [anon_sym_uint144] = ACTIONS(888),
    [anon_sym_uint152] = ACTIONS(888),
    [anon_sym_uint160] = ACTIONS(888),
    [anon_sym_uint168] = ACTIONS(888),
    [anon_sym_uint176] = ACTIONS(888),
    [anon_sym_uint184] = ACTIONS(888),
    [anon_sym_uint192] = ACTIONS(888),
    [anon_sym_uint200] = ACTIONS(888),
    [anon_sym_uint208] = ACTIONS(888),
    [anon_sym_uint216] = ACTIONS(888),
    [anon_sym_uint224] = ACTIONS(888),
    [anon_sym_uint232] = ACTIONS(888),
    [anon_sym_uint240] = ACTIONS(888),
    [anon_sym_uint248] = ACTIONS(888),
    [anon_sym_uint256] = ACTIONS(888),
    [anon_sym_bytes] = ACTIONS(888),
    [anon_sym_bytes1] = ACTIONS(888),
    [anon_sym_bytes2] = ACTIONS(888),
    [anon_sym_bytes3] = ACTIONS(888),
    [anon_sym_bytes4] = ACTIONS(888),
    [anon_sym_bytes5] = ACTIONS(888),
    [anon_sym_bytes6] = ACTIONS(888),
    [anon_sym_bytes7] = ACTIONS(888),
    [anon_sym_bytes8] = ACTIONS(888),
    [anon_sym_bytes9] = ACTIONS(888),
    [anon_sym_bytes10] = ACTIONS(888),
    [anon_sym_bytes11] = ACTIONS(888),
    [anon_sym_bytes12] = ACTIONS(888),
    [anon_sym_bytes13] = ACTIONS(888),
    [anon_sym_bytes14] = ACTIONS(888),
    [anon_sym_bytes15] = ACTIONS(888),
    [anon_sym_bytes16] = ACTIONS(888),
    [anon_sym_bytes17] = ACTIONS(888),
    [anon_sym_bytes18] = ACTIONS(888),
    [anon_sym_bytes19] = ACTIONS(888),
    [anon_sym_bytes20] = ACTIONS(888),
    [anon_sym_bytes21] = ACTIONS(888),
    [anon_sym_bytes22] = ACTIONS(888),
    [anon_sym_bytes23] = ACTIONS(888),
    [anon_sym_bytes24] = ACTIONS(888),
    [anon_sym_bytes25] = ACTIONS(888),
    [anon_sym_bytes26] = ACTIONS(888),
    [anon_sym_bytes27] = ACTIONS(888),
    [anon_sym_bytes28] = ACTIONS(888),
    [anon_sym_bytes29] = ACTIONS(888),
    [anon_sym_bytes30] = ACTIONS(888),
    [anon_sym_bytes31] = ACTIONS(888),
    [anon_sym_bytes32] = ACTIONS(888),
    [anon_sym_fixed] = ACTIONS(888),
    [aux_sym__fixed_token1] = ACTIONS(888),
    [anon_sym_ufixed] = ACTIONS(888),
    [aux_sym__ufixed_token1] = ACTIONS(888),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(262)] = {
    [sym__yul_statement] = STATE(269),
    [sym_yul_label] = STATE(269),
    [sym_yul_break] = STATE(269),
    [sym_yul_continue] = STATE(269),
    [sym_yul_identifier] = STATE(275),
    [sym_yul_path] = STATE(280),
    [sym__yul_literal] = STATE(269),
    [sym_yul_string_literal] = STATE(269),
    [sym_yul_boolean] = STATE(269),
    [sym_yul_hex_string_literal] = STATE(269),
    [sym_yul_block] = STATE(269),
    [sym_yul_variable_declaration] = STATE(269),
    [sym_yul_assignment] = STATE(269),
    [sym_yul_function_call] = STATE(269),
    [sym_yul_if_statement] = STATE(269),
    [sym_yul_for_statement] = STATE(269),
    [sym_yul_switch_statement] = STATE(269),
    [sym_yul_function_definition] = STATE(269),
    [sym_yul_evm_builtin] = STATE(284),
    [sym_string] = STATE(290),
    [aux_sym_assembly_statement_repeat1] = STATE(269),
    [sym_identifier] = ACTIONS(892),
    [anon_sym_LBRACE] = ACTIONS(894),
    [anon_sym_RBRACE] = ACTIONS(896),
    [anon_sym_for] = ACTIONS(898),
    [sym_yul_leave] = ACTIONS(900),
    [anon_sym_break] = ACTIONS(902),
    [anon_sym_continue] = ACTIONS(904),
    [sym_yul_decimal_number] = ACTIONS(900),
    [sym_yul_hex_number] = ACTIONS(906),
    [anon_sym_true] = ACTIONS(908),
    [anon_sym_false] = ACTIONS(908),
    [anon_sym_hex] = ACTIONS(910),
    [anon_sym_DQUOTE] = ACTIONS(912),
    [anon_sym_SQUOTE] = ACTIONS(914),
    [anon_sym_let] = ACTIONS(916),
    [anon_sym_if] = ACTIONS(918),
    [anon_sym_switch] = ACTIONS(920),
    [anon_sym_function] = ACTIONS(922),
    [anon_sym_stop] = ACTIONS(924),
    [anon_sym_add] = ACTIONS(924),
    [anon_sym_sub] = ACTIONS(924),
    [anon_sym_mul] = ACTIONS(924),
    [anon_sym_div] = ACTIONS(924),
    [anon_sym_sdiv] = ACTIONS(924),
    [anon_sym_mod] = ACTIONS(924),
    [anon_sym_smod] = ACTIONS(924),
    [anon_sym_exp] = ACTIONS(924),
    [anon_sym_not] = ACTIONS(924),
    [anon_sym_lt] = ACTIONS(924),
    [anon_sym_gt] = ACTIONS(924),
    [anon_sym_slt] = ACTIONS(924),
    [anon_sym_sgt] = ACTIONS(924),
    [anon_sym_eq] = ACTIONS(924),
    [anon_sym_iszero] = ACTIONS(924),
    [anon_sym_and] = ACTIONS(924),
    [anon_sym_or] = ACTIONS(924),
    [anon_sym_xor] = ACTIONS(924),
    [anon_sym_byte] = ACTIONS(924),
    [anon_sym_shl] = ACTIONS(924),
    [anon_sym_shr] = ACTIONS(924),
    [anon_sym_sar] = ACTIONS(924),
    [anon_sym_addmod] = ACTIONS(924),
    [anon_sym_mulmod] = ACTIONS(924),
    [anon_sym_signextend] = ACTIONS(924),
    [anon_sym_keccak256] = ACTIONS(924),
    [anon_sym_pop] = ACTIONS(924),
    [anon_sym_mload] = ACTIONS(924),
    [anon_sym_mcopy] = ACTIONS(924),
    [anon_sym_tload] = ACTIONS(924),
    [anon_sym_tstore] = ACTIONS(924),
    [anon_sym_mstore] = ACTIONS(924),
    [anon_sym_mstore8] = ACTIONS(924),
    [anon_sym_sload] = ACTIONS(924),
    [anon_sym_sstore] = ACTIONS(924),
    [anon_sym_msize] = ACTIONS(924),
    [anon_sym_gas] = ACTIONS(924),
    [anon_sym_address] = ACTIONS(924),
    [anon_sym_balance] = ACTIONS(924),
    [anon_sym_selfbalance] = ACTIONS(924),
    [anon_sym_caller] = ACTIONS(924),
    [anon_sym_callvalue] = ACTIONS(924),
    [anon_sym_calldataload] = ACTIONS(924),
    [anon_sym_calldatasize] = ACTIONS(924),
    [anon_sym_calldatacopy] = ACTIONS(924),
    [anon_sym_extcodesize] = ACTIONS(924),
    [anon_sym_extcodecopy] = ACTIONS(924),
    [anon_sym_returndatasize] = ACTIONS(924),
    [anon_sym_returndatacopy] = ACTIONS(924),
    [anon_sym_extcodehash] = ACTIONS(924),
    [anon_sym_create] = ACTIONS(924),
    [anon_sym_create2] = ACTIONS(924),
    [anon_sym_call] = ACTIONS(924),
    [anon_sym_callcode] = ACTIONS(924),
    [anon_sym_delegatecall] = ACTIONS(924),
    [anon_sym_staticcall] = ACTIONS(924),
    [anon_sym_return] = ACTIONS(924),
    [anon_sym_revert] = ACTIONS(924),
    [anon_sym_selfdestruct] = ACTIONS(924),
    [anon_sym_invalid] = ACTIONS(924),
    [anon_sym_log0] = ACTIONS(924),
    [anon_sym_log1] = ACTIONS(924),
    [anon_sym_log2] = ACTIONS(924),
    [anon_sym_log3] = ACTIONS(924),
    [anon_sym_log4] = ACTIONS(924),
    [anon_sym_chainid] = ACTIONS(924),
    [anon_sym_origin] = ACTIONS(924),
    [anon_sym_gasprice] = ACTIONS(924),
    [anon_sym_blockhash] = ACTIONS(924),
    [anon_sym_blobhash] = ACTIONS(924),
    [anon_sym_basefee] = ACTIONS(924),
    [anon_sym_blobfee] = ACTIONS(924),
    [anon_sym_coinbase] = ACTIONS(924),
    [anon_sym_timestamp] = ACTIONS(924),
    [anon_sym_number] = ACTIONS(924),
    [anon_sym_difficulty] = ACTIONS(924),
    [anon_sym_gaslimit] = ACTIONS(924),
    [anon_sym_prevrandao] = ACTIONS(924),
    [anon_sym_blobbasefee] = ACTIONS(924),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(263)] = {
    [sym__yul_statement] = STATE(264),
    [sym_yul_label] = STATE(264),
    [sym_yul_break] = STATE(264),
    [sym_yul_continue] = STATE(264),
    [sym_yul_identifier] = STATE(275),
    [sym_yul_path] = STATE(280),
    [sym__yul_literal] = STATE(264),
    [sym_yul_string_literal] = STATE(264),
    [sym_yul_boolean] = STATE(264),
    [sym_yul_hex_string_literal] = STATE(264),
    [sym_yul_block] = STATE(264),
    [sym_yul_variable_declaration] = STATE(264),
    [sym_yul_assignment] = STATE(264),
    [sym_yul_function_call] = STATE(264),
    [sym_yul_if_statement] = STATE(264),
    [sym_yul_for_statement] = STATE(264),
    [sym_yul_switch_statement] = STATE(264),
    [sym_yul_function_definition] = STATE(264),
    [sym_yul_evm_builtin] = STATE(284),
    [sym_string] = STATE(290),
    [aux_sym_assembly_statement_repeat1] = STATE(264),
    [sym_identifier] = ACTIONS(892),
    [anon_sym_LBRACE] = ACTIONS(894),
    [anon_sym_RBRACE] = ACTIONS(926),
    [anon_sym_for] = ACTIONS(898),
    [sym_yul_leave] = ACTIONS(928),
    [anon_sym_break] = ACTIONS(902),
    [anon_sym_continue] = ACTIONS(904),
    [sym_yul_decimal_number] = ACTIONS(928),
    [sym_yul_hex_number] = ACTIONS(930),
    [anon_sym_true] = ACTIONS(908),
    [anon_sym_false] = ACTIONS(908),
    [anon_sym_hex] = ACTIONS(910),
    [anon_sym_DQUOTE] = ACTIONS(912),
    [anon_sym_SQUOTE] = ACTIONS(914),
    [anon_sym_let] = ACTIONS(916),
    [anon_sym_if] = ACTIONS(918),
    [anon_sym_switch] = ACTIONS(920),
    [anon_sym_function] = ACTIONS(922),
    [anon_sym_stop] = ACTIONS(924),
    [anon_sym_add] = ACTIONS(924),
    [anon_sym_sub] = ACTIONS(924),
    [anon_sym_mul] = ACTIONS(924),
    [anon_sym_div] = ACTIONS(924),
    [anon_sym_sdiv] = ACTIONS(924),
    [anon_sym_mod] = ACTIONS(924),
    [anon_sym_smod] = ACTIONS(924),
    [anon_sym_exp] = ACTIONS(924),
    [anon_sym_not] = ACTIONS(924),
    [anon_sym_lt] = ACTIONS(924),
    [anon_sym_gt] = ACTIONS(924),
    [anon_sym_slt] = ACTIONS(924),
    [anon_sym_sgt] = ACTIONS(924),
    [anon_sym_eq] = ACTIONS(924),
    [anon_sym_iszero] = ACTIONS(924),
    [anon_sym_and] = ACTIONS(924),
    [anon_sym_or] = ACTIONS(924),
    [anon_sym_xor] = ACTIONS(924),
    [anon_sym_byte] = ACTIONS(924),
    [anon_sym_shl] = ACTIONS(924),
    [anon_sym_shr] = ACTIONS(924),
    [anon_sym_sar] = ACTIONS(924),
    [anon_sym_addmod] = ACTIONS(924),
    [anon_sym_mulmod] = ACTIONS(924),
    [anon_sym_signextend] = ACTIONS(924),
    [anon_sym_keccak256] = ACTIONS(924),
    [anon_sym_pop] = ACTIONS(924),
    [anon_sym_mload] = ACTIONS(924),
    [anon_sym_mcopy] = ACTIONS(924),
    [anon_sym_tload] = ACTIONS(924),
    [anon_sym_tstore] = ACTIONS(924),
    [anon_sym_mstore] = ACTIONS(924),
    [anon_sym_mstore8] = ACTIONS(924),
    [anon_sym_sload] = ACTIONS(924),
    [anon_sym_sstore] = ACTIONS(924),
    [anon_sym_msize] = ACTIONS(924),
    [anon_sym_gas] = ACTIONS(924),
    [anon_sym_address] = ACTIONS(924),
    [anon_sym_balance] = ACTIONS(924),
    [anon_sym_selfbalance] = ACTIONS(924),
    [anon_sym_caller] = ACTIONS(924),
    [anon_sym_callvalue] = ACTIONS(924),
    [anon_sym_calldataload] = ACTIONS(924),
    [anon_sym_calldatasize] = ACTIONS(924),
    [anon_sym_calldatacopy] = ACTIONS(924),
    [anon_sym_extcodesize] = ACTIONS(924),
    [anon_sym_extcodecopy] = ACTIONS(924),
    [anon_sym_returndatasize] = ACTIONS(924),
    [anon_sym_returndatacopy] = ACTIONS(924),
    [anon_sym_extcodehash] = ACTIONS(924),
    [anon_sym_create] = ACTIONS(924),
    [anon_sym_create2] = ACTIONS(924),
    [anon_sym_call] = ACTIONS(924),
    [anon_sym_callcode] = ACTIONS(924),
    [anon_sym_delegatecall] = ACTIONS(924),
    [anon_sym_staticcall] = ACTIONS(924),
    [anon_sym_return] = ACTIONS(924),
    [anon_sym_revert] = ACTIONS(924),
    [anon_sym_selfdestruct] = ACTIONS(924),
    [anon_sym_invalid] = ACTIONS(924),
    [anon_sym_log0] = ACTIONS(924),
    [anon_sym_log1] = ACTIONS(924),
    [anon_sym_log2] = ACTIONS(924),
    [anon_sym_log3] = ACTIONS(924),
    [anon_sym_log4] = ACTIONS(924),
    [anon_sym_chainid] = ACTIONS(924),
    [anon_sym_origin] = ACTIONS(924),
    [anon_sym_gasprice] = ACTIONS(924),
    [anon_sym_blockhash] = ACTIONS(924),
    [anon_sym_blobhash] = ACTIONS(924),
    [anon_sym_basefee] = ACTIONS(924),
    [anon_sym_blobfee] = ACTIONS(924),
    [anon_sym_coinbase] = ACTIONS(924),
    [anon_sym_timestamp] = ACTIONS(924),
    [anon_sym_number] = ACTIONS(924),
    [anon_sym_difficulty] = ACTIONS(924),
    [anon_sym_gaslimit] = ACTIONS(924),
    [anon_sym_prevrandao] = ACTIONS(924),
    [anon_sym_blobbasefee] = ACTIONS(924),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(264)] = {
    [sym__yul_statement] = STATE(269),
    [sym_yul_label] = STATE(269),
    [sym_yul_break] = STATE(269),
    [sym_yul_continue] = STATE(269),
    [sym_yul_identifier] = STATE(275),
    [sym_yul_path] = STATE(280),
    [sym__yul_literal] = STATE(269),
    [sym_yul_string_literal] = STATE(269),
    [sym_yul_boolean] = STATE(269),
    [sym_yul_hex_string_literal] = STATE(269),
    [sym_yul_block] = STATE(269),
    [sym_yul_variable_declaration] = STATE(269),
    [sym_yul_assignment] = STATE(269),
    [sym_yul_function_call] = STATE(269),
    [sym_yul_if_statement] = STATE(269),
    [sym_yul_for_statement] = STATE(269),
    [sym_yul_switch_statement] = STATE(269),
    [sym_yul_function_definition] = STATE(269),
    [sym_yul_evm_builtin] = STATE(284),
    [sym_string] = STATE(290),
    [aux_sym_assembly_statement_repeat1] = STATE(269),
    [sym_identifier] = ACTIONS(892),
    [anon_sym_LBRACE] = ACTIONS(894),
    [anon_sym_RBRACE] = ACTIONS(932),
    [anon_sym_for] = ACTIONS(898),
    [sym_yul_leave] = ACTIONS(900),
    [anon_sym_break] = ACTIONS(902),
    [anon_sym_continue] = ACTIONS(904),
    [sym_yul_decimal_number] = ACTIONS(900),
    [sym_yul_hex_number] = ACTIONS(906),
    [anon_sym_true] = ACTIONS(908),
    [anon_sym_false] = ACTIONS(908),
    [anon_sym_hex] = ACTIONS(910),
    [anon_sym_DQUOTE] = ACTIONS(912),
    [anon_sym_SQUOTE] = ACTIONS(914),
    [anon_sym_let] = ACTIONS(916),
    [anon_sym_if] = ACTIONS(918),
    [anon_sym_switch] = ACTIONS(920),
    [anon_sym_function] = ACTIONS(922),
    [anon_sym_stop] = ACTIONS(924),
    [anon_sym_add] = ACTIONS(924),
    [anon_sym_sub] = ACTIONS(924),
    [anon_sym_mul] = ACTIONS(924),
    [anon_sym_div] = ACTIONS(924),
    [anon_sym_sdiv] = ACTIONS(924),
    [anon_sym_mod] = ACTIONS(924),
    [anon_sym_smod] = ACTIONS(924),
    [anon_sym_exp] = ACTIONS(924),
    [anon_sym_not] = ACTIONS(924),
    [anon_sym_lt] = ACTIONS(924),
    [anon_sym_gt] = ACTIONS(924),
    [anon_sym_slt] = ACTIONS(924),
    [anon_sym_sgt] = ACTIONS(924),
    [anon_sym_eq] = ACTIONS(924),
    [anon_sym_iszero] = ACTIONS(924),
    [anon_sym_and] = ACTIONS(924),
    [anon_sym_or] = ACTIONS(924),
    [anon_sym_xor] = ACTIONS(924),
    [anon_sym_byte] = ACTIONS(924),
    [anon_sym_shl] = ACTIONS(924),
    [anon_sym_shr] = ACTIONS(924),
    [anon_sym_sar] = ACTIONS(924),
    [anon_sym_addmod] = ACTIONS(924),
    [anon_sym_mulmod] = ACTIONS(924),
    [anon_sym_signextend] = ACTIONS(924),
    [anon_sym_keccak256] = ACTIONS(924),
    [anon_sym_pop] = ACTIONS(924),
    [anon_sym_mload] = ACTIONS(924),
    [anon_sym_mcopy] = ACTIONS(924),
    [anon_sym_tload] = ACTIONS(924),
    [anon_sym_tstore] = ACTIONS(924),
    [anon_sym_mstore] = ACTIONS(924),
    [anon_sym_mstore8] = ACTIONS(924),
    [anon_sym_sload] = ACTIONS(924),
    [anon_sym_sstore] = ACTIONS(924),
    [anon_sym_msize] = ACTIONS(924),
    [anon_sym_gas] = ACTIONS(924),
    [anon_sym_address] = ACTIONS(924),
    [anon_sym_balance] = ACTIONS(924),
    [anon_sym_selfbalance] = ACTIONS(924),
    [anon_sym_caller] = ACTIONS(924),
    [anon_sym_callvalue] = ACTIONS(924),
    [anon_sym_calldataload] = ACTIONS(924),
    [anon_sym_calldatasize] = ACTIONS(924),
    [anon_sym_calldatacopy] = ACTIONS(924),
    [anon_sym_extcodesize] = ACTIONS(924),
    [anon_sym_extcodecopy] = ACTIONS(924),
    [anon_sym_returndatasize] = ACTIONS(924),
    [anon_sym_returndatacopy] = ACTIONS(924),
    [anon_sym_extcodehash] = ACTIONS(924),
    [anon_sym_create] = ACTIONS(924),
    [anon_sym_create2] = ACTIONS(924),
    [anon_sym_call] = ACTIONS(924),
    [anon_sym_callcode] = ACTIONS(924),
    [anon_sym_delegatecall] = ACTIONS(924),
    [anon_sym_staticcall] = ACTIONS(924),
    [anon_sym_return] = ACTIONS(924),
    [anon_sym_revert] = ACTIONS(924),
    [anon_sym_selfdestruct] = ACTIONS(924),
    [anon_sym_invalid] = ACTIONS(924),
    [anon_sym_log0] = ACTIONS(924),
    [anon_sym_log1] = ACTIONS(924),
    [anon_sym_log2] = ACTIONS(924),
    [anon_sym_log3] = ACTIONS(924),
    [anon_sym_log4] = ACTIONS(924),
    [anon_sym_chainid] = ACTIONS(924),
    [anon_sym_origin] = ACTIONS(924),
    [anon_sym_gasprice] = ACTIONS(924),
    [anon_sym_blockhash] = ACTIONS(924),
    [anon_sym_blobhash] = ACTIONS(924),
    [anon_sym_basefee] = ACTIONS(924),
    [anon_sym_blobfee] = ACTIONS(924),
    [anon_sym_coinbase] = ACTIONS(924),
    [anon_sym_timestamp] = ACTIONS(924),
    [anon_sym_number] = ACTIONS(924),
    [anon_sym_difficulty] = ACTIONS(924),
    [anon_sym_gaslimit] = ACTIONS(924),
    [anon_sym_prevrandao] = ACTIONS(924),
    [anon_sym_blobbasefee] = ACTIONS(924),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(265)] = {
    [sym__yul_statement] = STATE(267),
    [sym_yul_label] = STATE(267),
    [sym_yul_break] = STATE(267),
    [sym_yul_continue] = STATE(267),
    [sym_yul_identifier] = STATE(275),
    [sym_yul_path] = STATE(280),
    [sym__yul_literal] = STATE(267),
    [sym_yul_string_literal] = STATE(267),
    [sym_yul_boolean] = STATE(267),
    [sym_yul_hex_string_literal] = STATE(267),
    [sym_yul_block] = STATE(267),
    [sym_yul_variable_declaration] = STATE(267),
    [sym_yul_assignment] = STATE(267),
    [sym_yul_function_call] = STATE(267),
    [sym_yul_if_statement] = STATE(267),
    [sym_yul_for_statement] = STATE(267),
    [sym_yul_switch_statement] = STATE(267),
    [sym_yul_function_definition] = STATE(267),
    [sym_yul_evm_builtin] = STATE(284),
    [sym_string] = STATE(290),
    [aux_sym_assembly_statement_repeat1] = STATE(267),
    [sym_identifier] = ACTIONS(892),
    [anon_sym_LBRACE] = ACTIONS(894),
    [anon_sym_RBRACE] = ACTIONS(932),
    [anon_sym_for] = ACTIONS(898),
    [sym_yul_leave] = ACTIONS(934),
    [anon_sym_break] = ACTIONS(902),
    [anon_sym_continue] = ACTIONS(904),
    [sym_yul_decimal_number] = ACTIONS(934),
    [sym_yul_hex_number] = ACTIONS(936),
    [anon_sym_true] = ACTIONS(908),
    [anon_sym_false] = ACTIONS(908),
    [anon_sym_hex] = ACTIONS(910),
    [anon_sym_DQUOTE] = ACTIONS(912),
    [anon_sym_SQUOTE] = ACTIONS(914),
    [anon_sym_let] = ACTIONS(916),
    [anon_sym_if] = ACTIONS(918),
    [anon_sym_switch] = ACTIONS(920),
    [anon_sym_function] = ACTIONS(922),
    [anon_sym_stop] = ACTIONS(924),
    [anon_sym_add] = ACTIONS(924),
    [anon_sym_sub] = ACTIONS(924),
    [anon_sym_mul] = ACTIONS(924),
    [anon_sym_div] = ACTIONS(924),
    [anon_sym_sdiv] = ACTIONS(924),
    [anon_sym_mod] = ACTIONS(924),
    [anon_sym_smod] = ACTIONS(924),
    [anon_sym_exp] = ACTIONS(924),
    [anon_sym_not] = ACTIONS(924),
    [anon_sym_lt] = ACTIONS(924),
    [anon_sym_gt] = ACTIONS(924),
    [anon_sym_slt] = ACTIONS(924),
    [anon_sym_sgt] = ACTIONS(924),
    [anon_sym_eq] = ACTIONS(924),
    [anon_sym_iszero] = ACTIONS(924),
    [anon_sym_and] = ACTIONS(924),
    [anon_sym_or] = ACTIONS(924),
    [anon_sym_xor] = ACTIONS(924),
    [anon_sym_byte] = ACTIONS(924),
    [anon_sym_shl] = ACTIONS(924),
    [anon_sym_shr] = ACTIONS(924),
    [anon_sym_sar] = ACTIONS(924),
    [anon_sym_addmod] = ACTIONS(924),
    [anon_sym_mulmod] = ACTIONS(924),
    [anon_sym_signextend] = ACTIONS(924),
    [anon_sym_keccak256] = ACTIONS(924),
    [anon_sym_pop] = ACTIONS(924),
    [anon_sym_mload] = ACTIONS(924),
    [anon_sym_mcopy] = ACTIONS(924),
    [anon_sym_tload] = ACTIONS(924),
    [anon_sym_tstore] = ACTIONS(924),
    [anon_sym_mstore] = ACTIONS(924),
    [anon_sym_mstore8] = ACTIONS(924),
    [anon_sym_sload] = ACTIONS(924),
    [anon_sym_sstore] = ACTIONS(924),
    [anon_sym_msize] = ACTIONS(924),
    [anon_sym_gas] = ACTIONS(924),
    [anon_sym_address] = ACTIONS(924),
    [anon_sym_balance] = ACTIONS(924),
    [anon_sym_selfbalance] = ACTIONS(924),
    [anon_sym_caller] = ACTIONS(924),
    [anon_sym_callvalue] = ACTIONS(924),
    [anon_sym_calldataload] = ACTIONS(924),
    [anon_sym_calldatasize] = ACTIONS(924),
    [anon_sym_calldatacopy] = ACTIONS(924),
    [anon_sym_extcodesize] = ACTIONS(924),
    [anon_sym_extcodecopy] = ACTIONS(924),
    [anon_sym_returndatasize] = ACTIONS(924),
    [anon_sym_returndatacopy] = ACTIONS(924),
    [anon_sym_extcodehash] = ACTIONS(924),
    [anon_sym_create] = ACTIONS(924),
    [anon_sym_create2] = ACTIONS(924),
    [anon_sym_call] = ACTIONS(924),
    [anon_sym_callcode] = ACTIONS(924),
    [anon_sym_delegatecall] = ACTIONS(924),
    [anon_sym_staticcall] = ACTIONS(924),
    [anon_sym_return] = ACTIONS(924),
    [anon_sym_revert] = ACTIONS(924),
    [anon_sym_selfdestruct] = ACTIONS(924),
    [anon_sym_invalid] = ACTIONS(924),
    [anon_sym_log0] = ACTIONS(924),
    [anon_sym_log1] = ACTIONS(924),
    [anon_sym_log2] = ACTIONS(924),
    [anon_sym_log3] = ACTIONS(924),
    [anon_sym_log4] = ACTIONS(924),
    [anon_sym_chainid] = ACTIONS(924),
    [anon_sym_origin] = ACTIONS(924),
    [anon_sym_gasprice] = ACTIONS(924),
    [anon_sym_blockhash] = ACTIONS(924),
    [anon_sym_blobhash] = ACTIONS(924),
    [anon_sym_basefee] = ACTIONS(924),
    [anon_sym_blobfee] = ACTIONS(924),
    [anon_sym_coinbase] = ACTIONS(924),
    [anon_sym_timestamp] = ACTIONS(924),
    [anon_sym_number] = ACTIONS(924),
    [anon_sym_difficulty] = ACTIONS(924),
    [anon_sym_gaslimit] = ACTIONS(924),
    [anon_sym_prevrandao] = ACTIONS(924),
    [anon_sym_blobbasefee] = ACTIONS(924),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(266)] = {
    [sym__yul_statement] = STATE(269),
    [sym_yul_label] = STATE(269),
    [sym_yul_break] = STATE(269),
    [sym_yul_continue] = STATE(269),
    [sym_yul_identifier] = STATE(275),
    [sym_yul_path] = STATE(280),
    [sym__yul_literal] = STATE(269),
    [sym_yul_string_literal] = STATE(269),
    [sym_yul_boolean] = STATE(269),
    [sym_yul_hex_string_literal] = STATE(269),
    [sym_yul_block] = STATE(269),
    [sym_yul_variable_declaration] = STATE(269),
    [sym_yul_assignment] = STATE(269),
    [sym_yul_function_call] = STATE(269),
    [sym_yul_if_statement] = STATE(269),
    [sym_yul_for_statement] = STATE(269),
    [sym_yul_switch_statement] = STATE(269),
    [sym_yul_function_definition] = STATE(269),
    [sym_yul_evm_builtin] = STATE(284),
    [sym_string] = STATE(290),
    [aux_sym_assembly_statement_repeat1] = STATE(269),
    [sym_identifier] = ACTIONS(892),
    [anon_sym_LBRACE] = ACTIONS(894),
    [anon_sym_RBRACE] = ACTIONS(938),
    [anon_sym_for] = ACTIONS(898),
    [sym_yul_leave] = ACTIONS(900),
    [anon_sym_break] = ACTIONS(902),
    [anon_sym_continue] = ACTIONS(904),
    [sym_yul_decimal_number] = ACTIONS(900),
    [sym_yul_hex_number] = ACTIONS(906),
    [anon_sym_true] = ACTIONS(908),
    [anon_sym_false] = ACTIONS(908),
    [anon_sym_hex] = ACTIONS(910),
    [anon_sym_DQUOTE] = ACTIONS(912),
    [anon_sym_SQUOTE] = ACTIONS(914),
    [anon_sym_let] = ACTIONS(916),
    [anon_sym_if] = ACTIONS(918),
    [anon_sym_switch] = ACTIONS(920),
    [anon_sym_function] = ACTIONS(922),
    [anon_sym_stop] = ACTIONS(924),
    [anon_sym_add] = ACTIONS(924),
    [anon_sym_sub] = ACTIONS(924),
    [anon_sym_mul] = ACTIONS(924),
    [anon_sym_div] = ACTIONS(924),
    [anon_sym_sdiv] = ACTIONS(924),
    [anon_sym_mod] = ACTIONS(924),
    [anon_sym_smod] = ACTIONS(924),
    [anon_sym_exp] = ACTIONS(924),
    [anon_sym_not] = ACTIONS(924),
    [anon_sym_lt] = ACTIONS(924),
    [anon_sym_gt] = ACTIONS(924),
    [anon_sym_slt] = ACTIONS(924),
    [anon_sym_sgt] = ACTIONS(924),
    [anon_sym_eq] = ACTIONS(924),
    [anon_sym_iszero] = ACTIONS(924),
    [anon_sym_and] = ACTIONS(924),
    [anon_sym_or] = ACTIONS(924),
    [anon_sym_xor] = ACTIONS(924),
    [anon_sym_byte] = ACTIONS(924),
    [anon_sym_shl] = ACTIONS(924),
    [anon_sym_shr] = ACTIONS(924),
    [anon_sym_sar] = ACTIONS(924),
    [anon_sym_addmod] = ACTIONS(924),
    [anon_sym_mulmod] = ACTIONS(924),
    [anon_sym_signextend] = ACTIONS(924),
    [anon_sym_keccak256] = ACTIONS(924),
    [anon_sym_pop] = ACTIONS(924),
    [anon_sym_mload] = ACTIONS(924),
    [anon_sym_mcopy] = ACTIONS(924),
    [anon_sym_tload] = ACTIONS(924),
    [anon_sym_tstore] = ACTIONS(924),
    [anon_sym_mstore] = ACTIONS(924),
    [anon_sym_mstore8] = ACTIONS(924),
    [anon_sym_sload] = ACTIONS(924),
    [anon_sym_sstore] = ACTIONS(924),
    [anon_sym_msize] = ACTIONS(924),
    [anon_sym_gas] = ACTIONS(924),
    [anon_sym_address] = ACTIONS(924),
    [anon_sym_balance] = ACTIONS(924),
    [anon_sym_selfbalance] = ACTIONS(924),
    [anon_sym_caller] = ACTIONS(924),
    [anon_sym_callvalue] = ACTIONS(924),
    [anon_sym_calldataload] = ACTIONS(924),
    [anon_sym_calldatasize] = ACTIONS(924),
    [anon_sym_calldatacopy] = ACTIONS(924),
    [anon_sym_extcodesize] = ACTIONS(924),
    [anon_sym_extcodecopy] = ACTIONS(924),
    [anon_sym_returndatasize] = ACTIONS(924),
    [anon_sym_returndatacopy] = ACTIONS(924),
    [anon_sym_extcodehash] = ACTIONS(924),
    [anon_sym_create] = ACTIONS(924),
    [anon_sym_create2] = ACTIONS(924),
    [anon_sym_call] = ACTIONS(924),
    [anon_sym_callcode] = ACTIONS(924),
    [anon_sym_delegatecall] = ACTIONS(924),
    [anon_sym_staticcall] = ACTIONS(924),
    [anon_sym_return] = ACTIONS(924),
    [anon_sym_revert] = ACTIONS(924),
    [anon_sym_selfdestruct] = ACTIONS(924),
    [anon_sym_invalid] = ACTIONS(924),
    [anon_sym_log0] = ACTIONS(924),
    [anon_sym_log1] = ACTIONS(924),
    [anon_sym_log2] = ACTIONS(924),
    [anon_sym_log3] = ACTIONS(924),
    [anon_sym_log4] = ACTIONS(924),
    [anon_sym_chainid] = ACTIONS(924),
    [anon_sym_origin] = ACTIONS(924),
    [anon_sym_gasprice] = ACTIONS(924),
    [anon_sym_blockhash] = ACTIONS(924),
    [anon_sym_blobhash] = ACTIONS(924),
    [anon_sym_basefee] = ACTIONS(924),
    [anon_sym_blobfee] = ACTIONS(924),
    [anon_sym_coinbase] = ACTIONS(924),
    [anon_sym_timestamp] = ACTIONS(924),
    [anon_sym_number] = ACTIONS(924),
    [anon_sym_difficulty] = ACTIONS(924),
    [anon_sym_gaslimit] = ACTIONS(924),
    [anon_sym_prevrandao] = ACTIONS(924),
    [anon_sym_blobbasefee] = ACTIONS(924),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(267)] = {
    [sym__yul_statement] = STATE(269),
    [sym_yul_label] = STATE(269),
    [sym_yul_break] = STATE(269),
    [sym_yul_continue] = STATE(269),
    [sym_yul_identifier] = STATE(275),
    [sym_yul_path] = STATE(280),
    [sym__yul_literal] = STATE(269),
    [sym_yul_string_literal] = STATE(269),
    [sym_yul_boolean] = STATE(269),
    [sym_yul_hex_string_literal] = STATE(269),
    [sym_yul_block] = STATE(269),
    [sym_yul_variable_declaration] = STATE(269),
    [sym_yul_assignment] = STATE(269),
    [sym_yul_function_call] = STATE(269),
    [sym_yul_if_statement] = STATE(269),
    [sym_yul_for_statement] = STATE(269),
    [sym_yul_switch_statement] = STATE(269),
    [sym_yul_function_definition] = STATE(269),
    [sym_yul_evm_builtin] = STATE(284),
    [sym_string] = STATE(290),
    [aux_sym_assembly_statement_repeat1] = STATE(269),
    [sym_identifier] = ACTIONS(892),
    [anon_sym_LBRACE] = ACTIONS(894),
    [anon_sym_RBRACE] = ACTIONS(940),
    [anon_sym_for] = ACTIONS(898),
    [sym_yul_leave] = ACTIONS(900),
    [anon_sym_break] = ACTIONS(902),
    [anon_sym_continue] = ACTIONS(904),
    [sym_yul_decimal_number] = ACTIONS(900),
    [sym_yul_hex_number] = ACTIONS(906),
    [anon_sym_true] = ACTIONS(908),
    [anon_sym_false] = ACTIONS(908),
    [anon_sym_hex] = ACTIONS(910),
    [anon_sym_DQUOTE] = ACTIONS(912),
    [anon_sym_SQUOTE] = ACTIONS(914),
    [anon_sym_let] = ACTIONS(916),
    [anon_sym_if] = ACTIONS(918),
    [anon_sym_switch] = ACTIONS(920),
    [anon_sym_function] = ACTIONS(922),
    [anon_sym_stop] = ACTIONS(924),
    [anon_sym_add] = ACTIONS(924),
    [anon_sym_sub] = ACTIONS(924),
    [anon_sym_mul] = ACTIONS(924),
    [anon_sym_div] = ACTIONS(924),
    [anon_sym_sdiv] = ACTIONS(924),
    [anon_sym_mod] = ACTIONS(924),
    [anon_sym_smod] = ACTIONS(924),
    [anon_sym_exp] = ACTIONS(924),
    [anon_sym_not] = ACTIONS(924),
    [anon_sym_lt] = ACTIONS(924),
    [anon_sym_gt] = ACTIONS(924),
    [anon_sym_slt] = ACTIONS(924),
    [anon_sym_sgt] = ACTIONS(924),
    [anon_sym_eq] = ACTIONS(924),
    [anon_sym_iszero] = ACTIONS(924),
    [anon_sym_and] = ACTIONS(924),
    [anon_sym_or] = ACTIONS(924),
    [anon_sym_xor] = ACTIONS(924),
    [anon_sym_byte] = ACTIONS(924),
    [anon_sym_shl] = ACTIONS(924),
    [anon_sym_shr] = ACTIONS(924),
    [anon_sym_sar] = ACTIONS(924),
    [anon_sym_addmod] = ACTIONS(924),
    [anon_sym_mulmod] = ACTIONS(924),
    [anon_sym_signextend] = ACTIONS(924),
    [anon_sym_keccak256] = ACTIONS(924),
    [anon_sym_pop] = ACTIONS(924),
    [anon_sym_mload] = ACTIONS(924),
    [anon_sym_mcopy] = ACTIONS(924),
    [anon_sym_tload] = ACTIONS(924),
    [anon_sym_tstore] = ACTIONS(924),
    [anon_sym_mstore] = ACTIONS(924),
    [anon_sym_mstore8] = ACTIONS(924),
    [anon_sym_sload] = ACTIONS(924),
    [anon_sym_sstore] = ACTIONS(924),
    [anon_sym_msize] = ACTIONS(924),
    [anon_sym_gas] = ACTIONS(924),
    [anon_sym_address] = ACTIONS(924),
    [anon_sym_balance] = ACTIONS(924),
    [anon_sym_selfbalance] = ACTIONS(924),
    [anon_sym_caller] = ACTIONS(924),
    [anon_sym_callvalue] = ACTIONS(924),
    [anon_sym_calldataload] = ACTIONS(924),
    [anon_sym_calldatasize] = ACTIONS(924),
    [anon_sym_calldatacopy] = ACTIONS(924),
    [anon_sym_extcodesize] = ACTIONS(924),
    [anon_sym_extcodecopy] = ACTIONS(924),
    [anon_sym_returndatasize] = ACTIONS(924),
    [anon_sym_returndatacopy] = ACTIONS(924),
    [anon_sym_extcodehash] = ACTIONS(924),
    [anon_sym_create] = ACTIONS(924),
    [anon_sym_create2] = ACTIONS(924),
    [anon_sym_call] = ACTIONS(924),
    [anon_sym_callcode] = ACTIONS(924),
    [anon_sym_delegatecall] = ACTIONS(924),
    [anon_sym_staticcall] = ACTIONS(924),
    [anon_sym_return] = ACTIONS(924),
    [anon_sym_revert] = ACTIONS(924),
    [anon_sym_selfdestruct] = ACTIONS(924),
    [anon_sym_invalid] = ACTIONS(924),
    [anon_sym_log0] = ACTIONS(924),
    [anon_sym_log1] = ACTIONS(924),
    [anon_sym_log2] = ACTIONS(924),
    [anon_sym_log3] = ACTIONS(924),
    [anon_sym_log4] = ACTIONS(924),
    [anon_sym_chainid] = ACTIONS(924),
    [anon_sym_origin] = ACTIONS(924),
    [anon_sym_gasprice] = ACTIONS(924),
    [anon_sym_blockhash] = ACTIONS(924),
    [anon_sym_blobhash] = ACTIONS(924),
    [anon_sym_basefee] = ACTIONS(924),
    [anon_sym_blobfee] = ACTIONS(924),
    [anon_sym_coinbase] = ACTIONS(924),
    [anon_sym_timestamp] = ACTIONS(924),
    [anon_sym_number] = ACTIONS(924),
    [anon_sym_difficulty] = ACTIONS(924),
    [anon_sym_gaslimit] = ACTIONS(924),
    [anon_sym_prevrandao] = ACTIONS(924),
    [anon_sym_blobbasefee] = ACTIONS(924),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(268)] = {
    [sym__yul_statement] = STATE(262),
    [sym_yul_label] = STATE(262),
    [sym_yul_break] = STATE(262),
    [sym_yul_continue] = STATE(262),
    [sym_yul_identifier] = STATE(275),
    [sym_yul_path] = STATE(280),
    [sym__yul_literal] = STATE(262),
    [sym_yul_string_literal] = STATE(262),
    [sym_yul_boolean] = STATE(262),
    [sym_yul_hex_string_literal] = STATE(262),
    [sym_yul_block] = STATE(262),
    [sym_yul_variable_declaration] = STATE(262),
    [sym_yul_assignment] = STATE(262),
    [sym_yul_function_call] = STATE(262),
    [sym_yul_if_statement] = STATE(262),
    [sym_yul_for_statement] = STATE(262),
    [sym_yul_switch_statement] = STATE(262),
    [sym_yul_function_definition] = STATE(262),
    [sym_yul_evm_builtin] = STATE(284),
    [sym_string] = STATE(290),
    [aux_sym_assembly_statement_repeat1] = STATE(262),
    [sym_identifier] = ACTIONS(892),
    [anon_sym_LBRACE] = ACTIONS(894),
    [anon_sym_RBRACE] = ACTIONS(942),
    [anon_sym_for] = ACTIONS(898),
    [sym_yul_leave] = ACTIONS(944),
    [anon_sym_break] = ACTIONS(902),
    [anon_sym_continue] = ACTIONS(904),
    [sym_yul_decimal_number] = ACTIONS(944),
    [sym_yul_hex_number] = ACTIONS(946),
    [anon_sym_true] = ACTIONS(908),
    [anon_sym_false] = ACTIONS(908),
    [anon_sym_hex] = ACTIONS(910),
    [anon_sym_DQUOTE] = ACTIONS(912),
    [anon_sym_SQUOTE] = ACTIONS(914),
    [anon_sym_let] = ACTIONS(916),
    [anon_sym_if] = ACTIONS(918),
    [anon_sym_switch] = ACTIONS(920),
    [anon_sym_function] = ACTIONS(922),
    [anon_sym_stop] = ACTIONS(924),
    [anon_sym_add] = ACTIONS(924),
    [anon_sym_sub] = ACTIONS(924),
    [anon_sym_mul] = ACTIONS(924),
    [anon_sym_div] = ACTIONS(924),
    [anon_sym_sdiv] = ACTIONS(924),
    [anon_sym_mod] = ACTIONS(924),
    [anon_sym_smod] = ACTIONS(924),
    [anon_sym_exp] = ACTIONS(924),
    [anon_sym_not] = ACTIONS(924),
    [anon_sym_lt] = ACTIONS(924),
    [anon_sym_gt] = ACTIONS(924),
    [anon_sym_slt] = ACTIONS(924),
    [anon_sym_sgt] = ACTIONS(924),
    [anon_sym_eq] = ACTIONS(924),
    [anon_sym_iszero] = ACTIONS(924),
    [anon_sym_and] = ACTIONS(924),
    [anon_sym_or] = ACTIONS(924),
    [anon_sym_xor] = ACTIONS(924),
    [anon_sym_byte] = ACTIONS(924),
    [anon_sym_shl] = ACTIONS(924),
    [anon_sym_shr] = ACTIONS(924),
    [anon_sym_sar] = ACTIONS(924),
    [anon_sym_addmod] = ACTIONS(924),
    [anon_sym_mulmod] = ACTIONS(924),
    [anon_sym_signextend] = ACTIONS(924),
    [anon_sym_keccak256] = ACTIONS(924),
    [anon_sym_pop] = ACTIONS(924),
    [anon_sym_mload] = ACTIONS(924),
    [anon_sym_mcopy] = ACTIONS(924),
    [anon_sym_tload] = ACTIONS(924),
    [anon_sym_tstore] = ACTIONS(924),
    [anon_sym_mstore] = ACTIONS(924),
    [anon_sym_mstore8] = ACTIONS(924),
    [anon_sym_sload] = ACTIONS(924),
    [anon_sym_sstore] = ACTIONS(924),
    [anon_sym_msize] = ACTIONS(924),
    [anon_sym_gas] = ACTIONS(924),
    [anon_sym_address] = ACTIONS(924),
    [anon_sym_balance] = ACTIONS(924),
    [anon_sym_selfbalance] = ACTIONS(924),
    [anon_sym_caller] = ACTIONS(924),
    [anon_sym_callvalue] = ACTIONS(924),
    [anon_sym_calldataload] = ACTIONS(924),
    [anon_sym_calldatasize] = ACTIONS(924),
    [anon_sym_calldatacopy] = ACTIONS(924),
    [anon_sym_extcodesize] = ACTIONS(924),
    [anon_sym_extcodecopy] = ACTIONS(924),
    [anon_sym_returndatasize] = ACTIONS(924),
    [anon_sym_returndatacopy] = ACTIONS(924),
    [anon_sym_extcodehash] = ACTIONS(924),
    [anon_sym_create] = ACTIONS(924),
    [anon_sym_create2] = ACTIONS(924),
    [anon_sym_call] = ACTIONS(924),
    [anon_sym_callcode] = ACTIONS(924),
    [anon_sym_delegatecall] = ACTIONS(924),
    [anon_sym_staticcall] = ACTIONS(924),
    [anon_sym_return] = ACTIONS(924),
    [anon_sym_revert] = ACTIONS(924),
    [anon_sym_selfdestruct] = ACTIONS(924),
    [anon_sym_invalid] = ACTIONS(924),
    [anon_sym_log0] = ACTIONS(924),
    [anon_sym_log1] = ACTIONS(924),
    [anon_sym_log2] = ACTIONS(924),
    [anon_sym_log3] = ACTIONS(924),
    [anon_sym_log4] = ACTIONS(924),
    [anon_sym_chainid] = ACTIONS(924),
    [anon_sym_origin] = ACTIONS(924),
    [anon_sym_gasprice] = ACTIONS(924),
    [anon_sym_blockhash] = ACTIONS(924),
    [anon_sym_blobhash] = ACTIONS(924),
    [anon_sym_basefee] = ACTIONS(924),
    [anon_sym_blobfee] = ACTIONS(924),
    [anon_sym_coinbase] = ACTIONS(924),
    [anon_sym_timestamp] = ACTIONS(924),
    [anon_sym_number] = ACTIONS(924),
    [anon_sym_difficulty] = ACTIONS(924),
    [anon_sym_gaslimit] = ACTIONS(924),
    [anon_sym_prevrandao] = ACTIONS(924),
    [anon_sym_blobbasefee] = ACTIONS(924),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(269)] = {
    [sym__yul_statement] = STATE(269),
    [sym_yul_label] = STATE(269),
    [sym_yul_break] = STATE(269),
    [sym_yul_continue] = STATE(269),
    [sym_yul_identifier] = STATE(275),
    [sym_yul_path] = STATE(280),
    [sym__yul_literal] = STATE(269),
    [sym_yul_string_literal] = STATE(269),
    [sym_yul_boolean] = STATE(269),
    [sym_yul_hex_string_literal] = STATE(269),
    [sym_yul_block] = STATE(269),
    [sym_yul_variable_declaration] = STATE(269),
    [sym_yul_assignment] = STATE(269),
    [sym_yul_function_call] = STATE(269),
    [sym_yul_if_statement] = STATE(269),
    [sym_yul_for_statement] = STATE(269),
    [sym_yul_switch_statement] = STATE(269),
    [sym_yul_function_definition] = STATE(269),
    [sym_yul_evm_builtin] = STATE(284),
    [sym_string] = STATE(290),
    [aux_sym_assembly_statement_repeat1] = STATE(269),
    [sym_identifier] = ACTIONS(948),
    [anon_sym_LBRACE] = ACTIONS(951),
    [anon_sym_RBRACE] = ACTIONS(954),
    [anon_sym_for] = ACTIONS(956),
    [sym_yul_leave] = ACTIONS(959),
    [anon_sym_break] = ACTIONS(962),
    [anon_sym_continue] = ACTIONS(965),
    [sym_yul_decimal_number] = ACTIONS(959),
    [sym_yul_hex_number] = ACTIONS(968),
    [anon_sym_true] = ACTIONS(971),
    [anon_sym_false] = ACTIONS(971),
    [anon_sym_hex] = ACTIONS(974),
    [anon_sym_DQUOTE] = ACTIONS(977),
    [anon_sym_SQUOTE] = ACTIONS(980),
    [anon_sym_let] = ACTIONS(983),
    [anon_sym_if] = ACTIONS(986),
    [anon_sym_switch] = ACTIONS(989),
    [anon_sym_function] = ACTIONS(992),
    [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_mcopy] = ACTIONS(995),
    [anon_sym_tload] = ACTIONS(995),
    [anon_sym_tstore] = 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_blobhash] = ACTIONS(995),
    [anon_sym_basefee] = ACTIONS(995),
    [anon_sym_blobfee] = 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_prevrandao] = ACTIONS(995),
    [anon_sym_blobbasefee] = ACTIONS(995),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(270)] = {
    [sym__yul_statement] = STATE(266),
    [sym_yul_label] = STATE(266),
    [sym_yul_break] = STATE(266),
    [sym_yul_continue] = STATE(266),
    [sym_yul_identifier] = STATE(275),
    [sym_yul_path] = STATE(280),
    [sym__yul_literal] = STATE(266),
    [sym_yul_string_literal] = STATE(266),
    [sym_yul_boolean] = STATE(266),
    [sym_yul_hex_string_literal] = STATE(266),
    [sym_yul_block] = STATE(266),
    [sym_yul_variable_declaration] = STATE(266),
    [sym_yul_assignment] = STATE(266),
    [sym_yul_function_call] = STATE(266),
    [sym_yul_if_statement] = STATE(266),
    [sym_yul_for_statement] = STATE(266),
    [sym_yul_switch_statement] = STATE(266),
    [sym_yul_function_definition] = STATE(266),
    [sym_yul_evm_builtin] = STATE(284),
    [sym_string] = STATE(290),
    [aux_sym_assembly_statement_repeat1] = STATE(266),
    [sym_identifier] = ACTIONS(892),
    [anon_sym_LBRACE] = ACTIONS(894),
    [anon_sym_RBRACE] = ACTIONS(940),
    [anon_sym_for] = ACTIONS(898),
    [sym_yul_leave] = ACTIONS(998),
    [anon_sym_break] = ACTIONS(902),
    [anon_sym_continue] = ACTIONS(904),
    [sym_yul_decimal_number] = ACTIONS(998),
    [sym_yul_hex_number] = ACTIONS(1000),
    [anon_sym_true] = ACTIONS(908),
    [anon_sym_false] = ACTIONS(908),
    [anon_sym_hex] = ACTIONS(910),
    [anon_sym_DQUOTE] = ACTIONS(912),
    [anon_sym_SQUOTE] = ACTIONS(914),
    [anon_sym_let] = ACTIONS(916),
    [anon_sym_if] = ACTIONS(918),
    [anon_sym_switch] = ACTIONS(920),
    [anon_sym_function] = ACTIONS(922),
    [anon_sym_stop] = ACTIONS(924),
    [anon_sym_add] = ACTIONS(924),
    [anon_sym_sub] = ACTIONS(924),
    [anon_sym_mul] = ACTIONS(924),
    [anon_sym_div] = ACTIONS(924),
    [anon_sym_sdiv] = ACTIONS(924),
    [anon_sym_mod] = ACTIONS(924),
    [anon_sym_smod] = ACTIONS(924),
    [anon_sym_exp] = ACTIONS(924),
    [anon_sym_not] = ACTIONS(924),
    [anon_sym_lt] = ACTIONS(924),
    [anon_sym_gt] = ACTIONS(924),
    [anon_sym_slt] = ACTIONS(924),
    [anon_sym_sgt] = ACTIONS(924),
    [anon_sym_eq] = ACTIONS(924),
    [anon_sym_iszero] = ACTIONS(924),
    [anon_sym_and] = ACTIONS(924),
    [anon_sym_or] = ACTIONS(924),
    [anon_sym_xor] = ACTIONS(924),
    [anon_sym_byte] = ACTIONS(924),
    [anon_sym_shl] = ACTIONS(924),
    [anon_sym_shr] = ACTIONS(924),
    [anon_sym_sar] = ACTIONS(924),
    [anon_sym_addmod] = ACTIONS(924),
    [anon_sym_mulmod] = ACTIONS(924),
    [anon_sym_signextend] = ACTIONS(924),
    [anon_sym_keccak256] = ACTIONS(924),
    [anon_sym_pop] = ACTIONS(924),
    [anon_sym_mload] = ACTIONS(924),
    [anon_sym_mcopy] = ACTIONS(924),
    [anon_sym_tload] = ACTIONS(924),
    [anon_sym_tstore] = ACTIONS(924),
    [anon_sym_mstore] = ACTIONS(924),
    [anon_sym_mstore8] = ACTIONS(924),
    [anon_sym_sload] = ACTIONS(924),
    [anon_sym_sstore] = ACTIONS(924),
    [anon_sym_msize] = ACTIONS(924),
    [anon_sym_gas] = ACTIONS(924),
    [anon_sym_address] = ACTIONS(924),
    [anon_sym_balance] = ACTIONS(924),
    [anon_sym_selfbalance] = ACTIONS(924),
    [anon_sym_caller] = ACTIONS(924),
    [anon_sym_callvalue] = ACTIONS(924),
    [anon_sym_calldataload] = ACTIONS(924),
    [anon_sym_calldatasize] = ACTIONS(924),
    [anon_sym_calldatacopy] = ACTIONS(924),
    [anon_sym_extcodesize] = ACTIONS(924),
    [anon_sym_extcodecopy] = ACTIONS(924),
    [anon_sym_returndatasize] = ACTIONS(924),
    [anon_sym_returndatacopy] = ACTIONS(924),
    [anon_sym_extcodehash] = ACTIONS(924),
    [anon_sym_create] = ACTIONS(924),
    [anon_sym_create2] = ACTIONS(924),
    [anon_sym_call] = ACTIONS(924),
    [anon_sym_callcode] = ACTIONS(924),
    [anon_sym_delegatecall] = ACTIONS(924),
    [anon_sym_staticcall] = ACTIONS(924),
    [anon_sym_return] = ACTIONS(924),
    [anon_sym_revert] = ACTIONS(924),
    [anon_sym_selfdestruct] = ACTIONS(924),
    [anon_sym_invalid] = ACTIONS(924),
    [anon_sym_log0] = ACTIONS(924),
    [anon_sym_log1] = ACTIONS(924),
    [anon_sym_log2] = ACTIONS(924),
    [anon_sym_log3] = ACTIONS(924),
    [anon_sym_log4] = ACTIONS(924),
    [anon_sym_chainid] = ACTIONS(924),
    [anon_sym_origin] = ACTIONS(924),
    [anon_sym_gasprice] = ACTIONS(924),
    [anon_sym_blockhash] = ACTIONS(924),
    [anon_sym_blobhash] = ACTIONS(924),
    [anon_sym_basefee] = ACTIONS(924),
    [anon_sym_blobfee] = ACTIONS(924),
    [anon_sym_coinbase] = ACTIONS(924),
    [anon_sym_timestamp] = ACTIONS(924),
    [anon_sym_number] = ACTIONS(924),
    [anon_sym_difficulty] = ACTIONS(924),
    [anon_sym_gaslimit] = ACTIONS(924),
    [anon_sym_prevrandao] = ACTIONS(924),
    [anon_sym_blobbasefee] = ACTIONS(924),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(271)] = {
    [sym_user_defined_type] = STATE(786),
    [sym__identifier_path] = STATE(367),
    [sym__mapping_key] = STATE(786),
    [sym_primitive_type] = STATE(786),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [sym_identifier] = ACTIONS(7),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(37),
    [anon_sym_var] = ACTIONS(35),
    [anon_sym_bool] = ACTIONS(35),
    [anon_sym_string] = ACTIONS(35),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(35),
    [anon_sym_int40] = ACTIONS(35),
    [anon_sym_int48] = ACTIONS(35),
    [anon_sym_int56] = ACTIONS(35),
    [anon_sym_int64] = ACTIONS(35),
    [anon_sym_int72] = ACTIONS(35),
    [anon_sym_int80] = ACTIONS(35),
    [anon_sym_int88] = ACTIONS(35),
    [anon_sym_int96] = ACTIONS(35),
    [anon_sym_int104] = ACTIONS(35),
    [anon_sym_int112] = ACTIONS(35),
    [anon_sym_int120] = ACTIONS(35),
    [anon_sym_int128] = ACTIONS(35),
    [anon_sym_int136] = ACTIONS(35),
    [anon_sym_int144] = ACTIONS(35),
    [anon_sym_int152] = ACTIONS(35),
    [anon_sym_int160] = ACTIONS(35),
    [anon_sym_int168] = ACTIONS(35),
    [anon_sym_int176] = ACTIONS(35),
    [anon_sym_int184] = ACTIONS(35),
    [anon_sym_int192] = ACTIONS(35),
    [anon_sym_int200] = ACTIONS(35),
    [anon_sym_int208] = ACTIONS(35),
    [anon_sym_int216] = ACTIONS(35),
    [anon_sym_int224] = ACTIONS(35),
    [anon_sym_int232] = ACTIONS(35),
    [anon_sym_int240] = ACTIONS(35),
    [anon_sym_int248] = ACTIONS(35),
    [anon_sym_int256] = ACTIONS(35),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(35),
    [anon_sym_uint40] = ACTIONS(35),
    [anon_sym_uint48] = ACTIONS(35),
    [anon_sym_uint56] = ACTIONS(35),
    [anon_sym_uint64] = ACTIONS(35),
    [anon_sym_uint72] = ACTIONS(35),
    [anon_sym_uint80] = ACTIONS(35),
    [anon_sym_uint88] = ACTIONS(35),
    [anon_sym_uint96] = ACTIONS(35),
    [anon_sym_uint104] = ACTIONS(35),
    [anon_sym_uint112] = ACTIONS(35),
    [anon_sym_uint120] = ACTIONS(35),
    [anon_sym_uint128] = ACTIONS(35),
    [anon_sym_uint136] = ACTIONS(35),
    [anon_sym_uint144] = ACTIONS(35),
    [anon_sym_uint152] = ACTIONS(35),
    [anon_sym_uint160] = ACTIONS(35),
    [anon_sym_uint168] = ACTIONS(35),
    [anon_sym_uint176] = ACTIONS(35),
    [anon_sym_uint184] = ACTIONS(35),
    [anon_sym_uint192] = ACTIONS(35),
    [anon_sym_uint200] = ACTIONS(35),
    [anon_sym_uint208] = ACTIONS(35),
    [anon_sym_uint216] = ACTIONS(35),
    [anon_sym_uint224] = ACTIONS(35),
    [anon_sym_uint232] = ACTIONS(35),
    [anon_sym_uint240] = ACTIONS(35),
    [anon_sym_uint248] = ACTIONS(35),
    [anon_sym_uint256] = ACTIONS(35),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(35),
    [anon_sym_bytes5] = ACTIONS(35),
    [anon_sym_bytes6] = ACTIONS(35),
    [anon_sym_bytes7] = ACTIONS(35),
    [anon_sym_bytes8] = ACTIONS(35),
    [anon_sym_bytes9] = ACTIONS(35),
    [anon_sym_bytes10] = ACTIONS(35),
    [anon_sym_bytes11] = ACTIONS(35),
    [anon_sym_bytes12] = ACTIONS(35),
    [anon_sym_bytes13] = ACTIONS(35),
    [anon_sym_bytes14] = ACTIONS(35),
    [anon_sym_bytes15] = ACTIONS(35),
    [anon_sym_bytes16] = ACTIONS(35),
    [anon_sym_bytes17] = ACTIONS(35),
    [anon_sym_bytes18] = ACTIONS(35),
    [anon_sym_bytes19] = ACTIONS(35),
    [anon_sym_bytes20] = ACTIONS(35),
    [anon_sym_bytes21] = ACTIONS(35),
    [anon_sym_bytes22] = ACTIONS(35),
    [anon_sym_bytes23] = ACTIONS(35),
    [anon_sym_bytes24] = ACTIONS(35),
    [anon_sym_bytes25] = ACTIONS(35),
    [anon_sym_bytes26] = ACTIONS(35),
    [anon_sym_bytes27] = ACTIONS(35),
    [anon_sym_bytes28] = ACTIONS(35),
    [anon_sym_bytes29] = ACTIONS(35),
    [anon_sym_bytes30] = ACTIONS(35),
    [anon_sym_bytes31] = ACTIONS(35),
    [anon_sym_bytes32] = ACTIONS(35),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(35),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(35),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(272)] = {
    [sym_primitive_type] = STATE(815),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(1002),
    [anon_sym_var] = ACTIONS(1004),
    [anon_sym_bool] = ACTIONS(1004),
    [anon_sym_string] = ACTIONS(1004),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(1004),
    [anon_sym_int40] = ACTIONS(1004),
    [anon_sym_int48] = ACTIONS(1004),
    [anon_sym_int56] = ACTIONS(1004),
    [anon_sym_int64] = ACTIONS(1004),
    [anon_sym_int72] = ACTIONS(1004),
    [anon_sym_int80] = ACTIONS(1004),
    [anon_sym_int88] = ACTIONS(1004),
    [anon_sym_int96] = ACTIONS(1004),
    [anon_sym_int104] = ACTIONS(1004),
    [anon_sym_int112] = ACTIONS(1004),
    [anon_sym_int120] = ACTIONS(1004),
    [anon_sym_int128] = ACTIONS(1004),
    [anon_sym_int136] = ACTIONS(1004),
    [anon_sym_int144] = ACTIONS(1004),
    [anon_sym_int152] = ACTIONS(1004),
    [anon_sym_int160] = ACTIONS(1004),
    [anon_sym_int168] = ACTIONS(1004),
    [anon_sym_int176] = ACTIONS(1004),
    [anon_sym_int184] = ACTIONS(1004),
    [anon_sym_int192] = ACTIONS(1004),
    [anon_sym_int200] = ACTIONS(1004),
    [anon_sym_int208] = ACTIONS(1004),
    [anon_sym_int216] = ACTIONS(1004),
    [anon_sym_int224] = ACTIONS(1004),
    [anon_sym_int232] = ACTIONS(1004),
    [anon_sym_int240] = ACTIONS(1004),
    [anon_sym_int248] = ACTIONS(1004),
    [anon_sym_int256] = ACTIONS(1004),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(1004),
    [anon_sym_uint40] = ACTIONS(1004),
    [anon_sym_uint48] = ACTIONS(1004),
    [anon_sym_uint56] = ACTIONS(1004),
    [anon_sym_uint64] = ACTIONS(1004),
    [anon_sym_uint72] = ACTIONS(1004),
    [anon_sym_uint80] = ACTIONS(1004),
    [anon_sym_uint88] = ACTIONS(1004),
    [anon_sym_uint96] = ACTIONS(1004),
    [anon_sym_uint104] = ACTIONS(1004),
    [anon_sym_uint112] = ACTIONS(1004),
    [anon_sym_uint120] = ACTIONS(1004),
    [anon_sym_uint128] = ACTIONS(1004),
    [anon_sym_uint136] = ACTIONS(1004),
    [anon_sym_uint144] = ACTIONS(1004),
    [anon_sym_uint152] = ACTIONS(1004),
    [anon_sym_uint160] = ACTIONS(1004),
    [anon_sym_uint168] = ACTIONS(1004),
    [anon_sym_uint176] = ACTIONS(1004),
    [anon_sym_uint184] = ACTIONS(1004),
    [anon_sym_uint192] = ACTIONS(1004),
    [anon_sym_uint200] = ACTIONS(1004),
    [anon_sym_uint208] = ACTIONS(1004),
    [anon_sym_uint216] = ACTIONS(1004),
    [anon_sym_uint224] = ACTIONS(1004),
    [anon_sym_uint232] = ACTIONS(1004),
    [anon_sym_uint240] = ACTIONS(1004),
    [anon_sym_uint248] = ACTIONS(1004),
    [anon_sym_uint256] = ACTIONS(1004),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(1004),
    [anon_sym_bytes5] = ACTIONS(1004),
    [anon_sym_bytes6] = ACTIONS(1004),
    [anon_sym_bytes7] = ACTIONS(1004),
    [anon_sym_bytes8] = ACTIONS(1004),
    [anon_sym_bytes9] = ACTIONS(1004),
    [anon_sym_bytes10] = ACTIONS(1004),
    [anon_sym_bytes11] = ACTIONS(1004),
    [anon_sym_bytes12] = ACTIONS(1004),
    [anon_sym_bytes13] = ACTIONS(1004),
    [anon_sym_bytes14] = ACTIONS(1004),
    [anon_sym_bytes15] = ACTIONS(1004),
    [anon_sym_bytes16] = ACTIONS(1004),
    [anon_sym_bytes17] = ACTIONS(1004),
    [anon_sym_bytes18] = ACTIONS(1004),
    [anon_sym_bytes19] = ACTIONS(1004),
    [anon_sym_bytes20] = ACTIONS(1004),
    [anon_sym_bytes21] = ACTIONS(1004),
    [anon_sym_bytes22] = ACTIONS(1004),
    [anon_sym_bytes23] = ACTIONS(1004),
    [anon_sym_bytes24] = ACTIONS(1004),
    [anon_sym_bytes25] = ACTIONS(1004),
    [anon_sym_bytes26] = ACTIONS(1004),
    [anon_sym_bytes27] = ACTIONS(1004),
    [anon_sym_bytes28] = ACTIONS(1004),
    [anon_sym_bytes29] = ACTIONS(1004),
    [anon_sym_bytes30] = ACTIONS(1004),
    [anon_sym_bytes31] = ACTIONS(1004),
    [anon_sym_bytes32] = ACTIONS(1004),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(1004),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(1004),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(273)] = {
    [sym_primitive_type] = STATE(818),
    [sym__int] = STATE(370),
    [sym__uint] = STATE(370),
    [sym__bytes] = STATE(370),
    [sym__fixed] = STATE(370),
    [sym__ufixed] = STATE(370),
    [anon_sym_byte] = ACTIONS(35),
    [anon_sym_address] = ACTIONS(1002),
    [anon_sym_var] = ACTIONS(1004),
    [anon_sym_bool] = ACTIONS(1004),
    [anon_sym_string] = ACTIONS(1004),
    [anon_sym_int] = ACTIONS(35),
    [anon_sym_int8] = ACTIONS(35),
    [anon_sym_int16] = ACTIONS(35),
    [anon_sym_int24] = ACTIONS(35),
    [anon_sym_int32] = ACTIONS(1004),
    [anon_sym_int40] = ACTIONS(1004),
    [anon_sym_int48] = ACTIONS(1004),
    [anon_sym_int56] = ACTIONS(1004),
    [anon_sym_int64] = ACTIONS(1004),
    [anon_sym_int72] = ACTIONS(1004),
    [anon_sym_int80] = ACTIONS(1004),
    [anon_sym_int88] = ACTIONS(1004),
    [anon_sym_int96] = ACTIONS(1004),
    [anon_sym_int104] = ACTIONS(1004),
    [anon_sym_int112] = ACTIONS(1004),
    [anon_sym_int120] = ACTIONS(1004),
    [anon_sym_int128] = ACTIONS(1004),
    [anon_sym_int136] = ACTIONS(1004),
    [anon_sym_int144] = ACTIONS(1004),
    [anon_sym_int152] = ACTIONS(1004),
    [anon_sym_int160] = ACTIONS(1004),
    [anon_sym_int168] = ACTIONS(1004),
    [anon_sym_int176] = ACTIONS(1004),
    [anon_sym_int184] = ACTIONS(1004),
    [anon_sym_int192] = ACTIONS(1004),
    [anon_sym_int200] = ACTIONS(1004),
    [anon_sym_int208] = ACTIONS(1004),
    [anon_sym_int216] = ACTIONS(1004),
    [anon_sym_int224] = ACTIONS(1004),
    [anon_sym_int232] = ACTIONS(1004),
    [anon_sym_int240] = ACTIONS(1004),
    [anon_sym_int248] = ACTIONS(1004),
    [anon_sym_int256] = ACTIONS(1004),
    [anon_sym_uint] = ACTIONS(35),
    [anon_sym_uint8] = ACTIONS(35),
    [anon_sym_uint16] = ACTIONS(35),
    [anon_sym_uint24] = ACTIONS(35),
    [anon_sym_uint32] = ACTIONS(1004),
    [anon_sym_uint40] = ACTIONS(1004),
    [anon_sym_uint48] = ACTIONS(1004),
    [anon_sym_uint56] = ACTIONS(1004),
    [anon_sym_uint64] = ACTIONS(1004),
    [anon_sym_uint72] = ACTIONS(1004),
    [anon_sym_uint80] = ACTIONS(1004),
    [anon_sym_uint88] = ACTIONS(1004),
    [anon_sym_uint96] = ACTIONS(1004),
    [anon_sym_uint104] = ACTIONS(1004),
    [anon_sym_uint112] = ACTIONS(1004),
    [anon_sym_uint120] = ACTIONS(1004),
    [anon_sym_uint128] = ACTIONS(1004),
    [anon_sym_uint136] = ACTIONS(1004),
    [anon_sym_uint144] = ACTIONS(1004),
    [anon_sym_uint152] = ACTIONS(1004),
    [anon_sym_uint160] = ACTIONS(1004),
    [anon_sym_uint168] = ACTIONS(1004),
    [anon_sym_uint176] = ACTIONS(1004),
    [anon_sym_uint184] = ACTIONS(1004),
    [anon_sym_uint192] = ACTIONS(1004),
    [anon_sym_uint200] = ACTIONS(1004),
    [anon_sym_uint208] = ACTIONS(1004),
    [anon_sym_uint216] = ACTIONS(1004),
    [anon_sym_uint224] = ACTIONS(1004),
    [anon_sym_uint232] = ACTIONS(1004),
    [anon_sym_uint240] = ACTIONS(1004),
    [anon_sym_uint248] = ACTIONS(1004),
    [anon_sym_uint256] = ACTIONS(1004),
    [anon_sym_bytes] = ACTIONS(35),
    [anon_sym_bytes1] = ACTIONS(35),
    [anon_sym_bytes2] = ACTIONS(35),
    [anon_sym_bytes3] = ACTIONS(35),
    [anon_sym_bytes4] = ACTIONS(1004),
    [anon_sym_bytes5] = ACTIONS(1004),
    [anon_sym_bytes6] = ACTIONS(1004),
    [anon_sym_bytes7] = ACTIONS(1004),
    [anon_sym_bytes8] = ACTIONS(1004),
    [anon_sym_bytes9] = ACTIONS(1004),
    [anon_sym_bytes10] = ACTIONS(1004),
    [anon_sym_bytes11] = ACTIONS(1004),
    [anon_sym_bytes12] = ACTIONS(1004),
    [anon_sym_bytes13] = ACTIONS(1004),
    [anon_sym_bytes14] = ACTIONS(1004),
    [anon_sym_bytes15] = ACTIONS(1004),
    [anon_sym_bytes16] = ACTIONS(1004),
    [anon_sym_bytes17] = ACTIONS(1004),
    [anon_sym_bytes18] = ACTIONS(1004),
    [anon_sym_bytes19] = ACTIONS(1004),
    [anon_sym_bytes20] = ACTIONS(1004),
    [anon_sym_bytes21] = ACTIONS(1004),
    [anon_sym_bytes22] = ACTIONS(1004),
    [anon_sym_bytes23] = ACTIONS(1004),
    [anon_sym_bytes24] = ACTIONS(1004),
    [anon_sym_bytes25] = ACTIONS(1004),
    [anon_sym_bytes26] = ACTIONS(1004),
    [anon_sym_bytes27] = ACTIONS(1004),
    [anon_sym_bytes28] = ACTIONS(1004),
    [anon_sym_bytes29] = ACTIONS(1004),
    [anon_sym_bytes30] = ACTIONS(1004),
    [anon_sym_bytes31] = ACTIONS(1004),
    [anon_sym_bytes32] = ACTIONS(1004),
    [anon_sym_fixed] = ACTIONS(35),
    [aux_sym__fixed_token1] = ACTIONS(1004),
    [anon_sym_ufixed] = ACTIONS(35),
    [aux_sym__ufixed_token1] = ACTIONS(1004),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(274)] = {
    [sym_identifier] = ACTIONS(1006),
    [anon_sym_RBRACE] = ACTIONS(1008),
    [anon_sym_function] = ACTIONS(1006),
    [anon_sym_byte] = ACTIONS(1006),
    [anon_sym_address] = ACTIONS(1006),
    [anon_sym_var] = ACTIONS(1006),
    [anon_sym_mapping] = ACTIONS(1006),
    [anon_sym_bool] = ACTIONS(1006),
    [anon_sym_string] = ACTIONS(1006),
    [anon_sym_int] = ACTIONS(1006),
    [anon_sym_int8] = ACTIONS(1006),
    [anon_sym_int16] = ACTIONS(1006),
    [anon_sym_int24] = ACTIONS(1006),
    [anon_sym_int32] = ACTIONS(1006),
    [anon_sym_int40] = ACTIONS(1006),
    [anon_sym_int48] = ACTIONS(1006),
    [anon_sym_int56] = ACTIONS(1006),
    [anon_sym_int64] = ACTIONS(1006),
    [anon_sym_int72] = ACTIONS(1006),
    [anon_sym_int80] = ACTIONS(1006),
    [anon_sym_int88] = ACTIONS(1006),
    [anon_sym_int96] = ACTIONS(1006),
    [anon_sym_int104] = ACTIONS(1006),
    [anon_sym_int112] = ACTIONS(1006),
    [anon_sym_int120] = ACTIONS(1006),
    [anon_sym_int128] = ACTIONS(1006),
    [anon_sym_int136] = ACTIONS(1006),
    [anon_sym_int144] = ACTIONS(1006),
    [anon_sym_int152] = ACTIONS(1006),
    [anon_sym_int160] = ACTIONS(1006),
    [anon_sym_int168] = ACTIONS(1006),
    [anon_sym_int176] = ACTIONS(1006),
    [anon_sym_int184] = ACTIONS(1006),
    [anon_sym_int192] = ACTIONS(1006),
    [anon_sym_int200] = ACTIONS(1006),
    [anon_sym_int208] = ACTIONS(1006),
    [anon_sym_int216] = ACTIONS(1006),
    [anon_sym_int224] = ACTIONS(1006),
    [anon_sym_int232] = ACTIONS(1006),
    [anon_sym_int240] = ACTIONS(1006),
    [anon_sym_int248] = ACTIONS(1006),
    [anon_sym_int256] = ACTIONS(1006),
    [anon_sym_uint] = ACTIONS(1006),
    [anon_sym_uint8] = ACTIONS(1006),
    [anon_sym_uint16] = ACTIONS(1006),
    [anon_sym_uint24] = ACTIONS(1006),
    [anon_sym_uint32] = ACTIONS(1006),
    [anon_sym_uint40] = ACTIONS(1006),
    [anon_sym_uint48] = ACTIONS(1006),
    [anon_sym_uint56] = ACTIONS(1006),
    [anon_sym_uint64] = ACTIONS(1006),
    [anon_sym_uint72] = ACTIONS(1006),
    [anon_sym_uint80] = ACTIONS(1006),
    [anon_sym_uint88] = ACTIONS(1006),
    [anon_sym_uint96] = ACTIONS(1006),
    [anon_sym_uint104] = ACTIONS(1006),
    [anon_sym_uint112] = ACTIONS(1006),
    [anon_sym_uint120] = ACTIONS(1006),
    [anon_sym_uint128] = ACTIONS(1006),
    [anon_sym_uint136] = ACTIONS(1006),
    [anon_sym_uint144] = ACTIONS(1006),
    [anon_sym_uint152] = ACTIONS(1006),
    [anon_sym_uint160] = ACTIONS(1006),
    [anon_sym_uint168] = ACTIONS(1006),
    [anon_sym_uint176] = ACTIONS(1006),
    [anon_sym_uint184] = ACTIONS(1006),
    [anon_sym_uint192] = ACTIONS(1006),
    [anon_sym_uint200] = ACTIONS(1006),
    [anon_sym_uint208] = ACTIONS(1006),
    [anon_sym_uint216] = ACTIONS(1006),
    [anon_sym_uint224] = ACTIONS(1006),
    [anon_sym_uint232] = ACTIONS(1006),
    [anon_sym_uint240] = ACTIONS(1006),
    [anon_sym_uint248] = ACTIONS(1006),
    [anon_sym_uint256] = ACTIONS(1006),
    [anon_sym_bytes] = ACTIONS(1006),
    [anon_sym_bytes1] = ACTIONS(1006),
    [anon_sym_bytes2] = ACTIONS(1006),
    [anon_sym_bytes3] = ACTIONS(1006),
    [anon_sym_bytes4] = ACTIONS(1006),
    [anon_sym_bytes5] = ACTIONS(1006),
    [anon_sym_bytes6] = ACTIONS(1006),
    [anon_sym_bytes7] = ACTIONS(1006),
    [anon_sym_bytes8] = ACTIONS(1006),
    [anon_sym_bytes9] = ACTIONS(1006),
    [anon_sym_bytes10] = ACTIONS(1006),
    [anon_sym_bytes11] = ACTIONS(1006),
    [anon_sym_bytes12] = ACTIONS(1006),
    [anon_sym_bytes13] = ACTIONS(1006),
    [anon_sym_bytes14] = ACTIONS(1006),
    [anon_sym_bytes15] = ACTIONS(1006),
    [anon_sym_bytes16] = ACTIONS(1006),
    [anon_sym_bytes17] = ACTIONS(1006),
    [anon_sym_bytes18] = ACTIONS(1006),
    [anon_sym_bytes19] = ACTIONS(1006),
    [anon_sym_bytes20] = ACTIONS(1006),
    [anon_sym_bytes21] = ACTIONS(1006),
    [anon_sym_bytes22] = ACTIONS(1006),
    [anon_sym_bytes23] = ACTIONS(1006),
    [anon_sym_bytes24] = ACTIONS(1006),
    [anon_sym_bytes25] = ACTIONS(1006),
    [anon_sym_bytes26] = ACTIONS(1006),
    [anon_sym_bytes27] = ACTIONS(1006),
    [anon_sym_bytes28] = ACTIONS(1006),
    [anon_sym_bytes29] = ACTIONS(1006),
    [anon_sym_bytes30] = ACTIONS(1006),
    [anon_sym_bytes31] = ACTIONS(1006),
    [anon_sym_bytes32] = ACTIONS(1006),
    [anon_sym_fixed] = ACTIONS(1006),
    [aux_sym__fixed_token1] = ACTIONS(1006),
    [anon_sym_ufixed] = ACTIONS(1006),
    [aux_sym__ufixed_token1] = ACTIONS(1006),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(275)] = {
    [aux_sym_yul_path_repeat1] = STATE(277),
    [sym_identifier] = ACTIONS(1010),
    [anon_sym_LBRACE] = ACTIONS(1012),
    [anon_sym_COMMA] = ACTIONS(1012),
    [anon_sym_RBRACE] = ACTIONS(1012),
    [anon_sym_LPAREN] = ACTIONS(1014),
    [anon_sym_RPAREN] = ACTIONS(1012),
    [anon_sym_for] = ACTIONS(1010),
    [anon_sym_COLON] = ACTIONS(1010),
    [sym_yul_leave] = ACTIONS(1010),
    [anon_sym_break] = ACTIONS(1010),
    [anon_sym_continue] = ACTIONS(1010),
    [anon_sym_DOT] = ACTIONS(1016),
    [sym_yul_decimal_number] = ACTIONS(1010),
    [sym_yul_hex_number] = ACTIONS(1012),
    [anon_sym_true] = ACTIONS(1010),
    [anon_sym_false] = ACTIONS(1010),
    [anon_sym_hex] = ACTIONS(1010),
    [anon_sym_DQUOTE] = ACTIONS(1012),
    [anon_sym_SQUOTE] = ACTIONS(1012),
    [anon_sym_let] = ACTIONS(1010),
    [anon_sym_COLON_EQ] = ACTIONS(1012),
    [anon_sym_if] = ACTIONS(1010),
    [anon_sym_switch] = ACTIONS(1010),
    [anon_sym_default] = ACTIONS(1010),
    [anon_sym_case] = ACTIONS(1010),
    [anon_sym_function] = ACTIONS(1010),
    [anon_sym_stop] = ACTIONS(1010),
    [anon_sym_add] = ACTIONS(1010),
    [anon_sym_sub] = ACTIONS(1010),
    [anon_sym_mul] = ACTIONS(1010),
    [anon_sym_div] = ACTIONS(1010),
    [anon_sym_sdiv] = ACTIONS(1010),
    [anon_sym_mod] = ACTIONS(1010),
    [anon_sym_smod] = ACTIONS(1010),
    [anon_sym_exp] = ACTIONS(1010),
    [anon_sym_not] = ACTIONS(1010),
    [anon_sym_lt] = ACTIONS(1010),
    [anon_sym_gt] = ACTIONS(1010),
    [anon_sym_slt] = ACTIONS(1010),
    [anon_sym_sgt] = ACTIONS(1010),
    [anon_sym_eq] = ACTIONS(1010),
    [anon_sym_iszero] = ACTIONS(1010),
    [anon_sym_and] = ACTIONS(1010),
    [anon_sym_or] = ACTIONS(1010),
    [anon_sym_xor] = ACTIONS(1010),
    [anon_sym_byte] = ACTIONS(1010),
    [anon_sym_shl] = ACTIONS(1010),
    [anon_sym_shr] = ACTIONS(1010),
    [anon_sym_sar] = ACTIONS(1010),
    [anon_sym_addmod] = ACTIONS(1010),
    [anon_sym_mulmod] = ACTIONS(1010),
    [anon_sym_signextend] = ACTIONS(1010),
    [anon_sym_keccak256] = ACTIONS(1010),
    [anon_sym_pop] = ACTIONS(1010),
    [anon_sym_mload] = ACTIONS(1010),
    [anon_sym_mcopy] = ACTIONS(1010),
    [anon_sym_tload] = ACTIONS(1010),
    [anon_sym_tstore] = ACTIONS(1010),
    [anon_sym_mstore] = ACTIONS(1010),
    [anon_sym_mstore8] = ACTIONS(1010),
    [anon_sym_sload] = ACTIONS(1010),
    [anon_sym_sstore] = ACTIONS(1010),
    [anon_sym_msize] = ACTIONS(1010),
    [anon_sym_gas] = ACTIONS(1010),
    [anon_sym_address] = ACTIONS(1010),
    [anon_sym_balance] = ACTIONS(1010),
    [anon_sym_selfbalance] = ACTIONS(1010),
    [anon_sym_caller] = ACTIONS(1010),
    [anon_sym_callvalue] = ACTIONS(1010),
    [anon_sym_calldataload] = ACTIONS(1010),
    [anon_sym_calldatasize] = ACTIONS(1010),
    [anon_sym_calldatacopy] = ACTIONS(1010),
    [anon_sym_extcodesize] = ACTIONS(1010),
    [anon_sym_extcodecopy] = ACTIONS(1010),
    [anon_sym_returndatasize] = ACTIONS(1010),
    [anon_sym_returndatacopy] = ACTIONS(1010),
    [anon_sym_extcodehash] = ACTIONS(1010),
    [anon_sym_create] = ACTIONS(1010),
    [anon_sym_create2] = ACTIONS(1010),
    [anon_sym_call] = ACTIONS(1010),
    [anon_sym_callcode] = ACTIONS(1010),
    [anon_sym_delegatecall] = ACTIONS(1010),
    [anon_sym_staticcall] = ACTIONS(1010),
    [anon_sym_return] = ACTIONS(1010),
    [anon_sym_revert] = ACTIONS(1010),
    [anon_sym_selfdestruct] = ACTIONS(1010),
    [anon_sym_invalid] = ACTIONS(1010),
    [anon_sym_log0] = ACTIONS(1010),
    [anon_sym_log1] = ACTIONS(1010),
    [anon_sym_log2] = ACTIONS(1010),
    [anon_sym_log3] = ACTIONS(1010),
    [anon_sym_log4] = ACTIONS(1010),
    [anon_sym_chainid] = ACTIONS(1010),
    [anon_sym_origin] = ACTIONS(1010),
    [anon_sym_gasprice] = ACTIONS(1010),
    [anon_sym_blockhash] = ACTIONS(1010),
    [anon_sym_blobhash] = ACTIONS(1010),
    [anon_sym_basefee] = ACTIONS(1010),
    [anon_sym_blobfee] = ACTIONS(1010),
    [anon_sym_coinbase] = ACTIONS(1010),
    [anon_sym_timestamp] = ACTIONS(1010),
    [anon_sym_number] = ACTIONS(1010),
    [anon_sym_difficulty] = ACTIONS(1010),
    [anon_sym_gaslimit] = ACTIONS(1010),
    [anon_sym_prevrandao] = ACTIONS(1010),
    [anon_sym_blobbasefee] = ACTIONS(1010),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(276)] = {
    [sym_identifier] = ACTIONS(1018),
    [anon_sym_LBRACE] = ACTIONS(1020),
    [anon_sym_COMMA] = ACTIONS(1020),
    [anon_sym_RBRACE] = ACTIONS(1020),
    [anon_sym_LPAREN] = ACTIONS(1020),
    [anon_sym_RPAREN] = ACTIONS(1020),
    [anon_sym_for] = ACTIONS(1018),
    [anon_sym_COLON] = ACTIONS(1018),
    [sym_yul_leave] = ACTIONS(1018),
    [anon_sym_break] = ACTIONS(1018),
    [anon_sym_continue] = ACTIONS(1018),
    [anon_sym_DOT] = ACTIONS(1020),
    [sym_yul_decimal_number] = ACTIONS(1018),
    [sym_yul_hex_number] = ACTIONS(1020),
    [anon_sym_true] = ACTIONS(1018),
    [anon_sym_false] = ACTIONS(1018),
    [anon_sym_hex] = ACTIONS(1018),
    [anon_sym_DQUOTE] = ACTIONS(1020),
    [anon_sym_SQUOTE] = ACTIONS(1020),
    [anon_sym_let] = ACTIONS(1018),
    [anon_sym_COLON_EQ] = ACTIONS(1020),
    [anon_sym_if] = ACTIONS(1018),
    [anon_sym_switch] = ACTIONS(1018),
    [anon_sym_default] = ACTIONS(1018),
    [anon_sym_case] = ACTIONS(1018),
    [anon_sym_function] = ACTIONS(1018),
    [anon_sym_stop] = ACTIONS(1018),
    [anon_sym_add] = ACTIONS(1018),
    [anon_sym_sub] = ACTIONS(1018),
    [anon_sym_mul] = ACTIONS(1018),
    [anon_sym_div] = ACTIONS(1018),
    [anon_sym_sdiv] = ACTIONS(1018),
    [anon_sym_mod] = ACTIONS(1018),
    [anon_sym_smod] = ACTIONS(1018),
    [anon_sym_exp] = ACTIONS(1018),
    [anon_sym_not] = ACTIONS(1018),
    [anon_sym_lt] = ACTIONS(1018),
    [anon_sym_gt] = ACTIONS(1018),
    [anon_sym_slt] = ACTIONS(1018),
    [anon_sym_sgt] = ACTIONS(1018),
    [anon_sym_eq] = ACTIONS(1018),
    [anon_sym_iszero] = ACTIONS(1018),
    [anon_sym_and] = ACTIONS(1018),
    [anon_sym_or] = ACTIONS(1018),
    [anon_sym_xor] = ACTIONS(1018),
    [anon_sym_byte] = ACTIONS(1018),
    [anon_sym_shl] = ACTIONS(1018),
    [anon_sym_shr] = ACTIONS(1018),
    [anon_sym_sar] = ACTIONS(1018),
    [anon_sym_addmod] = ACTIONS(1018),
    [anon_sym_mulmod] = ACTIONS(1018),
    [anon_sym_signextend] = ACTIONS(1018),
    [anon_sym_keccak256] = ACTIONS(1018),
    [anon_sym_pop] = ACTIONS(1018),
    [anon_sym_mload] = ACTIONS(1018),
    [anon_sym_mcopy] = ACTIONS(1018),
    [anon_sym_tload] = ACTIONS(1018),
    [anon_sym_tstore] = ACTIONS(1018),
    [anon_sym_mstore] = ACTIONS(1018),
    [anon_sym_mstore8] = ACTIONS(1018),
    [anon_sym_sload] = ACTIONS(1018),
    [anon_sym_sstore] = ACTIONS(1018),
    [anon_sym_msize] = ACTIONS(1018),
    [anon_sym_gas] = ACTIONS(1018),
    [anon_sym_address] = ACTIONS(1018),
    [anon_sym_balance] = ACTIONS(1018),
    [anon_sym_selfbalance] = ACTIONS(1018),
    [anon_sym_caller] = ACTIONS(1018),
    [anon_sym_callvalue] = ACTIONS(1018),
    [anon_sym_calldataload] = ACTIONS(1018),
    [anon_sym_calldatasize] = ACTIONS(1018),
    [anon_sym_calldatacopy] = ACTIONS(1018),
    [anon_sym_extcodesize] = ACTIONS(1018),
    [anon_sym_extcodecopy] = ACTIONS(1018),
    [anon_sym_returndatasize] = ACTIONS(1018),
    [anon_sym_returndatacopy] = ACTIONS(1018),
    [anon_sym_extcodehash] = ACTIONS(1018),
    [anon_sym_create] = ACTIONS(1018),
    [anon_sym_create2] = ACTIONS(1018),
    [anon_sym_call] = ACTIONS(1018),
    [anon_sym_callcode] = ACTIONS(1018),
    [anon_sym_delegatecall] = ACTIONS(1018),
    [anon_sym_staticcall] = ACTIONS(1018),
    [anon_sym_return] = ACTIONS(1018),
    [anon_sym_revert] = ACTIONS(1018),
    [anon_sym_selfdestruct] = ACTIONS(1018),
    [anon_sym_invalid] = ACTIONS(1018),
    [anon_sym_log0] = ACTIONS(1018),
    [anon_sym_log1] = ACTIONS(1018),
    [anon_sym_log2] = ACTIONS(1018),
    [anon_sym_log3] = ACTIONS(1018),
    [anon_sym_log4] = ACTIONS(1018),
    [anon_sym_chainid] = ACTIONS(1018),
    [anon_sym_origin] = ACTIONS(1018),
    [anon_sym_gasprice] = ACTIONS(1018),
    [anon_sym_blockhash] = ACTIONS(1018),
    [anon_sym_blobhash] = ACTIONS(1018),
    [anon_sym_basefee] = ACTIONS(1018),
    [anon_sym_blobfee] = ACTIONS(1018),
    [anon_sym_coinbase] = ACTIONS(1018),
    [anon_sym_timestamp] = ACTIONS(1018),
    [anon_sym_number] = ACTIONS(1018),
    [anon_sym_difficulty] = ACTIONS(1018),
    [anon_sym_gaslimit] = ACTIONS(1018),
    [anon_sym_prevrandao] = ACTIONS(1018),
    [anon_sym_blobbasefee] = ACTIONS(1018),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(277)] = {
    [aux_sym_yul_path_repeat1] = STATE(278),
    [sym_identifier] = ACTIONS(1022),
    [anon_sym_LBRACE] = ACTIONS(1024),
    [anon_sym_COMMA] = ACTIONS(1024),
    [anon_sym_RBRACE] = ACTIONS(1024),
    [anon_sym_RPAREN] = ACTIONS(1024),
    [anon_sym_for] = ACTIONS(1022),
    [anon_sym_COLON] = ACTIONS(1022),
    [sym_yul_leave] = ACTIONS(1022),
    [anon_sym_break] = ACTIONS(1022),
    [anon_sym_continue] = ACTIONS(1022),
    [anon_sym_DOT] = ACTIONS(1016),
    [sym_yul_decimal_number] = ACTIONS(1022),
    [sym_yul_hex_number] = ACTIONS(1024),
    [anon_sym_true] = ACTIONS(1022),
    [anon_sym_false] = ACTIONS(1022),
    [anon_sym_hex] = ACTIONS(1022),
    [anon_sym_DQUOTE] = ACTIONS(1024),
    [anon_sym_SQUOTE] = ACTIONS(1024),
    [anon_sym_let] = ACTIONS(1022),
    [anon_sym_COLON_EQ] = ACTIONS(1024),
    [anon_sym_if] = ACTIONS(1022),
    [anon_sym_switch] = ACTIONS(1022),
    [anon_sym_default] = ACTIONS(1022),
    [anon_sym_case] = ACTIONS(1022),
    [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_mcopy] = ACTIONS(1022),
    [anon_sym_tload] = ACTIONS(1022),
    [anon_sym_tstore] = 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_blobhash] = ACTIONS(1022),
    [anon_sym_basefee] = ACTIONS(1022),
    [anon_sym_blobfee] = 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_prevrandao] = ACTIONS(1022),
    [anon_sym_blobbasefee] = ACTIONS(1022),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(278)] = {
    [aux_sym_yul_path_repeat1] = STATE(278),
    [sym_identifier] = ACTIONS(1026),
    [anon_sym_LBRACE] = ACTIONS(1028),
    [anon_sym_COMMA] = ACTIONS(1028),
    [anon_sym_RBRACE] = ACTIONS(1028),
    [anon_sym_RPAREN] = ACTIONS(1028),
    [anon_sym_for] = ACTIONS(1026),
    [anon_sym_COLON] = ACTIONS(1026),
    [sym_yul_leave] = ACTIONS(1026),
    [anon_sym_break] = ACTIONS(1026),
    [anon_sym_continue] = ACTIONS(1026),
    [anon_sym_DOT] = ACTIONS(1030),
    [sym_yul_decimal_number] = ACTIONS(1026),
    [sym_yul_hex_number] = ACTIONS(1028),
    [anon_sym_true] = ACTIONS(1026),
    [anon_sym_false] = ACTIONS(1026),
    [anon_sym_hex] = ACTIONS(1026),
    [anon_sym_DQUOTE] = ACTIONS(1028),
    [anon_sym_SQUOTE] = ACTIONS(1028),
    [anon_sym_let] = ACTIONS(1026),
    [anon_sym_COLON_EQ] = ACTIONS(1028),
    [anon_sym_if] = ACTIONS(1026),
    [anon_sym_switch] = ACTIONS(1026),
    [anon_sym_default] = ACTIONS(1026),
    [anon_sym_case] = ACTIONS(1026),
    [anon_sym_function] = ACTIONS(1026),
    [anon_sym_stop] = ACTIONS(1026),
    [anon_sym_add] = ACTIONS(1026),
    [anon_sym_sub] = ACTIONS(1026),
    [anon_sym_mul] = ACTIONS(1026),
    [anon_sym_div] = ACTIONS(1026),
    [anon_sym_sdiv] = ACTIONS(1026),
    [anon_sym_mod] = ACTIONS(1026),
    [anon_sym_smod] = ACTIONS(1026),
    [anon_sym_exp] = ACTIONS(1026),
    [anon_sym_not] = ACTIONS(1026),
    [anon_sym_lt] = ACTIONS(1026),
    [anon_sym_gt] = ACTIONS(1026),
    [anon_sym_slt] = ACTIONS(1026),
    [anon_sym_sgt] = ACTIONS(1026),
    [anon_sym_eq] = ACTIONS(1026),
    [anon_sym_iszero] = ACTIONS(1026),
    [anon_sym_and] = ACTIONS(1026),
    [anon_sym_or] = ACTIONS(1026),
    [anon_sym_xor] = ACTIONS(1026),
    [anon_sym_byte] = ACTIONS(1026),
    [anon_sym_shl] = ACTIONS(1026),
    [anon_sym_shr] = ACTIONS(1026),
    [anon_sym_sar] = ACTIONS(1026),
    [anon_sym_addmod] = ACTIONS(1026),
    [anon_sym_mulmod] = ACTIONS(1026),
    [anon_sym_signextend] = ACTIONS(1026),
    [anon_sym_keccak256] = ACTIONS(1026),
    [anon_sym_pop] = ACTIONS(1026),
    [anon_sym_mload] = ACTIONS(1026),
    [anon_sym_mcopy] = ACTIONS(1026),
    [anon_sym_tload] = ACTIONS(1026),
    [anon_sym_tstore] = ACTIONS(1026),
    [anon_sym_mstore] = ACTIONS(1026),
    [anon_sym_mstore8] = ACTIONS(1026),
    [anon_sym_sload] = ACTIONS(1026),
    [anon_sym_sstore] = ACTIONS(1026),
    [anon_sym_msize] = ACTIONS(1026),
    [anon_sym_gas] = ACTIONS(1026),
    [anon_sym_address] = ACTIONS(1026),
    [anon_sym_balance] = ACTIONS(1026),
    [anon_sym_selfbalance] = ACTIONS(1026),
    [anon_sym_caller] = ACTIONS(1026),
    [anon_sym_callvalue] = ACTIONS(1026),
    [anon_sym_calldataload] = ACTIONS(1026),
    [anon_sym_calldatasize] = ACTIONS(1026),
    [anon_sym_calldatacopy] = ACTIONS(1026),
    [anon_sym_extcodesize] = ACTIONS(1026),
    [anon_sym_extcodecopy] = ACTIONS(1026),
    [anon_sym_returndatasize] = ACTIONS(1026),
    [anon_sym_returndatacopy] = ACTIONS(1026),
    [anon_sym_extcodehash] = ACTIONS(1026),
    [anon_sym_create] = ACTIONS(1026),
    [anon_sym_create2] = ACTIONS(1026),
    [anon_sym_call] = ACTIONS(1026),
    [anon_sym_callcode] = ACTIONS(1026),
    [anon_sym_delegatecall] = ACTIONS(1026),
    [anon_sym_staticcall] = ACTIONS(1026),
    [anon_sym_return] = ACTIONS(1026),
    [anon_sym_revert] = ACTIONS(1026),
    [anon_sym_selfdestruct] = ACTIONS(1026),
    [anon_sym_invalid] = ACTIONS(1026),
    [anon_sym_log0] = ACTIONS(1026),
    [anon_sym_log1] = ACTIONS(1026),
    [anon_sym_log2] = ACTIONS(1026),
    [anon_sym_log3] = ACTIONS(1026),
    [anon_sym_log4] = ACTIONS(1026),
    [anon_sym_chainid] = ACTIONS(1026),
    [anon_sym_origin] = ACTIONS(1026),
    [anon_sym_gasprice] = ACTIONS(1026),
    [anon_sym_blockhash] = ACTIONS(1026),
    [anon_sym_blobhash] = ACTIONS(1026),
    [anon_sym_basefee] = ACTIONS(1026),
    [anon_sym_blobfee] = ACTIONS(1026),
    [anon_sym_coinbase] = ACTIONS(1026),
    [anon_sym_timestamp] = ACTIONS(1026),
    [anon_sym_number] = ACTIONS(1026),
    [anon_sym_difficulty] = ACTIONS(1026),
    [anon_sym_gaslimit] = ACTIONS(1026),
    [anon_sym_prevrandao] = ACTIONS(1026),
    [anon_sym_blobbasefee] = ACTIONS(1026),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(279)] = {
    [sym_identifier] = ACTIONS(1026),
    [anon_sym_LBRACE] = ACTIONS(1028),
    [anon_sym_COMMA] = ACTIONS(1028),
    [anon_sym_RBRACE] = ACTIONS(1028),
    [anon_sym_RPAREN] = ACTIONS(1028),
    [anon_sym_for] = ACTIONS(1026),
    [anon_sym_COLON] = ACTIONS(1026),
    [sym_yul_leave] = ACTIONS(1026),
    [anon_sym_break] = ACTIONS(1026),
    [anon_sym_continue] = ACTIONS(1026),
    [anon_sym_DOT] = ACTIONS(1028),
    [sym_yul_decimal_number] = ACTIONS(1026),
    [sym_yul_hex_number] = ACTIONS(1028),
    [anon_sym_true] = ACTIONS(1026),
    [anon_sym_false] = ACTIONS(1026),
    [anon_sym_hex] = ACTIONS(1026),
    [anon_sym_DQUOTE] = ACTIONS(1028),
    [anon_sym_SQUOTE] = ACTIONS(1028),
    [anon_sym_let] = ACTIONS(1026),
    [anon_sym_COLON_EQ] = ACTIONS(1028),
    [anon_sym_if] = ACTIONS(1026),
    [anon_sym_switch] = ACTIONS(1026),
    [anon_sym_default] = ACTIONS(1026),
    [anon_sym_case] = ACTIONS(1026),
    [anon_sym_function] = ACTIONS(1026),
    [anon_sym_stop] = ACTIONS(1026),
    [anon_sym_add] = ACTIONS(1026),
    [anon_sym_sub] = ACTIONS(1026),
    [anon_sym_mul] = ACTIONS(1026),
    [anon_sym_div] = ACTIONS(1026),
    [anon_sym_sdiv] = ACTIONS(1026),
    [anon_sym_mod] = ACTIONS(1026),
    [anon_sym_smod] = ACTIONS(1026),
    [anon_sym_exp] = ACTIONS(1026),
    [anon_sym_not] = ACTIONS(1026),
    [anon_sym_lt] = ACTIONS(1026),
    [anon_sym_gt] = ACTIONS(1026),
    [anon_sym_slt] = ACTIONS(1026),
    [anon_sym_sgt] = ACTIONS(1026),
    [anon_sym_eq] = ACTIONS(1026),
    [anon_sym_iszero] = ACTIONS(1026),
    [anon_sym_and] = ACTIONS(1026),
    [anon_sym_or] = ACTIONS(1026),
    [anon_sym_xor] = ACTIONS(1026),
    [anon_sym_byte] = ACTIONS(1026),
    [anon_sym_shl] = ACTIONS(1026),
    [anon_sym_shr] = ACTIONS(1026),
    [anon_sym_sar] = ACTIONS(1026),
    [anon_sym_addmod] = ACTIONS(1026),
    [anon_sym_mulmod] = ACTIONS(1026),
    [anon_sym_signextend] = ACTIONS(1026),
    [anon_sym_keccak256] = ACTIONS(1026),
    [anon_sym_pop] = ACTIONS(1026),
    [anon_sym_mload] = ACTIONS(1026),
    [anon_sym_mcopy] = ACTIONS(1026),
    [anon_sym_tload] = ACTIONS(1026),
    [anon_sym_tstore] = ACTIONS(1026),
    [anon_sym_mstore] = ACTIONS(1026),
    [anon_sym_mstore8] = ACTIONS(1026),
    [anon_sym_sload] = ACTIONS(1026),
    [anon_sym_sstore] = ACTIONS(1026),
    [anon_sym_msize] = ACTIONS(1026),
    [anon_sym_gas] = ACTIONS(1026),
    [anon_sym_address] = ACTIONS(1026),
    [anon_sym_balance] = ACTIONS(1026),
    [anon_sym_selfbalance] = ACTIONS(1026),
    [anon_sym_caller] = ACTIONS(1026),
    [anon_sym_callvalue] = ACTIONS(1026),
    [anon_sym_calldataload] = ACTIONS(1026),
    [anon_sym_calldatasize] = ACTIONS(1026),
    [anon_sym_calldatacopy] = ACTIONS(1026),
    [anon_sym_extcodesize] = ACTIONS(1026),
    [anon_sym_extcodecopy] = ACTIONS(1026),
    [anon_sym_returndatasize] = ACTIONS(1026),
    [anon_sym_returndatacopy] = ACTIONS(1026),
    [anon_sym_extcodehash] = ACTIONS(1026),
    [anon_sym_create] = ACTIONS(1026),
    [anon_sym_create2] = ACTIONS(1026),
    [anon_sym_call] = ACTIONS(1026),
    [anon_sym_callcode] = ACTIONS(1026),
    [anon_sym_delegatecall] = ACTIONS(1026),
    [anon_sym_staticcall] = ACTIONS(1026),
    [anon_sym_return] = ACTIONS(1026),
    [anon_sym_revert] = ACTIONS(1026),
    [anon_sym_selfdestruct] = ACTIONS(1026),
    [anon_sym_invalid] = ACTIONS(1026),
    [anon_sym_log0] = ACTIONS(1026),
    [anon_sym_log1] = ACTIONS(1026),
    [anon_sym_log2] = ACTIONS(1026),
    [anon_sym_log3] = ACTIONS(1026),
    [anon_sym_log4] = ACTIONS(1026),
    [anon_sym_chainid] = ACTIONS(1026),
    [anon_sym_origin] = ACTIONS(1026),
    [anon_sym_gasprice] = ACTIONS(1026),
    [anon_sym_blockhash] = ACTIONS(1026),
    [anon_sym_blobhash] = ACTIONS(1026),
    [anon_sym_basefee] = ACTIONS(1026),
    [anon_sym_blobfee] = ACTIONS(1026),
    [anon_sym_coinbase] = ACTIONS(1026),
    [anon_sym_timestamp] = ACTIONS(1026),
    [anon_sym_number] = ACTIONS(1026),
    [anon_sym_difficulty] = ACTIONS(1026),
    [anon_sym_gaslimit] = ACTIONS(1026),
    [anon_sym_prevrandao] = ACTIONS(1026),
    [anon_sym_blobbasefee] = ACTIONS(1026),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(280)] = {
    [sym__yul_assignment_operator] = STATE(321),
    [aux_sym_yul_assignment_repeat1] = STATE(286),
    [sym_identifier] = ACTIONS(1033),
    [anon_sym_LBRACE] = ACTIONS(1035),
    [anon_sym_COMMA] = ACTIONS(1037),
    [anon_sym_RBRACE] = ACTIONS(1035),
    [anon_sym_for] = ACTIONS(1033),
    [anon_sym_COLON] = ACTIONS(1039),
    [sym_yul_leave] = ACTIONS(1033),
    [anon_sym_break] = ACTIONS(1033),
    [anon_sym_continue] = ACTIONS(1033),
    [sym_yul_decimal_number] = ACTIONS(1033),
    [sym_yul_hex_number] = ACTIONS(1035),
    [anon_sym_true] = ACTIONS(1033),
    [anon_sym_false] = ACTIONS(1033),
    [anon_sym_hex] = ACTIONS(1033),
    [anon_sym_DQUOTE] = ACTIONS(1035),
    [anon_sym_SQUOTE] = ACTIONS(1035),
    [anon_sym_let] = ACTIONS(1033),
    [anon_sym_COLON_EQ] = ACTIONS(1041),
    [anon_sym_if] = ACTIONS(1033),
    [anon_sym_switch] = ACTIONS(1033),
    [anon_sym_function] = ACTIONS(1033),
    [anon_sym_stop] = ACTIONS(1033),
    [anon_sym_add] = ACTIONS(1033),
    [anon_sym_sub] = ACTIONS(1033),
    [anon_sym_mul] = ACTIONS(1033),
    [anon_sym_div] = ACTIONS(1033),
    [anon_sym_sdiv] = ACTIONS(1033),
    [anon_sym_mod] = ACTIONS(1033),
    [anon_sym_smod] = ACTIONS(1033),
    [anon_sym_exp] = ACTIONS(1033),
    [anon_sym_not] = ACTIONS(1033),
    [anon_sym_lt] = ACTIONS(1033),
    [anon_sym_gt] = ACTIONS(1033),
    [anon_sym_slt] = ACTIONS(1033),
    [anon_sym_sgt] = ACTIONS(1033),
    [anon_sym_eq] = ACTIONS(1033),
    [anon_sym_iszero] = ACTIONS(1033),
    [anon_sym_and] = ACTIONS(1033),
    [anon_sym_or] = ACTIONS(1033),
    [anon_sym_xor] = ACTIONS(1033),
    [anon_sym_byte] = ACTIONS(1033),
    [anon_sym_shl] = ACTIONS(1033),
    [anon_sym_shr] = ACTIONS(1033),
    [anon_sym_sar] = ACTIONS(1033),
    [anon_sym_addmod] = ACTIONS(1033),
    [anon_sym_mulmod] = ACTIONS(1033),
    [anon_sym_signextend] = ACTIONS(1033),
    [anon_sym_keccak256] = ACTIONS(1033),
    [anon_sym_pop] = ACTIONS(1033),
    [anon_sym_mload] = ACTIONS(1033),
    [anon_sym_mcopy] = ACTIONS(1033),
    [anon_sym_tload] = ACTIONS(1033),
    [anon_sym_tstore] = ACTIONS(1033),
    [anon_sym_mstore] = ACTIONS(1033),
    [anon_sym_mstore8] = ACTIONS(1033),
    [anon_sym_sload] = ACTIONS(1033),
    [anon_sym_sstore] = ACTIONS(1033),
    [anon_sym_msize] = ACTIONS(1033),
    [anon_sym_gas] = ACTIONS(1033),
    [anon_sym_address] = ACTIONS(1033),
    [anon_sym_balance] = ACTIONS(1033),
    [anon_sym_selfbalance] = ACTIONS(1033),
    [anon_sym_caller] = ACTIONS(1033),
    [anon_sym_callvalue] = ACTIONS(1033),
    [anon_sym_calldataload] = ACTIONS(1033),
    [anon_sym_calldatasize] = ACTIONS(1033),
    [anon_sym_calldatacopy] = ACTIONS(1033),
    [anon_sym_extcodesize] = ACTIONS(1033),
    [anon_sym_extcodecopy] = ACTIONS(1033),
    [anon_sym_returndatasize] = ACTIONS(1033),
    [anon_sym_returndatacopy] = ACTIONS(1033),
    [anon_sym_extcodehash] = ACTIONS(1033),
    [anon_sym_create] = ACTIONS(1033),
    [anon_sym_create2] = ACTIONS(1033),
    [anon_sym_call] = ACTIONS(1033),
    [anon_sym_callcode] = ACTIONS(1033),
    [anon_sym_delegatecall] = ACTIONS(1033),
    [anon_sym_staticcall] = ACTIONS(1033),
    [anon_sym_return] = ACTIONS(1033),
    [anon_sym_revert] = ACTIONS(1033),
    [anon_sym_selfdestruct] = ACTIONS(1033),
    [anon_sym_invalid] = ACTIONS(1033),
    [anon_sym_log0] = ACTIONS(1033),
    [anon_sym_log1] = ACTIONS(1033),
    [anon_sym_log2] = ACTIONS(1033),
    [anon_sym_log3] = ACTIONS(1033),
    [anon_sym_log4] = ACTIONS(1033),
    [anon_sym_chainid] = ACTIONS(1033),
    [anon_sym_origin] = ACTIONS(1033),
    [anon_sym_gasprice] = ACTIONS(1033),
    [anon_sym_blockhash] = ACTIONS(1033),
    [anon_sym_blobhash] = ACTIONS(1033),
    [anon_sym_basefee] = ACTIONS(1033),
    [anon_sym_blobfee] = ACTIONS(1033),
    [anon_sym_coinbase] = ACTIONS(1033),
    [anon_sym_timestamp] = ACTIONS(1033),
    [anon_sym_number] = ACTIONS(1033),
    [anon_sym_difficulty] = ACTIONS(1033),
    [anon_sym_gaslimit] = ACTIONS(1033),
    [anon_sym_prevrandao] = ACTIONS(1033),
    [anon_sym_blobbasefee] = ACTIONS(1033),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(281)] = {
    [sym_yul_identifier] = STATE(287),
    [sym_yul_path] = STATE(301),
    [sym__yul_assignment_operator] = STATE(350),
    [sym_identifier] = ACTIONS(1043),
    [anon_sym_LBRACE] = ACTIONS(1045),
    [anon_sym_RBRACE] = ACTIONS(1045),
    [anon_sym_for] = ACTIONS(1043),
    [anon_sym_COLON] = ACTIONS(1039),
    [sym_yul_leave] = ACTIONS(1043),
    [anon_sym_break] = ACTIONS(1043),
    [anon_sym_continue] = ACTIONS(1043),
    [sym_yul_decimal_number] = ACTIONS(1043),
    [sym_yul_hex_number] = ACTIONS(1045),
    [anon_sym_true] = ACTIONS(1043),
    [anon_sym_false] = ACTIONS(1043),
    [anon_sym_hex] = ACTIONS(1043),
    [anon_sym_DQUOTE] = ACTIONS(1045),
    [anon_sym_SQUOTE] = ACTIONS(1045),
    [anon_sym_let] = ACTIONS(1043),
    [anon_sym_COLON_EQ] = ACTIONS(1047),
    [anon_sym_if] = ACTIONS(1043),
    [anon_sym_switch] = ACTIONS(1043),
    [anon_sym_function] = ACTIONS(1043),
    [anon_sym_stop] = ACTIONS(1043),
    [anon_sym_add] = ACTIONS(1043),
    [anon_sym_sub] = ACTIONS(1043),
    [anon_sym_mul] = ACTIONS(1043),
    [anon_sym_div] = ACTIONS(1043),
    [anon_sym_sdiv] = ACTIONS(1043),
    [anon_sym_mod] = ACTIONS(1043),
    [anon_sym_smod] = ACTIONS(1043),
    [anon_sym_exp] = ACTIONS(1043),
    [anon_sym_not] = ACTIONS(1043),
    [anon_sym_lt] = ACTIONS(1043),
    [anon_sym_gt] = ACTIONS(1043),
    [anon_sym_slt] = ACTIONS(1043),
    [anon_sym_sgt] = ACTIONS(1043),
    [anon_sym_eq] = ACTIONS(1043),
    [anon_sym_iszero] = ACTIONS(1043),
    [anon_sym_and] = ACTIONS(1043),
    [anon_sym_or] = ACTIONS(1043),
    [anon_sym_xor] = ACTIONS(1043),
    [anon_sym_byte] = ACTIONS(1043),
    [anon_sym_shl] = ACTIONS(1043),
    [anon_sym_shr] = ACTIONS(1043),
    [anon_sym_sar] = ACTIONS(1043),
    [anon_sym_addmod] = ACTIONS(1043),
    [anon_sym_mulmod] = ACTIONS(1043),
    [anon_sym_signextend] = ACTIONS(1043),
    [anon_sym_keccak256] = ACTIONS(1043),
    [anon_sym_pop] = ACTIONS(1043),
    [anon_sym_mload] = ACTIONS(1043),
    [anon_sym_mcopy] = ACTIONS(1043),
    [anon_sym_tload] = ACTIONS(1043),
    [anon_sym_tstore] = ACTIONS(1043),
    [anon_sym_mstore] = ACTIONS(1043),
    [anon_sym_mstore8] = ACTIONS(1043),
    [anon_sym_sload] = ACTIONS(1043),
    [anon_sym_sstore] = ACTIONS(1043),
    [anon_sym_msize] = ACTIONS(1043),
    [anon_sym_gas] = ACTIONS(1043),
    [anon_sym_address] = ACTIONS(1043),
    [anon_sym_balance] = ACTIONS(1043),
    [anon_sym_selfbalance] = ACTIONS(1043),
    [anon_sym_caller] = ACTIONS(1043),
    [anon_sym_callvalue] = ACTIONS(1043),
    [anon_sym_calldataload] = ACTIONS(1043),
    [anon_sym_calldatasize] = ACTIONS(1043),
    [anon_sym_calldatacopy] = ACTIONS(1043),
    [anon_sym_extcodesize] = ACTIONS(1043),
    [anon_sym_extcodecopy] = ACTIONS(1043),
    [anon_sym_returndatasize] = ACTIONS(1043),
    [anon_sym_returndatacopy] = ACTIONS(1043),
    [anon_sym_extcodehash] = ACTIONS(1043),
    [anon_sym_create] = ACTIONS(1043),
    [anon_sym_create2] = ACTIONS(1043),
    [anon_sym_call] = ACTIONS(1043),
    [anon_sym_callcode] = ACTIONS(1043),
    [anon_sym_delegatecall] = ACTIONS(1043),
    [anon_sym_staticcall] = ACTIONS(1043),
    [anon_sym_return] = ACTIONS(1043),
    [anon_sym_revert] = ACTIONS(1043),
    [anon_sym_selfdestruct] = ACTIONS(1043),
    [anon_sym_invalid] = ACTIONS(1043),
    [anon_sym_log0] = ACTIONS(1043),
    [anon_sym_log1] = ACTIONS(1043),
    [anon_sym_log2] = ACTIONS(1043),
    [anon_sym_log3] = ACTIONS(1043),
    [anon_sym_log4] = ACTIONS(1043),
    [anon_sym_chainid] = ACTIONS(1043),
    [anon_sym_origin] = ACTIONS(1043),
    [anon_sym_gasprice] = ACTIONS(1043),
    [anon_sym_blockhash] = ACTIONS(1043),
    [anon_sym_blobhash] = ACTIONS(1043),
    [anon_sym_basefee] = ACTIONS(1043),
    [anon_sym_blobfee] = ACTIONS(1043),
    [anon_sym_coinbase] = ACTIONS(1043),
    [anon_sym_timestamp] = ACTIONS(1043),
    [anon_sym_number] = ACTIONS(1043),
    [anon_sym_difficulty] = ACTIONS(1043),
    [anon_sym_gaslimit] = ACTIONS(1043),
    [anon_sym_prevrandao] = ACTIONS(1043),
    [anon_sym_blobbasefee] = ACTIONS(1043),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(282)] = {
    [sym_identifier] = ACTIONS(1049),
    [anon_sym_LBRACE] = ACTIONS(1051),
    [anon_sym_COMMA] = ACTIONS(1051),
    [anon_sym_RBRACE] = ACTIONS(1051),
    [anon_sym_LPAREN] = ACTIONS(1051),
    [anon_sym_RPAREN] = ACTIONS(1051),
    [anon_sym_for] = ACTIONS(1049),
    [sym_yul_leave] = ACTIONS(1049),
    [anon_sym_break] = ACTIONS(1049),
    [anon_sym_continue] = ACTIONS(1049),
    [sym_yul_decimal_number] = ACTIONS(1049),
    [sym_yul_hex_number] = ACTIONS(1051),
    [anon_sym_true] = ACTIONS(1049),
    [anon_sym_false] = ACTIONS(1049),
    [anon_sym_hex] = ACTIONS(1049),
    [anon_sym_DQUOTE] = ACTIONS(1051),
    [anon_sym_SQUOTE] = ACTIONS(1051),
    [anon_sym_let] = ACTIONS(1049),
    [anon_sym_if] = ACTIONS(1049),
    [anon_sym_switch] = ACTIONS(1049),
    [anon_sym_default] = ACTIONS(1049),
    [anon_sym_case] = ACTIONS(1049),
    [anon_sym_function] = ACTIONS(1049),
    [anon_sym_stop] = ACTIONS(1049),
    [anon_sym_add] = ACTIONS(1049),
    [anon_sym_sub] = ACTIONS(1049),
    [anon_sym_mul] = ACTIONS(1049),
    [anon_sym_div] = ACTIONS(1049),
    [anon_sym_sdiv] = ACTIONS(1049),
    [anon_sym_mod] = ACTIONS(1049),
    [anon_sym_smod] = ACTIONS(1049),
    [anon_sym_exp] = ACTIONS(1049),
    [anon_sym_not] = ACTIONS(1049),
    [anon_sym_lt] = ACTIONS(1049),
    [anon_sym_gt] = ACTIONS(1049),
    [anon_sym_slt] = ACTIONS(1049),
    [anon_sym_sgt] = ACTIONS(1049),
    [anon_sym_eq] = ACTIONS(1049),
    [anon_sym_iszero] = ACTIONS(1049),
    [anon_sym_and] = ACTIONS(1049),
    [anon_sym_or] = ACTIONS(1049),
    [anon_sym_xor] = ACTIONS(1049),
    [anon_sym_byte] = ACTIONS(1049),
    [anon_sym_shl] = ACTIONS(1049),
    [anon_sym_shr] = ACTIONS(1049),
    [anon_sym_sar] = ACTIONS(1049),
    [anon_sym_addmod] = ACTIONS(1049),
    [anon_sym_mulmod] = ACTIONS(1049),
    [anon_sym_signextend] = ACTIONS(1049),
    [anon_sym_keccak256] = ACTIONS(1049),
    [anon_sym_pop] = ACTIONS(1049),
    [anon_sym_mload] = ACTIONS(1049),
    [anon_sym_mcopy] = ACTIONS(1049),
    [anon_sym_tload] = ACTIONS(1049),
    [anon_sym_tstore] = ACTIONS(1049),
    [anon_sym_mstore] = ACTIONS(1049),
    [anon_sym_mstore8] = ACTIONS(1049),
    [anon_sym_sload] = ACTIONS(1049),
    [anon_sym_sstore] = ACTIONS(1049),
    [anon_sym_msize] = ACTIONS(1049),
    [anon_sym_gas] = ACTIONS(1049),
    [anon_sym_address] = ACTIONS(1049),
    [anon_sym_balance] = ACTIONS(1049),
    [anon_sym_selfbalance] = ACTIONS(1049),
    [anon_sym_caller] = ACTIONS(1049),
    [anon_sym_callvalue] = ACTIONS(1049),
    [anon_sym_calldataload] = ACTIONS(1049),
    [anon_sym_calldatasize] = ACTIONS(1049),
    [anon_sym_calldatacopy] = ACTIONS(1049),
    [anon_sym_extcodesize] = ACTIONS(1049),
    [anon_sym_extcodecopy] = ACTIONS(1049),
    [anon_sym_returndatasize] = ACTIONS(1049),
    [anon_sym_returndatacopy] = ACTIONS(1049),
    [anon_sym_extcodehash] = ACTIONS(1049),
    [anon_sym_create] = ACTIONS(1049),
    [anon_sym_create2] = ACTIONS(1049),
    [anon_sym_call] = ACTIONS(1049),
    [anon_sym_callcode] = ACTIONS(1049),
    [anon_sym_delegatecall] = ACTIONS(1049),
    [anon_sym_staticcall] = ACTIONS(1049),
    [anon_sym_return] = ACTIONS(1049),
    [anon_sym_revert] = ACTIONS(1049),
    [anon_sym_selfdestruct] = ACTIONS(1049),
    [anon_sym_invalid] = ACTIONS(1049),
    [anon_sym_log0] = ACTIONS(1049),
    [anon_sym_log1] = ACTIONS(1049),
    [anon_sym_log2] = ACTIONS(1049),
    [anon_sym_log3] = ACTIONS(1049),
    [anon_sym_log4] = ACTIONS(1049),
    [anon_sym_chainid] = ACTIONS(1049),
    [anon_sym_origin] = ACTIONS(1049),
    [anon_sym_gasprice] = ACTIONS(1049),
    [anon_sym_blockhash] = ACTIONS(1049),
    [anon_sym_blobhash] = ACTIONS(1049),
    [anon_sym_basefee] = ACTIONS(1049),
    [anon_sym_blobfee] = ACTIONS(1049),
    [anon_sym_coinbase] = ACTIONS(1049),
    [anon_sym_timestamp] = ACTIONS(1049),
    [anon_sym_number] = ACTIONS(1049),
    [anon_sym_difficulty] = ACTIONS(1049),
    [anon_sym_gaslimit] = ACTIONS(1049),
    [anon_sym_prevrandao] = ACTIONS(1049),
    [anon_sym_blobbasefee] = ACTIONS(1049),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(283)] = {
    [sym_identifier] = ACTIONS(1018),
    [anon_sym_LBRACE] = ACTIONS(1020),
    [anon_sym_COMMA] = ACTIONS(1020),
    [anon_sym_RBRACE] = ACTIONS(1020),
    [anon_sym_LPAREN] = ACTIONS(1020),
    [anon_sym_for] = ACTIONS(1018),
    [anon_sym_COLON] = ACTIONS(1053),
    [sym_yul_leave] = ACTIONS(1018),
    [anon_sym_break] = ACTIONS(1018),
    [anon_sym_continue] = ACTIONS(1018),
    [anon_sym_DOT] = ACTIONS(1020),
    [sym_yul_decimal_number] = ACTIONS(1018),
    [sym_yul_hex_number] = ACTIONS(1020),
    [anon_sym_true] = ACTIONS(1018),
    [anon_sym_false] = ACTIONS(1018),
    [anon_sym_hex] = ACTIONS(1018),
    [anon_sym_DQUOTE] = ACTIONS(1020),
    [anon_sym_SQUOTE] = ACTIONS(1020),
    [anon_sym_let] = ACTIONS(1018),
    [anon_sym_COLON_EQ] = ACTIONS(1020),
    [anon_sym_if] = ACTIONS(1018),
    [anon_sym_switch] = ACTIONS(1018),
    [anon_sym_function] = ACTIONS(1018),
    [anon_sym_stop] = ACTIONS(1018),
    [anon_sym_add] = ACTIONS(1018),
    [anon_sym_sub] = ACTIONS(1018),
    [anon_sym_mul] = ACTIONS(1018),
    [anon_sym_div] = ACTIONS(1018),
    [anon_sym_sdiv] = ACTIONS(1018),
    [anon_sym_mod] = ACTIONS(1018),
    [anon_sym_smod] = ACTIONS(1018),
    [anon_sym_exp] = ACTIONS(1018),
    [anon_sym_not] = ACTIONS(1018),
    [anon_sym_lt] = ACTIONS(1018),
    [anon_sym_gt] = ACTIONS(1018),
    [anon_sym_slt] = ACTIONS(1018),
    [anon_sym_sgt] = ACTIONS(1018),
    [anon_sym_eq] = ACTIONS(1018),
    [anon_sym_iszero] = ACTIONS(1018),
    [anon_sym_and] = ACTIONS(1018),
    [anon_sym_or] = ACTIONS(1018),
    [anon_sym_xor] = ACTIONS(1018),
    [anon_sym_byte] = ACTIONS(1018),
    [anon_sym_shl] = ACTIONS(1018),
    [anon_sym_shr] = ACTIONS(1018),
    [anon_sym_sar] = ACTIONS(1018),
    [anon_sym_addmod] = ACTIONS(1018),
    [anon_sym_mulmod] = ACTIONS(1018),
    [anon_sym_signextend] = ACTIONS(1018),
    [anon_sym_keccak256] = ACTIONS(1018),
    [anon_sym_pop] = ACTIONS(1018),
    [anon_sym_mload] = ACTIONS(1018),
    [anon_sym_mcopy] = ACTIONS(1018),
    [anon_sym_tload] = ACTIONS(1018),
    [anon_sym_tstore] = ACTIONS(1018),
    [anon_sym_mstore] = ACTIONS(1018),
    [anon_sym_mstore8] = ACTIONS(1018),
    [anon_sym_sload] = ACTIONS(1018),
    [anon_sym_sstore] = ACTIONS(1018),
    [anon_sym_msize] = ACTIONS(1018),
    [anon_sym_gas] = ACTIONS(1018),
    [anon_sym_address] = ACTIONS(1018),
    [anon_sym_balance] = ACTIONS(1018),
    [anon_sym_selfbalance] = ACTIONS(1018),
    [anon_sym_caller] = ACTIONS(1018),
    [anon_sym_callvalue] = ACTIONS(1018),
    [anon_sym_calldataload] = ACTIONS(1018),
    [anon_sym_calldatasize] = ACTIONS(1018),
    [anon_sym_calldatacopy] = ACTIONS(1018),
    [anon_sym_extcodesize] = ACTIONS(1018),
    [anon_sym_extcodecopy] = ACTIONS(1018),
    [anon_sym_returndatasize] = ACTIONS(1018),
    [anon_sym_returndatacopy] = ACTIONS(1018),
    [anon_sym_extcodehash] = ACTIONS(1018),
    [anon_sym_create] = ACTIONS(1018),
    [anon_sym_create2] = ACTIONS(1018),
    [anon_sym_call] = ACTIONS(1018),
    [anon_sym_callcode] = ACTIONS(1018),
    [anon_sym_delegatecall] = ACTIONS(1018),
    [anon_sym_staticcall] = ACTIONS(1018),
    [anon_sym_return] = ACTIONS(1018),
    [anon_sym_revert] = ACTIONS(1018),
    [anon_sym_selfdestruct] = ACTIONS(1018),
    [anon_sym_invalid] = ACTIONS(1018),
    [anon_sym_log0] = ACTIONS(1018),
    [anon_sym_log1] = ACTIONS(1018),
    [anon_sym_log2] = ACTIONS(1018),
    [anon_sym_log3] = ACTIONS(1018),
    [anon_sym_log4] = ACTIONS(1018),
    [anon_sym_chainid] = ACTIONS(1018),
    [anon_sym_origin] = ACTIONS(1018),
    [anon_sym_gasprice] = ACTIONS(1018),
    [anon_sym_blockhash] = ACTIONS(1018),
    [anon_sym_blobhash] = ACTIONS(1018),
    [anon_sym_basefee] = ACTIONS(1018),
    [anon_sym_blobfee] = ACTIONS(1018),
    [anon_sym_coinbase] = ACTIONS(1018),
    [anon_sym_timestamp] = ACTIONS(1018),
    [anon_sym_number] = ACTIONS(1018),
    [anon_sym_difficulty] = ACTIONS(1018),
    [anon_sym_gaslimit] = ACTIONS(1018),
    [anon_sym_prevrandao] = ACTIONS(1018),
    [anon_sym_blobbasefee] = ACTIONS(1018),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(284)] = {
    [sym_identifier] = ACTIONS(1056),
    [anon_sym_LBRACE] = ACTIONS(1058),
    [anon_sym_COMMA] = ACTIONS(1058),
    [anon_sym_RBRACE] = ACTIONS(1058),
    [anon_sym_LPAREN] = ACTIONS(1014),
    [anon_sym_RPAREN] = ACTIONS(1058),
    [anon_sym_for] = ACTIONS(1056),
    [sym_yul_leave] = ACTIONS(1056),
    [anon_sym_break] = ACTIONS(1056),
    [anon_sym_continue] = ACTIONS(1056),
    [sym_yul_decimal_number] = ACTIONS(1056),
    [sym_yul_hex_number] = ACTIONS(1058),
    [anon_sym_true] = ACTIONS(1056),
    [anon_sym_false] = ACTIONS(1056),
    [anon_sym_hex] = ACTIONS(1056),
    [anon_sym_DQUOTE] = ACTIONS(1058),
    [anon_sym_SQUOTE] = ACTIONS(1058),
    [anon_sym_let] = ACTIONS(1056),
    [anon_sym_if] = ACTIONS(1056),
    [anon_sym_switch] = ACTIONS(1056),
    [anon_sym_default] = ACTIONS(1056),
    [anon_sym_case] = ACTIONS(1056),
    [anon_sym_function] = ACTIONS(1056),
    [anon_sym_stop] = ACTIONS(1056),
    [anon_sym_add] = ACTIONS(1056),
    [anon_sym_sub] = ACTIONS(1056),
    [anon_sym_mul] = ACTIONS(1056),
    [anon_sym_div] = ACTIONS(1056),
    [anon_sym_sdiv] = ACTIONS(1056),
    [anon_sym_mod] = ACTIONS(1056),
    [anon_sym_smod] = ACTIONS(1056),
    [anon_sym_exp] = ACTIONS(1056),
    [anon_sym_not] = ACTIONS(1056),
    [anon_sym_lt] = ACTIONS(1056),
    [anon_sym_gt] = ACTIONS(1056),
    [anon_sym_slt] = ACTIONS(1056),
    [anon_sym_sgt] = ACTIONS(1056),
    [anon_sym_eq] = ACTIONS(1056),
    [anon_sym_iszero] = ACTIONS(1056),
    [anon_sym_and] = ACTIONS(1056),
    [anon_sym_or] = ACTIONS(1056),
    [anon_sym_xor] = ACTIONS(1056),
    [anon_sym_byte] = ACTIONS(1056),
    [anon_sym_shl] = ACTIONS(1056),
    [anon_sym_shr] = ACTIONS(1056),
    [anon_sym_sar] = ACTIONS(1056),
    [anon_sym_addmod] = ACTIONS(1056),
    [anon_sym_mulmod] = ACTIONS(1056),
    [anon_sym_signextend] = ACTIONS(1056),
    [anon_sym_keccak256] = ACTIONS(1056),
    [anon_sym_pop] = ACTIONS(1056),
    [anon_sym_mload] = ACTIONS(1056),
    [anon_sym_mcopy] = ACTIONS(1056),
    [anon_sym_tload] = ACTIONS(1056),
    [anon_sym_tstore] = ACTIONS(1056),
    [anon_sym_mstore] = ACTIONS(1056),
    [anon_sym_mstore8] = ACTIONS(1056),
    [anon_sym_sload] = ACTIONS(1056),
    [anon_sym_sstore] = ACTIONS(1056),
    [anon_sym_msize] = ACTIONS(1056),
    [anon_sym_gas] = ACTIONS(1056),
    [anon_sym_address] = ACTIONS(1056),
    [anon_sym_balance] = ACTIONS(1056),
    [anon_sym_selfbalance] = ACTIONS(1056),
    [anon_sym_caller] = ACTIONS(1056),
    [anon_sym_callvalue] = ACTIONS(1056),
    [anon_sym_calldataload] = ACTIONS(1056),
    [anon_sym_calldatasize] = ACTIONS(1056),
    [anon_sym_calldatacopy] = ACTIONS(1056),
    [anon_sym_extcodesize] = ACTIONS(1056),
    [anon_sym_extcodecopy] = ACTIONS(1056),
    [anon_sym_returndatasize] = ACTIONS(1056),
    [anon_sym_returndatacopy] = ACTIONS(1056),
    [anon_sym_extcodehash] = ACTIONS(1056),
    [anon_sym_create] = ACTIONS(1056),
    [anon_sym_create2] = ACTIONS(1056),
    [anon_sym_call] = ACTIONS(1056),
    [anon_sym_callcode] = ACTIONS(1056),
    [anon_sym_delegatecall] = ACTIONS(1056),
    [anon_sym_staticcall] = ACTIONS(1056),
    [anon_sym_return] = ACTIONS(1056),
    [anon_sym_revert] = ACTIONS(1056),
    [anon_sym_selfdestruct] = ACTIONS(1056),
    [anon_sym_invalid] = ACTIONS(1056),
    [anon_sym_log0] = ACTIONS(1056),
    [anon_sym_log1] = ACTIONS(1056),
    [anon_sym_log2] = ACTIONS(1056),
    [anon_sym_log3] = ACTIONS(1056),
    [anon_sym_log4] = ACTIONS(1056),
    [anon_sym_chainid] = ACTIONS(1056),
    [anon_sym_origin] = ACTIONS(1056),
    [anon_sym_gasprice] = ACTIONS(1056),
    [anon_sym_blockhash] = ACTIONS(1056),
    [anon_sym_blobhash] = ACTIONS(1056),
    [anon_sym_basefee] = ACTIONS(1056),
    [anon_sym_blobfee] = ACTIONS(1056),
    [anon_sym_coinbase] = ACTIONS(1056),
    [anon_sym_timestamp] = ACTIONS(1056),
    [anon_sym_number] = ACTIONS(1056),
    [anon_sym_difficulty] = ACTIONS(1056),
    [anon_sym_gaslimit] = ACTIONS(1056),
    [anon_sym_prevrandao] = ACTIONS(1056),
    [anon_sym_blobbasefee] = ACTIONS(1056),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(285)] = {
    [sym_yul_identifier] = STATE(287),
    [sym_yul_path] = STATE(301),
    [sym__yul_assignment_operator] = STATE(353),
    [sym_identifier] = ACTIONS(1060),
    [anon_sym_LBRACE] = ACTIONS(1062),
    [anon_sym_RBRACE] = ACTIONS(1062),
    [anon_sym_for] = ACTIONS(1060),
    [anon_sym_COLON] = ACTIONS(1039),
    [sym_yul_leave] = ACTIONS(1060),
    [anon_sym_break] = ACTIONS(1060),
    [anon_sym_continue] = ACTIONS(1060),
    [sym_yul_decimal_number] = ACTIONS(1060),
    [sym_yul_hex_number] = ACTIONS(1062),
    [anon_sym_true] = ACTIONS(1060),
    [anon_sym_false] = ACTIONS(1060),
    [anon_sym_hex] = ACTIONS(1060),
    [anon_sym_DQUOTE] = ACTIONS(1062),
    [anon_sym_SQUOTE] = ACTIONS(1062),
    [anon_sym_let] = ACTIONS(1060),
    [anon_sym_COLON_EQ] = ACTIONS(1064),
    [anon_sym_if] = ACTIONS(1060),
    [anon_sym_switch] = ACTIONS(1060),
    [anon_sym_function] = ACTIONS(1060),
    [anon_sym_stop] = ACTIONS(1060),
    [anon_sym_add] = ACTIONS(1060),
    [anon_sym_sub] = ACTIONS(1060),
    [anon_sym_mul] = ACTIONS(1060),
    [anon_sym_div] = ACTIONS(1060),
    [anon_sym_sdiv] = ACTIONS(1060),
    [anon_sym_mod] = ACTIONS(1060),
    [anon_sym_smod] = ACTIONS(1060),
    [anon_sym_exp] = ACTIONS(1060),
    [anon_sym_not] = ACTIONS(1060),
    [anon_sym_lt] = ACTIONS(1060),
    [anon_sym_gt] = ACTIONS(1060),
    [anon_sym_slt] = ACTIONS(1060),
    [anon_sym_sgt] = ACTIONS(1060),
    [anon_sym_eq] = ACTIONS(1060),
    [anon_sym_iszero] = ACTIONS(1060),
    [anon_sym_and] = ACTIONS(1060),
    [anon_sym_or] = ACTIONS(1060),
    [anon_sym_xor] = ACTIONS(1060),
    [anon_sym_byte] = ACTIONS(1060),
    [anon_sym_shl] = ACTIONS(1060),
    [anon_sym_shr] = ACTIONS(1060),
    [anon_sym_sar] = ACTIONS(1060),
    [anon_sym_addmod] = ACTIONS(1060),
    [anon_sym_mulmod] = ACTIONS(1060),
    [anon_sym_signextend] = ACTIONS(1060),
    [anon_sym_keccak256] = ACTIONS(1060),
    [anon_sym_pop] = ACTIONS(1060),
    [anon_sym_mload] = ACTIONS(1060),
    [anon_sym_mcopy] = ACTIONS(1060),
    [anon_sym_tload] = ACTIONS(1060),
    [anon_sym_tstore] = ACTIONS(1060),
    [anon_sym_mstore] = ACTIONS(1060),
    [anon_sym_mstore8] = ACTIONS(1060),
    [anon_sym_sload] = ACTIONS(1060),
    [anon_sym_sstore] = ACTIONS(1060),
    [anon_sym_msize] = ACTIONS(1060),
    [anon_sym_gas] = ACTIONS(1060),
    [anon_sym_address] = ACTIONS(1060),
    [anon_sym_balance] = ACTIONS(1060),
    [anon_sym_selfbalance] = ACTIONS(1060),
    [anon_sym_caller] = ACTIONS(1060),
    [anon_sym_callvalue] = ACTIONS(1060),
    [anon_sym_calldataload] = ACTIONS(1060),
    [anon_sym_calldatasize] = ACTIONS(1060),
    [anon_sym_calldatacopy] = ACTIONS(1060),
    [anon_sym_extcodesize] = ACTIONS(1060),
    [anon_sym_extcodecopy] = ACTIONS(1060),
    [anon_sym_returndatasize] = ACTIONS(1060),
    [anon_sym_returndatacopy] = ACTIONS(1060),
    [anon_sym_extcodehash] = ACTIONS(1060),
    [anon_sym_create] = ACTIONS(1060),
    [anon_sym_create2] = ACTIONS(1060),
    [anon_sym_call] = ACTIONS(1060),
    [anon_sym_callcode] = ACTIONS(1060),
    [anon_sym_delegatecall] = ACTIONS(1060),
    [anon_sym_staticcall] = ACTIONS(1060),
    [anon_sym_return] = ACTIONS(1060),
    [anon_sym_revert] = ACTIONS(1060),
    [anon_sym_selfdestruct] = ACTIONS(1060),
    [anon_sym_invalid] = ACTIONS(1060),
    [anon_sym_log0] = ACTIONS(1060),
    [anon_sym_log1] = ACTIONS(1060),
    [anon_sym_log2] = ACTIONS(1060),
    [anon_sym_log3] = ACTIONS(1060),
    [anon_sym_log4] = ACTIONS(1060),
    [anon_sym_chainid] = ACTIONS(1060),
    [anon_sym_origin] = ACTIONS(1060),
    [anon_sym_gasprice] = ACTIONS(1060),
    [anon_sym_blockhash] = ACTIONS(1060),
    [anon_sym_blobhash] = ACTIONS(1060),
    [anon_sym_basefee] = ACTIONS(1060),
    [anon_sym_blobfee] = ACTIONS(1060),
    [anon_sym_coinbase] = ACTIONS(1060),
    [anon_sym_timestamp] = ACTIONS(1060),
    [anon_sym_number] = ACTIONS(1060),
    [anon_sym_difficulty] = ACTIONS(1060),
    [anon_sym_gaslimit] = ACTIONS(1060),
    [anon_sym_prevrandao] = ACTIONS(1060),
    [anon_sym_blobbasefee] = ACTIONS(1060),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(286)] = {
    [sym__yul_assignment_operator] = STATE(353),
    [aux_sym_yul_assignment_repeat1] = STATE(293),
    [sym_identifier] = ACTIONS(1060),
    [anon_sym_LBRACE] = ACTIONS(1062),
    [anon_sym_COMMA] = ACTIONS(1066),
    [anon_sym_RBRACE] = ACTIONS(1062),
    [anon_sym_for] = ACTIONS(1060),
    [anon_sym_COLON] = ACTIONS(1039),
    [sym_yul_leave] = ACTIONS(1060),
    [anon_sym_break] = ACTIONS(1060),
    [anon_sym_continue] = ACTIONS(1060),
    [sym_yul_decimal_number] = ACTIONS(1060),
    [sym_yul_hex_number] = ACTIONS(1062),
    [anon_sym_true] = ACTIONS(1060),
    [anon_sym_false] = ACTIONS(1060),
    [anon_sym_hex] = ACTIONS(1060),
    [anon_sym_DQUOTE] = ACTIONS(1062),
    [anon_sym_SQUOTE] = ACTIONS(1062),
    [anon_sym_let] = ACTIONS(1060),
    [anon_sym_COLON_EQ] = ACTIONS(1064),
    [anon_sym_if] = ACTIONS(1060),
    [anon_sym_switch] = ACTIONS(1060),
    [anon_sym_function] = ACTIONS(1060),
    [anon_sym_stop] = ACTIONS(1060),
    [anon_sym_add] = ACTIONS(1060),
    [anon_sym_sub] = ACTIONS(1060),
    [anon_sym_mul] = ACTIONS(1060),
    [anon_sym_div] = ACTIONS(1060),
    [anon_sym_sdiv] = ACTIONS(1060),
    [anon_sym_mod] = ACTIONS(1060),
    [anon_sym_smod] = ACTIONS(1060),
    [anon_sym_exp] = ACTIONS(1060),
    [anon_sym_not] = ACTIONS(1060),
    [anon_sym_lt] = ACTIONS(1060),
    [anon_sym_gt] = ACTIONS(1060),
    [anon_sym_slt] = ACTIONS(1060),
    [anon_sym_sgt] = ACTIONS(1060),
    [anon_sym_eq] = ACTIONS(1060),
    [anon_sym_iszero] = ACTIONS(1060),
    [anon_sym_and] = ACTIONS(1060),
    [anon_sym_or] = ACTIONS(1060),
    [anon_sym_xor] = ACTIONS(1060),
    [anon_sym_byte] = ACTIONS(1060),
    [anon_sym_shl] = ACTIONS(1060),
    [anon_sym_shr] = ACTIONS(1060),
    [anon_sym_sar] = ACTIONS(1060),
    [anon_sym_addmod] = ACTIONS(1060),
    [anon_sym_mulmod] = ACTIONS(1060),
    [anon_sym_signextend] = ACTIONS(1060),
    [anon_sym_keccak256] = ACTIONS(1060),
    [anon_sym_pop] = ACTIONS(1060),
    [anon_sym_mload] = ACTIONS(1060),
    [anon_sym_mcopy] = ACTIONS(1060),
    [anon_sym_tload] = ACTIONS(1060),
    [anon_sym_tstore] = ACTIONS(1060),
    [anon_sym_mstore] = ACTIONS(1060),
    [anon_sym_mstore8] = ACTIONS(1060),
    [anon_sym_sload] = ACTIONS(1060),
    [anon_sym_sstore] = ACTIONS(1060),
    [anon_sym_msize] = ACTIONS(1060),
    [anon_sym_gas] = ACTIONS(1060),
    [anon_sym_address] = ACTIONS(1060),
    [anon_sym_balance] = ACTIONS(1060),
    [anon_sym_selfbalance] = ACTIONS(1060),
    [anon_sym_caller] = ACTIONS(1060),
    [anon_sym_callvalue] = ACTIONS(1060),
    [anon_sym_calldataload] = ACTIONS(1060),
    [anon_sym_calldatasize] = ACTIONS(1060),
    [anon_sym_calldatacopy] = ACTIONS(1060),
    [anon_sym_extcodesize] = ACTIONS(1060),
    [anon_sym_extcodecopy] = ACTIONS(1060),
    [anon_sym_returndatasize] = ACTIONS(1060),
    [anon_sym_returndatacopy] = ACTIONS(1060),
    [anon_sym_extcodehash] = ACTIONS(1060),
    [anon_sym_create] = ACTIONS(1060),
    [anon_sym_create2] = ACTIONS(1060),
    [anon_sym_call] = ACTIONS(1060),
    [anon_sym_callcode] = ACTIONS(1060),
    [anon_sym_delegatecall] = ACTIONS(1060),
    [anon_sym_staticcall] = ACTIONS(1060),
    [anon_sym_return] = ACTIONS(1060),
    [anon_sym_revert] = ACTIONS(1060),
    [anon_sym_selfdestruct] = ACTIONS(1060),
    [anon_sym_invalid] = ACTIONS(1060),
    [anon_sym_log0] = ACTIONS(1060),
    [anon_sym_log1] = ACTIONS(1060),
    [anon_sym_log2] = ACTIONS(1060),
    [anon_sym_log3] = ACTIONS(1060),
    [anon_sym_log4] = ACTIONS(1060),
    [anon_sym_chainid] = ACTIONS(1060),
    [anon_sym_origin] = ACTIONS(1060),
    [anon_sym_gasprice] = ACTIONS(1060),
    [anon_sym_blockhash] = ACTIONS(1060),
    [anon_sym_blobhash] = ACTIONS(1060),
    [anon_sym_basefee] = ACTIONS(1060),
    [anon_sym_blobfee] = ACTIONS(1060),
    [anon_sym_coinbase] = ACTIONS(1060),
    [anon_sym_timestamp] = ACTIONS(1060),
    [anon_sym_number] = ACTIONS(1060),
    [anon_sym_difficulty] = ACTIONS(1060),
    [anon_sym_gaslimit] = ACTIONS(1060),
    [anon_sym_prevrandao] = ACTIONS(1060),
    [anon_sym_blobbasefee] = ACTIONS(1060),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(287)] = {
    [aux_sym_yul_path_repeat1] = STATE(277),
    [sym_identifier] = ACTIONS(1010),
    [anon_sym_LBRACE] = ACTIONS(1012),
    [anon_sym_COMMA] = ACTIONS(1012),
    [anon_sym_RBRACE] = ACTIONS(1012),
    [anon_sym_for] = ACTIONS(1010),
    [anon_sym_COLON] = ACTIONS(1010),
    [sym_yul_leave] = ACTIONS(1010),
    [anon_sym_break] = ACTIONS(1010),
    [anon_sym_continue] = ACTIONS(1010),
    [anon_sym_DOT] = ACTIONS(1016),
    [sym_yul_decimal_number] = ACTIONS(1010),
    [sym_yul_hex_number] = ACTIONS(1012),
    [anon_sym_true] = ACTIONS(1010),
    [anon_sym_false] = ACTIONS(1010),
    [anon_sym_hex] = ACTIONS(1010),
    [anon_sym_DQUOTE] = ACTIONS(1012),
    [anon_sym_SQUOTE] = ACTIONS(1012),
    [anon_sym_let] = ACTIONS(1010),
    [anon_sym_COLON_EQ] = ACTIONS(1012),
    [anon_sym_if] = ACTIONS(1010),
    [anon_sym_switch] = ACTIONS(1010),
    [anon_sym_function] = ACTIONS(1010),
    [anon_sym_stop] = ACTIONS(1010),
    [anon_sym_add] = ACTIONS(1010),
    [anon_sym_sub] = ACTIONS(1010),
    [anon_sym_mul] = ACTIONS(1010),
    [anon_sym_div] = ACTIONS(1010),
    [anon_sym_sdiv] = ACTIONS(1010),
    [anon_sym_mod] = ACTIONS(1010),
    [anon_sym_smod] = ACTIONS(1010),
    [anon_sym_exp] = ACTIONS(1010),
    [anon_sym_not] = ACTIONS(1010),
    [anon_sym_lt] = ACTIONS(1010),
    [anon_sym_gt] = ACTIONS(1010),
    [anon_sym_slt] = ACTIONS(1010),
    [anon_sym_sgt] = ACTIONS(1010),
    [anon_sym_eq] = ACTIONS(1010),
    [anon_sym_iszero] = ACTIONS(1010),
    [anon_sym_and] = ACTIONS(1010),
    [anon_sym_or] = ACTIONS(1010),
    [anon_sym_xor] = ACTIONS(1010),
    [anon_sym_byte] = ACTIONS(1010),
    [anon_sym_shl] = ACTIONS(1010),
    [anon_sym_shr] = ACTIONS(1010),
    [anon_sym_sar] = ACTIONS(1010),
    [anon_sym_addmod] = ACTIONS(1010),
    [anon_sym_mulmod] = ACTIONS(1010),
    [anon_sym_signextend] = ACTIONS(1010),
    [anon_sym_keccak256] = ACTIONS(1010),
    [anon_sym_pop] = ACTIONS(1010),
    [anon_sym_mload] = ACTIONS(1010),
    [anon_sym_mcopy] = ACTIONS(1010),
    [anon_sym_tload] = ACTIONS(1010),
    [anon_sym_tstore] = ACTIONS(1010),
    [anon_sym_mstore] = ACTIONS(1010),
    [anon_sym_mstore8] = ACTIONS(1010),
    [anon_sym_sload] = ACTIONS(1010),
    [anon_sym_sstore] = ACTIONS(1010),
    [anon_sym_msize] = ACTIONS(1010),
    [anon_sym_gas] = ACTIONS(1010),
    [anon_sym_address] = ACTIONS(1010),
    [anon_sym_balance] = ACTIONS(1010),
    [anon_sym_selfbalance] = ACTIONS(1010),
    [anon_sym_caller] = ACTIONS(1010),
    [anon_sym_callvalue] = ACTIONS(1010),
    [anon_sym_calldataload] = ACTIONS(1010),
    [anon_sym_calldatasize] = ACTIONS(1010),
    [anon_sym_calldatacopy] = ACTIONS(1010),
    [anon_sym_extcodesize] = ACTIONS(1010),
    [anon_sym_extcodecopy] = ACTIONS(1010),
    [anon_sym_returndatasize] = ACTIONS(1010),
    [anon_sym_returndatacopy] = ACTIONS(1010),
    [anon_sym_extcodehash] = ACTIONS(1010),
    [anon_sym_create] = ACTIONS(1010),
    [anon_sym_create2] = ACTIONS(1010),
    [anon_sym_call] = ACTIONS(1010),
    [anon_sym_callcode] = ACTIONS(1010),
    [anon_sym_delegatecall] = ACTIONS(1010),
    [anon_sym_staticcall] = ACTIONS(1010),
    [anon_sym_return] = ACTIONS(1010),
    [anon_sym_revert] = ACTIONS(1010),
    [anon_sym_selfdestruct] = ACTIONS(1010),
    [anon_sym_invalid] = ACTIONS(1010),
    [anon_sym_log0] = ACTIONS(1010),
    [anon_sym_log1] = ACTIONS(1010),
    [anon_sym_log2] = ACTIONS(1010),
    [anon_sym_log3] = ACTIONS(1010),
    [anon_sym_log4] = ACTIONS(1010),
    [anon_sym_chainid] = ACTIONS(1010),
    [anon_sym_origin] = ACTIONS(1010),
    [anon_sym_gasprice] = ACTIONS(1010),
    [anon_sym_blockhash] = ACTIONS(1010),
    [anon_sym_blobhash] = ACTIONS(1010),
    [anon_sym_basefee] = ACTIONS(1010),
    [anon_sym_blobfee] = ACTIONS(1010),
    [anon_sym_coinbase] = ACTIONS(1010),
    [anon_sym_timestamp] = ACTIONS(1010),
    [anon_sym_number] = ACTIONS(1010),
    [anon_sym_difficulty] = ACTIONS(1010),
    [anon_sym_gaslimit] = ACTIONS(1010),
    [anon_sym_prevrandao] = ACTIONS(1010),
    [anon_sym_blobbasefee] = ACTIONS(1010),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(288)] = {
    [sym_identifier] = ACTIONS(1068),
    [anon_sym_LBRACE] = ACTIONS(1070),
    [anon_sym_COMMA] = ACTIONS(1070),
    [anon_sym_RBRACE] = ACTIONS(1070),
    [anon_sym_RPAREN] = ACTIONS(1070),
    [anon_sym_for] = ACTIONS(1068),
    [sym_yul_leave] = ACTIONS(1068),
    [anon_sym_break] = ACTIONS(1068),
    [anon_sym_continue] = ACTIONS(1068),
    [sym_yul_decimal_number] = ACTIONS(1068),
    [sym_yul_hex_number] = ACTIONS(1070),
    [anon_sym_true] = ACTIONS(1068),
    [anon_sym_false] = ACTIONS(1068),
    [anon_sym_hex] = ACTIONS(1068),
    [anon_sym_DQUOTE] = ACTIONS(1070),
    [anon_sym_SQUOTE] = ACTIONS(1070),
    [anon_sym_let] = ACTIONS(1068),
    [anon_sym_if] = ACTIONS(1068),
    [anon_sym_switch] = ACTIONS(1068),
    [anon_sym_default] = ACTIONS(1068),
    [anon_sym_case] = ACTIONS(1068),
    [anon_sym_function] = ACTIONS(1068),
    [anon_sym_stop] = ACTIONS(1068),
    [anon_sym_add] = ACTIONS(1068),
    [anon_sym_sub] = ACTIONS(1068),
    [anon_sym_mul] = ACTIONS(1068),
    [anon_sym_div] = ACTIONS(1068),
    [anon_sym_sdiv] = ACTIONS(1068),
    [anon_sym_mod] = ACTIONS(1068),
    [anon_sym_smod] = ACTIONS(1068),
    [anon_sym_exp] = ACTIONS(1068),
    [anon_sym_not] = ACTIONS(1068),
    [anon_sym_lt] = ACTIONS(1068),
    [anon_sym_gt] = ACTIONS(1068),
    [anon_sym_slt] = ACTIONS(1068),
    [anon_sym_sgt] = ACTIONS(1068),
    [anon_sym_eq] = ACTIONS(1068),
    [anon_sym_iszero] = ACTIONS(1068),
    [anon_sym_and] = ACTIONS(1068),
    [anon_sym_or] = ACTIONS(1068),
    [anon_sym_xor] = ACTIONS(1068),
    [anon_sym_byte] = ACTIONS(1068),
    [anon_sym_shl] = ACTIONS(1068),
    [anon_sym_shr] = ACTIONS(1068),
    [anon_sym_sar] = ACTIONS(1068),
    [anon_sym_addmod] = ACTIONS(1068),
    [anon_sym_mulmod] = ACTIONS(1068),
    [anon_sym_signextend] = ACTIONS(1068),
    [anon_sym_keccak256] = ACTIONS(1068),
    [anon_sym_pop] = ACTIONS(1068),
    [anon_sym_mload] = ACTIONS(1068),
    [anon_sym_mcopy] = ACTIONS(1068),
    [anon_sym_tload] = ACTIONS(1068),
    [anon_sym_tstore] = ACTIONS(1068),
    [anon_sym_mstore] = ACTIONS(1068),
    [anon_sym_mstore8] = ACTIONS(1068),
    [anon_sym_sload] = ACTIONS(1068),
    [anon_sym_sstore] = ACTIONS(1068),
    [anon_sym_msize] = ACTIONS(1068),
    [anon_sym_gas] = ACTIONS(1068),
    [anon_sym_address] = ACTIONS(1068),
    [anon_sym_balance] = ACTIONS(1068),
    [anon_sym_selfbalance] = ACTIONS(1068),
    [anon_sym_caller] = ACTIONS(1068),
    [anon_sym_callvalue] = ACTIONS(1068),
    [anon_sym_calldataload] = ACTIONS(1068),
    [anon_sym_calldatasize] = ACTIONS(1068),
    [anon_sym_calldatacopy] = ACTIONS(1068),
    [anon_sym_extcodesize] = ACTIONS(1068),
    [anon_sym_extcodecopy] = ACTIONS(1068),
    [anon_sym_returndatasize] = ACTIONS(1068),
    [anon_sym_returndatacopy] = ACTIONS(1068),
    [anon_sym_extcodehash] = ACTIONS(1068),
    [anon_sym_create] = ACTIONS(1068),
    [anon_sym_create2] = ACTIONS(1068),
    [anon_sym_call] = ACTIONS(1068),
    [anon_sym_callcode] = ACTIONS(1068),
    [anon_sym_delegatecall] = ACTIONS(1068),
    [anon_sym_staticcall] = ACTIONS(1068),
    [anon_sym_return] = ACTIONS(1068),
    [anon_sym_revert] = ACTIONS(1068),
    [anon_sym_selfdestruct] = ACTIONS(1068),
    [anon_sym_invalid] = ACTIONS(1068),
    [anon_sym_log0] = ACTIONS(1068),
    [anon_sym_log1] = ACTIONS(1068),
    [anon_sym_log2] = ACTIONS(1068),
    [anon_sym_log3] = ACTIONS(1068),
    [anon_sym_log4] = ACTIONS(1068),
    [anon_sym_chainid] = ACTIONS(1068),
    [anon_sym_origin] = ACTIONS(1068),
    [anon_sym_gasprice] = ACTIONS(1068),
    [anon_sym_blockhash] = ACTIONS(1068),
    [anon_sym_blobhash] = ACTIONS(1068),
    [anon_sym_basefee] = ACTIONS(1068),
    [anon_sym_blobfee] = ACTIONS(1068),
    [anon_sym_coinbase] = ACTIONS(1068),
    [anon_sym_timestamp] = ACTIONS(1068),
    [anon_sym_number] = ACTIONS(1068),
    [anon_sym_difficulty] = ACTIONS(1068),
    [anon_sym_gaslimit] = ACTIONS(1068),
    [anon_sym_prevrandao] = ACTIONS(1068),
    [anon_sym_blobbasefee] = ACTIONS(1068),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(289)] = {
    [sym_identifier] = ACTIONS(1072),
    [anon_sym_LBRACE] = ACTIONS(1074),
    [anon_sym_COMMA] = ACTIONS(1074),
    [anon_sym_RBRACE] = ACTIONS(1074),
    [anon_sym_RPAREN] = ACTIONS(1074),
    [anon_sym_for] = ACTIONS(1072),
    [sym_yul_leave] = ACTIONS(1072),
    [anon_sym_break] = ACTIONS(1072),
    [anon_sym_continue] = ACTIONS(1072),
    [sym_yul_decimal_number] = ACTIONS(1072),
    [sym_yul_hex_number] = ACTIONS(1074),
    [anon_sym_true] = ACTIONS(1072),
    [anon_sym_false] = ACTIONS(1072),
    [anon_sym_hex] = ACTIONS(1072),
    [anon_sym_DQUOTE] = ACTIONS(1074),
    [anon_sym_SQUOTE] = ACTIONS(1074),
    [anon_sym_let] = ACTIONS(1072),
    [anon_sym_if] = ACTIONS(1072),
    [anon_sym_switch] = ACTIONS(1072),
    [anon_sym_default] = ACTIONS(1072),
    [anon_sym_case] = ACTIONS(1072),
    [anon_sym_function] = ACTIONS(1072),
    [anon_sym_stop] = ACTIONS(1072),
    [anon_sym_add] = ACTIONS(1072),
    [anon_sym_sub] = ACTIONS(1072),
    [anon_sym_mul] = ACTIONS(1072),
    [anon_sym_div] = ACTIONS(1072),
    [anon_sym_sdiv] = ACTIONS(1072),
    [anon_sym_mod] = ACTIONS(1072),
    [anon_sym_smod] = ACTIONS(1072),
    [anon_sym_exp] = ACTIONS(1072),
    [anon_sym_not] = ACTIONS(1072),
    [anon_sym_lt] = ACTIONS(1072),
    [anon_sym_gt] = ACTIONS(1072),
    [anon_sym_slt] = ACTIONS(1072),
    [anon_sym_sgt] = ACTIONS(1072),
    [anon_sym_eq] = ACTIONS(1072),
    [anon_sym_iszero] = ACTIONS(1072),
    [anon_sym_and] = ACTIONS(1072),
    [anon_sym_or] = ACTIONS(1072),
    [anon_sym_xor] = ACTIONS(1072),
    [anon_sym_byte] = ACTIONS(1072),
    [anon_sym_shl] = ACTIONS(1072),
    [anon_sym_shr] = ACTIONS(1072),
    [anon_sym_sar] = ACTIONS(1072),
    [anon_sym_addmod] = ACTIONS(1072),
    [anon_sym_mulmod] = ACTIONS(1072),
    [anon_sym_signextend] = ACTIONS(1072),
    [anon_sym_keccak256] = ACTIONS(1072),
    [anon_sym_pop] = ACTIONS(1072),
    [anon_sym_mload] = ACTIONS(1072),
    [anon_sym_mcopy] = ACTIONS(1072),
    [anon_sym_tload] = ACTIONS(1072),
    [anon_sym_tstore] = ACTIONS(1072),
    [anon_sym_mstore] = ACTIONS(1072),
    [anon_sym_mstore8] = ACTIONS(1072),
    [anon_sym_sload] = ACTIONS(1072),
    [anon_sym_sstore] = ACTIONS(1072),
    [anon_sym_msize] = ACTIONS(1072),
    [anon_sym_gas] = ACTIONS(1072),
    [anon_sym_address] = ACTIONS(1072),
    [anon_sym_balance] = ACTIONS(1072),
    [anon_sym_selfbalance] = ACTIONS(1072),
    [anon_sym_caller] = ACTIONS(1072),
    [anon_sym_callvalue] = ACTIONS(1072),
    [anon_sym_calldataload] = ACTIONS(1072),
    [anon_sym_calldatasize] = ACTIONS(1072),
    [anon_sym_calldatacopy] = ACTIONS(1072),
    [anon_sym_extcodesize] = ACTIONS(1072),
    [anon_sym_extcodecopy] = ACTIONS(1072),
    [anon_sym_returndatasize] = ACTIONS(1072),
    [anon_sym_returndatacopy] = ACTIONS(1072),
    [anon_sym_extcodehash] = ACTIONS(1072),
    [anon_sym_create] = ACTIONS(1072),
    [anon_sym_create2] = ACTIONS(1072),
    [anon_sym_call] = ACTIONS(1072),
    [anon_sym_callcode] = ACTIONS(1072),
    [anon_sym_delegatecall] = ACTIONS(1072),
    [anon_sym_staticcall] = ACTIONS(1072),
    [anon_sym_return] = ACTIONS(1072),
    [anon_sym_revert] = ACTIONS(1072),
    [anon_sym_selfdestruct] = ACTIONS(1072),
    [anon_sym_invalid] = ACTIONS(1072),
    [anon_sym_log0] = ACTIONS(1072),
    [anon_sym_log1] = ACTIONS(1072),
    [anon_sym_log2] = ACTIONS(1072),
    [anon_sym_log3] = ACTIONS(1072),
    [anon_sym_log4] = ACTIONS(1072),
    [anon_sym_chainid] = ACTIONS(1072),
    [anon_sym_origin] = ACTIONS(1072),
    [anon_sym_gasprice] = ACTIONS(1072),
    [anon_sym_blockhash] = ACTIONS(1072),
    [anon_sym_blobhash] = ACTIONS(1072),
    [anon_sym_basefee] = ACTIONS(1072),
    [anon_sym_blobfee] = ACTIONS(1072),
    [anon_sym_coinbase] = ACTIONS(1072),
    [anon_sym_timestamp] = ACTIONS(1072),
    [anon_sym_number] = ACTIONS(1072),
    [anon_sym_difficulty] = ACTIONS(1072),
    [anon_sym_gaslimit] = ACTIONS(1072),
    [anon_sym_prevrandao] = ACTIONS(1072),
    [anon_sym_blobbasefee] = ACTIONS(1072),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(290)] = {
    [sym_identifier] = ACTIONS(1076),
    [anon_sym_LBRACE] = ACTIONS(1078),
    [anon_sym_COMMA] = ACTIONS(1078),
    [anon_sym_RBRACE] = ACTIONS(1078),
    [anon_sym_RPAREN] = ACTIONS(1078),
    [anon_sym_for] = ACTIONS(1076),
    [sym_yul_leave] = ACTIONS(1076),
    [anon_sym_break] = ACTIONS(1076),
    [anon_sym_continue] = ACTIONS(1076),
    [sym_yul_decimal_number] = ACTIONS(1076),
    [sym_yul_hex_number] = ACTIONS(1078),
    [anon_sym_true] = ACTIONS(1076),
    [anon_sym_false] = ACTIONS(1076),
    [anon_sym_hex] = ACTIONS(1076),
    [anon_sym_DQUOTE] = ACTIONS(1078),
    [anon_sym_SQUOTE] = ACTIONS(1078),
    [anon_sym_let] = ACTIONS(1076),
    [anon_sym_if] = ACTIONS(1076),
    [anon_sym_switch] = ACTIONS(1076),
    [anon_sym_default] = ACTIONS(1076),
    [anon_sym_case] = ACTIONS(1076),
    [anon_sym_function] = ACTIONS(1076),
    [anon_sym_stop] = ACTIONS(1076),
    [anon_sym_add] = ACTIONS(1076),
    [anon_sym_sub] = ACTIONS(1076),
    [anon_sym_mul] = ACTIONS(1076),
    [anon_sym_div] = ACTIONS(1076),
    [anon_sym_sdiv] = ACTIONS(1076),
    [anon_sym_mod] = ACTIONS(1076),
    [anon_sym_smod] = ACTIONS(1076),
    [anon_sym_exp] = ACTIONS(1076),
    [anon_sym_not] = ACTIONS(1076),
    [anon_sym_lt] = ACTIONS(1076),
    [anon_sym_gt] = ACTIONS(1076),
    [anon_sym_slt] = ACTIONS(1076),
    [anon_sym_sgt] = ACTIONS(1076),
    [anon_sym_eq] = ACTIONS(1076),
    [anon_sym_iszero] = ACTIONS(1076),
    [anon_sym_and] = ACTIONS(1076),
    [anon_sym_or] = ACTIONS(1076),
    [anon_sym_xor] = ACTIONS(1076),
    [anon_sym_byte] = ACTIONS(1076),
    [anon_sym_shl] = ACTIONS(1076),
    [anon_sym_shr] = ACTIONS(1076),
    [anon_sym_sar] = ACTIONS(1076),
    [anon_sym_addmod] = ACTIONS(1076),
    [anon_sym_mulmod] = ACTIONS(1076),
    [anon_sym_signextend] = ACTIONS(1076),
    [anon_sym_keccak256] = ACTIONS(1076),
    [anon_sym_pop] = ACTIONS(1076),
    [anon_sym_mload] = ACTIONS(1076),
    [anon_sym_mcopy] = ACTIONS(1076),
    [anon_sym_tload] = ACTIONS(1076),
    [anon_sym_tstore] = ACTIONS(1076),
    [anon_sym_mstore] = ACTIONS(1076),
    [anon_sym_mstore8] = ACTIONS(1076),
    [anon_sym_sload] = ACTIONS(1076),
    [anon_sym_sstore] = ACTIONS(1076),
    [anon_sym_msize] = ACTIONS(1076),
    [anon_sym_gas] = ACTIONS(1076),
    [anon_sym_address] = ACTIONS(1076),
    [anon_sym_balance] = ACTIONS(1076),
    [anon_sym_selfbalance] = ACTIONS(1076),
    [anon_sym_caller] = ACTIONS(1076),
    [anon_sym_callvalue] = ACTIONS(1076),
    [anon_sym_calldataload] = ACTIONS(1076),
    [anon_sym_calldatasize] = ACTIONS(1076),
    [anon_sym_calldatacopy] = ACTIONS(1076),
    [anon_sym_extcodesize] = ACTIONS(1076),
    [anon_sym_extcodecopy] = ACTIONS(1076),
    [anon_sym_returndatasize] = ACTIONS(1076),
    [anon_sym_returndatacopy] = ACTIONS(1076),
    [anon_sym_extcodehash] = ACTIONS(1076),
    [anon_sym_create] = ACTIONS(1076),
    [anon_sym_create2] = ACTIONS(1076),
    [anon_sym_call] = ACTIONS(1076),
    [anon_sym_callcode] = ACTIONS(1076),
    [anon_sym_delegatecall] = ACTIONS(1076),
    [anon_sym_staticcall] = ACTIONS(1076),
    [anon_sym_return] = ACTIONS(1076),
    [anon_sym_revert] = ACTIONS(1076),
    [anon_sym_selfdestruct] = ACTIONS(1076),
    [anon_sym_invalid] = ACTIONS(1076),
    [anon_sym_log0] = ACTIONS(1076),
    [anon_sym_log1] = ACTIONS(1076),
    [anon_sym_log2] = ACTIONS(1076),
    [anon_sym_log3] = ACTIONS(1076),
    [anon_sym_log4] = ACTIONS(1076),
    [anon_sym_chainid] = ACTIONS(1076),
    [anon_sym_origin] = ACTIONS(1076),
    [anon_sym_gasprice] = ACTIONS(1076),
    [anon_sym_blockhash] = ACTIONS(1076),
    [anon_sym_blobhash] = ACTIONS(1076),
    [anon_sym_basefee] = ACTIONS(1076),
    [anon_sym_blobfee] = ACTIONS(1076),
    [anon_sym_coinbase] = ACTIONS(1076),
    [anon_sym_timestamp] = ACTIONS(1076),
    [anon_sym_number] = ACTIONS(1076),
    [anon_sym_difficulty] = ACTIONS(1076),
    [anon_sym_gaslimit] = ACTIONS(1076),
    [anon_sym_prevrandao] = ACTIONS(1076),
    [anon_sym_blobbasefee] = ACTIONS(1076),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(291)] = {
    [sym_identifier] = ACTIONS(1080),
    [anon_sym_LBRACE] = ACTIONS(1082),
    [anon_sym_COMMA] = ACTIONS(1082),
    [anon_sym_RBRACE] = ACTIONS(1082),
    [anon_sym_RPAREN] = ACTIONS(1082),
    [anon_sym_for] = ACTIONS(1080),
    [sym_yul_leave] = ACTIONS(1080),
    [anon_sym_break] = ACTIONS(1080),
    [anon_sym_continue] = ACTIONS(1080),
    [sym_yul_decimal_number] = ACTIONS(1080),
    [sym_yul_hex_number] = ACTIONS(1082),
    [anon_sym_true] = ACTIONS(1080),
    [anon_sym_false] = ACTIONS(1080),
    [anon_sym_hex] = ACTIONS(1080),
    [anon_sym_DQUOTE] = ACTIONS(1082),
    [anon_sym_SQUOTE] = ACTIONS(1082),
    [anon_sym_let] = ACTIONS(1080),
    [anon_sym_if] = ACTIONS(1080),
    [anon_sym_switch] = ACTIONS(1080),
    [anon_sym_default] = ACTIONS(1080),
    [anon_sym_case] = ACTIONS(1080),
    [anon_sym_function] = ACTIONS(1080),
    [anon_sym_stop] = ACTIONS(1080),
    [anon_sym_add] = ACTIONS(1080),
    [anon_sym_sub] = ACTIONS(1080),
    [anon_sym_mul] = ACTIONS(1080),
    [anon_sym_div] = ACTIONS(1080),
    [anon_sym_sdiv] = ACTIONS(1080),
    [anon_sym_mod] = ACTIONS(1080),
    [anon_sym_smod] = ACTIONS(1080),
    [anon_sym_exp] = ACTIONS(1080),
    [anon_sym_not] = ACTIONS(1080),
    [anon_sym_lt] = ACTIONS(1080),
    [anon_sym_gt] = ACTIONS(1080),
    [anon_sym_slt] = ACTIONS(1080),
    [anon_sym_sgt] = ACTIONS(1080),
    [anon_sym_eq] = ACTIONS(1080),
    [anon_sym_iszero] = ACTIONS(1080),
    [anon_sym_and] = ACTIONS(1080),
    [anon_sym_or] = ACTIONS(1080),
    [anon_sym_xor] = ACTIONS(1080),
    [anon_sym_byte] = ACTIONS(1080),
    [anon_sym_shl] = ACTIONS(1080),
    [anon_sym_shr] = ACTIONS(1080),
    [anon_sym_sar] = ACTIONS(1080),
    [anon_sym_addmod] = ACTIONS(1080),
    [anon_sym_mulmod] = ACTIONS(1080),
    [anon_sym_signextend] = ACTIONS(1080),
    [anon_sym_keccak256] = ACTIONS(1080),
    [anon_sym_pop] = ACTIONS(1080),
    [anon_sym_mload] = ACTIONS(1080),
    [anon_sym_mcopy] = ACTIONS(1080),
    [anon_sym_tload] = ACTIONS(1080),
    [anon_sym_tstore] = ACTIONS(1080),
    [anon_sym_mstore] = ACTIONS(1080),
    [anon_sym_mstore8] = ACTIONS(1080),
    [anon_sym_sload] = ACTIONS(1080),
    [anon_sym_sstore] = ACTIONS(1080),
    [anon_sym_msize] = ACTIONS(1080),
    [anon_sym_gas] = ACTIONS(1080),
    [anon_sym_address] = ACTIONS(1080),
    [anon_sym_balance] = ACTIONS(1080),
    [anon_sym_selfbalance] = ACTIONS(1080),
    [anon_sym_caller] = ACTIONS(1080),
    [anon_sym_callvalue] = ACTIONS(1080),
    [anon_sym_calldataload] = ACTIONS(1080),
    [anon_sym_calldatasize] = ACTIONS(1080),
    [anon_sym_calldatacopy] = ACTIONS(1080),
    [anon_sym_extcodesize] = ACTIONS(1080),
    [anon_sym_extcodecopy] = ACTIONS(1080),
    [anon_sym_returndatasize] = ACTIONS(1080),
    [anon_sym_returndatacopy] = ACTIONS(1080),
    [anon_sym_extcodehash] = ACTIONS(1080),
    [anon_sym_create] = ACTIONS(1080),
    [anon_sym_create2] = ACTIONS(1080),
    [anon_sym_call] = ACTIONS(1080),
    [anon_sym_callcode] = ACTIONS(1080),
    [anon_sym_delegatecall] = ACTIONS(1080),
    [anon_sym_staticcall] = ACTIONS(1080),
    [anon_sym_return] = ACTIONS(1080),
    [anon_sym_revert] = ACTIONS(1080),
    [anon_sym_selfdestruct] = ACTIONS(1080),
    [anon_sym_invalid] = ACTIONS(1080),
    [anon_sym_log0] = ACTIONS(1080),
    [anon_sym_log1] = ACTIONS(1080),
    [anon_sym_log2] = ACTIONS(1080),
    [anon_sym_log3] = ACTIONS(1080),
    [anon_sym_log4] = ACTIONS(1080),
    [anon_sym_chainid] = ACTIONS(1080),
    [anon_sym_origin] = ACTIONS(1080),
    [anon_sym_gasprice] = ACTIONS(1080),
    [anon_sym_blockhash] = ACTIONS(1080),
    [anon_sym_blobhash] = ACTIONS(1080),
    [anon_sym_basefee] = ACTIONS(1080),
    [anon_sym_blobfee] = ACTIONS(1080),
    [anon_sym_coinbase] = ACTIONS(1080),
    [anon_sym_timestamp] = ACTIONS(1080),
    [anon_sym_number] = ACTIONS(1080),
    [anon_sym_difficulty] = ACTIONS(1080),
    [anon_sym_gaslimit] = ACTIONS(1080),
    [anon_sym_prevrandao] = ACTIONS(1080),
    [anon_sym_blobbasefee] = ACTIONS(1080),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(292)] = {
    [sym_identifier] = ACTIONS(1084),
    [anon_sym_LBRACE] = ACTIONS(1086),
    [anon_sym_COMMA] = ACTIONS(1086),
    [anon_sym_RBRACE] = ACTIONS(1086),
    [anon_sym_RPAREN] = ACTIONS(1086),
    [anon_sym_for] = ACTIONS(1084),
    [sym_yul_leave] = ACTIONS(1084),
    [anon_sym_break] = ACTIONS(1084),
    [anon_sym_continue] = ACTIONS(1084),
    [sym_yul_decimal_number] = ACTIONS(1084),
    [sym_yul_hex_number] = ACTIONS(1086),
    [anon_sym_true] = ACTIONS(1084),
    [anon_sym_false] = ACTIONS(1084),
    [anon_sym_hex] = ACTIONS(1084),
    [anon_sym_DQUOTE] = ACTIONS(1086),
    [anon_sym_SQUOTE] = ACTIONS(1086),
    [anon_sym_let] = ACTIONS(1084),
    [anon_sym_if] = ACTIONS(1084),
    [anon_sym_switch] = ACTIONS(1084),
    [anon_sym_default] = ACTIONS(1084),
    [anon_sym_case] = ACTIONS(1084),
    [anon_sym_function] = ACTIONS(1084),
    [anon_sym_stop] = ACTIONS(1084),
    [anon_sym_add] = ACTIONS(1084),
    [anon_sym_sub] = ACTIONS(1084),
    [anon_sym_mul] = ACTIONS(1084),
    [anon_sym_div] = ACTIONS(1084),
    [anon_sym_sdiv] = ACTIONS(1084),
    [anon_sym_mod] = ACTIONS(1084),
    [anon_sym_smod] = ACTIONS(1084),
    [anon_sym_exp] = ACTIONS(1084),
    [anon_sym_not] = ACTIONS(1084),
    [anon_sym_lt] = ACTIONS(1084),
    [anon_sym_gt] = ACTIONS(1084),
    [anon_sym_slt] = ACTIONS(1084),
    [anon_sym_sgt] = ACTIONS(1084),
    [anon_sym_eq] = ACTIONS(1084),
    [anon_sym_iszero] = ACTIONS(1084),
    [anon_sym_and] = ACTIONS(1084),
    [anon_sym_or] = ACTIONS(1084),
    [anon_sym_xor] = ACTIONS(1084),
    [anon_sym_byte] = ACTIONS(1084),
    [anon_sym_shl] = ACTIONS(1084),
    [anon_sym_shr] = ACTIONS(1084),
    [anon_sym_sar] = ACTIONS(1084),
    [anon_sym_addmod] = ACTIONS(1084),
    [anon_sym_mulmod] = ACTIONS(1084),
    [anon_sym_signextend] = ACTIONS(1084),
    [anon_sym_keccak256] = ACTIONS(1084),
    [anon_sym_pop] = ACTIONS(1084),
    [anon_sym_mload] = ACTIONS(1084),
    [anon_sym_mcopy] = ACTIONS(1084),
    [anon_sym_tload] = ACTIONS(1084),
    [anon_sym_tstore] = ACTIONS(1084),
    [anon_sym_mstore] = ACTIONS(1084),
    [anon_sym_mstore8] = ACTIONS(1084),
    [anon_sym_sload] = ACTIONS(1084),
    [anon_sym_sstore] = ACTIONS(1084),
    [anon_sym_msize] = ACTIONS(1084),
    [anon_sym_gas] = ACTIONS(1084),
    [anon_sym_address] = ACTIONS(1084),
    [anon_sym_balance] = ACTIONS(1084),
    [anon_sym_selfbalance] = ACTIONS(1084),
    [anon_sym_caller] = ACTIONS(1084),
    [anon_sym_callvalue] = ACTIONS(1084),
    [anon_sym_calldataload] = ACTIONS(1084),
    [anon_sym_calldatasize] = ACTIONS(1084),
    [anon_sym_calldatacopy] = ACTIONS(1084),
    [anon_sym_extcodesize] = ACTIONS(1084),
    [anon_sym_extcodecopy] = ACTIONS(1084),
    [anon_sym_returndatasize] = ACTIONS(1084),
    [anon_sym_returndatacopy] = ACTIONS(1084),
    [anon_sym_extcodehash] = ACTIONS(1084),
    [anon_sym_create] = ACTIONS(1084),
    [anon_sym_create2] = ACTIONS(1084),
    [anon_sym_call] = ACTIONS(1084),
    [anon_sym_callcode] = ACTIONS(1084),
    [anon_sym_delegatecall] = ACTIONS(1084),
    [anon_sym_staticcall] = ACTIONS(1084),
    [anon_sym_return] = ACTIONS(1084),
    [anon_sym_revert] = ACTIONS(1084),
    [anon_sym_selfdestruct] = ACTIONS(1084),
    [anon_sym_invalid] = ACTIONS(1084),
    [anon_sym_log0] = ACTIONS(1084),
    [anon_sym_log1] = ACTIONS(1084),
    [anon_sym_log2] = ACTIONS(1084),
    [anon_sym_log3] = ACTIONS(1084),
    [anon_sym_log4] = ACTIONS(1084),
    [anon_sym_chainid] = ACTIONS(1084),
    [anon_sym_origin] = ACTIONS(1084),
    [anon_sym_gasprice] = ACTIONS(1084),
    [anon_sym_blockhash] = ACTIONS(1084),
    [anon_sym_blobhash] = ACTIONS(1084),
    [anon_sym_basefee] = ACTIONS(1084),
    [anon_sym_blobfee] = ACTIONS(1084),
    [anon_sym_coinbase] = ACTIONS(1084),
    [anon_sym_timestamp] = ACTIONS(1084),
    [anon_sym_number] = ACTIONS(1084),
    [anon_sym_difficulty] = ACTIONS(1084),
    [anon_sym_gaslimit] = ACTIONS(1084),
    [anon_sym_prevrandao] = ACTIONS(1084),
    [anon_sym_blobbasefee] = ACTIONS(1084),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(293)] = {
    [aux_sym_yul_assignment_repeat1] = STATE(293),
    [sym_identifier] = ACTIONS(1088),
    [anon_sym_LBRACE] = ACTIONS(1090),
    [anon_sym_COMMA] = ACTIONS(1092),
    [anon_sym_RBRACE] = ACTIONS(1090),
    [anon_sym_for] = ACTIONS(1088),
    [anon_sym_COLON] = ACTIONS(1088),
    [sym_yul_leave] = ACTIONS(1088),
    [anon_sym_break] = ACTIONS(1088),
    [anon_sym_continue] = ACTIONS(1088),
    [sym_yul_decimal_number] = ACTIONS(1088),
    [sym_yul_hex_number] = ACTIONS(1090),
    [anon_sym_true] = ACTIONS(1088),
    [anon_sym_false] = ACTIONS(1088),
    [anon_sym_hex] = ACTIONS(1088),
    [anon_sym_DQUOTE] = ACTIONS(1090),
    [anon_sym_SQUOTE] = ACTIONS(1090),
    [anon_sym_let] = ACTIONS(1088),
    [anon_sym_COLON_EQ] = ACTIONS(1090),
    [anon_sym_if] = ACTIONS(1088),
    [anon_sym_switch] = ACTIONS(1088),
    [anon_sym_function] = ACTIONS(1088),
    [anon_sym_stop] = ACTIONS(1088),
    [anon_sym_add] = ACTIONS(1088),
    [anon_sym_sub] = ACTIONS(1088),
    [anon_sym_mul] = ACTIONS(1088),
    [anon_sym_div] = ACTIONS(1088),
    [anon_sym_sdiv] = ACTIONS(1088),
    [anon_sym_mod] = ACTIONS(1088),
    [anon_sym_smod] = ACTIONS(1088),
    [anon_sym_exp] = ACTIONS(1088),
    [anon_sym_not] = ACTIONS(1088),
    [anon_sym_lt] = ACTIONS(1088),
    [anon_sym_gt] = ACTIONS(1088),
    [anon_sym_slt] = ACTIONS(1088),
    [anon_sym_sgt] = ACTIONS(1088),
    [anon_sym_eq] = ACTIONS(1088),
    [anon_sym_iszero] = ACTIONS(1088),
    [anon_sym_and] = ACTIONS(1088),
    [anon_sym_or] = ACTIONS(1088),
    [anon_sym_xor] = ACTIONS(1088),
    [anon_sym_byte] = ACTIONS(1088),
    [anon_sym_shl] = ACTIONS(1088),
    [anon_sym_shr] = ACTIONS(1088),
    [anon_sym_sar] = ACTIONS(1088),
    [anon_sym_addmod] = ACTIONS(1088),
    [anon_sym_mulmod] = ACTIONS(1088),
    [anon_sym_signextend] = ACTIONS(1088),
    [anon_sym_keccak256] = ACTIONS(1088),
    [anon_sym_pop] = ACTIONS(1088),
    [anon_sym_mload] = ACTIONS(1088),
    [anon_sym_mcopy] = ACTIONS(1088),
    [anon_sym_tload] = ACTIONS(1088),
    [anon_sym_tstore] = ACTIONS(1088),
    [anon_sym_mstore] = ACTIONS(1088),
    [anon_sym_mstore8] = ACTIONS(1088),
    [anon_sym_sload] = ACTIONS(1088),
    [anon_sym_sstore] = ACTIONS(1088),
    [anon_sym_msize] = ACTIONS(1088),
    [anon_sym_gas] = ACTIONS(1088),
    [anon_sym_address] = ACTIONS(1088),
    [anon_sym_balance] = ACTIONS(1088),
    [anon_sym_selfbalance] = ACTIONS(1088),
    [anon_sym_caller] = ACTIONS(1088),
    [anon_sym_callvalue] = ACTIONS(1088),
    [anon_sym_calldataload] = ACTIONS(1088),
    [anon_sym_calldatasize] = ACTIONS(1088),
    [anon_sym_calldatacopy] = ACTIONS(1088),
    [anon_sym_extcodesize] = ACTIONS(1088),
    [anon_sym_extcodecopy] = ACTIONS(1088),
    [anon_sym_returndatasize] = ACTIONS(1088),
    [anon_sym_returndatacopy] = ACTIONS(1088),
    [anon_sym_extcodehash] = ACTIONS(1088),
    [anon_sym_create] = ACTIONS(1088),
    [anon_sym_create2] = ACTIONS(1088),
    [anon_sym_call] = ACTIONS(1088),
    [anon_sym_callcode] = ACTIONS(1088),
    [anon_sym_delegatecall] = ACTIONS(1088),
    [anon_sym_staticcall] = ACTIONS(1088),
    [anon_sym_return] = ACTIONS(1088),
    [anon_sym_revert] = ACTIONS(1088),
    [anon_sym_selfdestruct] = ACTIONS(1088),
    [anon_sym_invalid] = ACTIONS(1088),
    [anon_sym_log0] = ACTIONS(1088),
    [anon_sym_log1] = ACTIONS(1088),
    [anon_sym_log2] = ACTIONS(1088),
    [anon_sym_log3] = ACTIONS(1088),
    [anon_sym_log4] = ACTIONS(1088),
    [anon_sym_chainid] = ACTIONS(1088),
    [anon_sym_origin] = ACTIONS(1088),
    [anon_sym_gasprice] = ACTIONS(1088),
    [anon_sym_blockhash] = ACTIONS(1088),
    [anon_sym_blobhash] = ACTIONS(1088),
    [anon_sym_basefee] = ACTIONS(1088),
    [anon_sym_blobfee] = ACTIONS(1088),
    [anon_sym_coinbase] = ACTIONS(1088),
    [anon_sym_timestamp] = ACTIONS(1088),
    [anon_sym_number] = ACTIONS(1088),
    [anon_sym_difficulty] = ACTIONS(1088),
    [anon_sym_gaslimit] = ACTIONS(1088),
    [anon_sym_prevrandao] = ACTIONS(1088),
    [anon_sym_blobbasefee] = ACTIONS(1088),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(294)] = {
    [sym_identifier] = ACTIONS(1095),
    [anon_sym_LBRACE] = ACTIONS(1097),
    [anon_sym_COMMA] = ACTIONS(1097),
    [anon_sym_RBRACE] = ACTIONS(1097),
    [anon_sym_RPAREN] = ACTIONS(1097),
    [anon_sym_for] = ACTIONS(1095),
    [sym_yul_leave] = ACTIONS(1095),
    [anon_sym_break] = ACTIONS(1095),
    [anon_sym_continue] = ACTIONS(1095),
    [sym_yul_decimal_number] = ACTIONS(1095),
    [sym_yul_hex_number] = ACTIONS(1097),
    [anon_sym_true] = ACTIONS(1095),
    [anon_sym_false] = ACTIONS(1095),
    [anon_sym_hex] = ACTIONS(1095),
    [anon_sym_DQUOTE] = ACTIONS(1097),
    [anon_sym_SQUOTE] = ACTIONS(1097),
    [anon_sym_let] = ACTIONS(1095),
    [anon_sym_if] = ACTIONS(1095),
    [anon_sym_switch] = ACTIONS(1095),
    [anon_sym_default] = ACTIONS(1095),
    [anon_sym_case] = ACTIONS(1095),
    [anon_sym_function] = ACTIONS(1095),
    [anon_sym_stop] = ACTIONS(1095),
    [anon_sym_add] = ACTIONS(1095),
    [anon_sym_sub] = ACTIONS(1095),
    [anon_sym_mul] = ACTIONS(1095),
    [anon_sym_div] = ACTIONS(1095),
    [anon_sym_sdiv] = ACTIONS(1095),
    [anon_sym_mod] = ACTIONS(1095),
    [anon_sym_smod] = ACTIONS(1095),
    [anon_sym_exp] = ACTIONS(1095),
    [anon_sym_not] = ACTIONS(1095),
    [anon_sym_lt] = ACTIONS(1095),
    [anon_sym_gt] = ACTIONS(1095),
    [anon_sym_slt] = ACTIONS(1095),
    [anon_sym_sgt] = ACTIONS(1095),
    [anon_sym_eq] = ACTIONS(1095),
    [anon_sym_iszero] = ACTIONS(1095),
    [anon_sym_and] = ACTIONS(1095),
    [anon_sym_or] = ACTIONS(1095),
    [anon_sym_xor] = ACTIONS(1095),
    [anon_sym_byte] = ACTIONS(1095),
    [anon_sym_shl] = ACTIONS(1095),
    [anon_sym_shr] = ACTIONS(1095),
    [anon_sym_sar] = ACTIONS(1095),
    [anon_sym_addmod] = ACTIONS(1095),
    [anon_sym_mulmod] = ACTIONS(1095),
    [anon_sym_signextend] = ACTIONS(1095),
    [anon_sym_keccak256] = ACTIONS(1095),
    [anon_sym_pop] = ACTIONS(1095),
    [anon_sym_mload] = ACTIONS(1095),
    [anon_sym_mcopy] = ACTIONS(1095),
    [anon_sym_tload] = ACTIONS(1095),
    [anon_sym_tstore] = ACTIONS(1095),
    [anon_sym_mstore] = ACTIONS(1095),
    [anon_sym_mstore8] = ACTIONS(1095),
    [anon_sym_sload] = ACTIONS(1095),
    [anon_sym_sstore] = ACTIONS(1095),
    [anon_sym_msize] = ACTIONS(1095),
    [anon_sym_gas] = ACTIONS(1095),
    [anon_sym_address] = ACTIONS(1095),
    [anon_sym_balance] = ACTIONS(1095),
    [anon_sym_selfbalance] = ACTIONS(1095),
    [anon_sym_caller] = ACTIONS(1095),
    [anon_sym_callvalue] = ACTIONS(1095),
    [anon_sym_calldataload] = ACTIONS(1095),
    [anon_sym_calldatasize] = ACTIONS(1095),
    [anon_sym_calldatacopy] = ACTIONS(1095),
    [anon_sym_extcodesize] = ACTIONS(1095),
    [anon_sym_extcodecopy] = ACTIONS(1095),
    [anon_sym_returndatasize] = ACTIONS(1095),
    [anon_sym_returndatacopy] = ACTIONS(1095),
    [anon_sym_extcodehash] = ACTIONS(1095),
    [anon_sym_create] = ACTIONS(1095),
    [anon_sym_create2] = ACTIONS(1095),
    [anon_sym_call] = ACTIONS(1095),
    [anon_sym_callcode] = ACTIONS(1095),
    [anon_sym_delegatecall] = ACTIONS(1095),
    [anon_sym_staticcall] = ACTIONS(1095),
    [anon_sym_return] = ACTIONS(1095),
    [anon_sym_revert] = ACTIONS(1095),
    [anon_sym_selfdestruct] = ACTIONS(1095),
    [anon_sym_invalid] = ACTIONS(1095),
    [anon_sym_log0] = ACTIONS(1095),
    [anon_sym_log1] = ACTIONS(1095),
    [anon_sym_log2] = ACTIONS(1095),
    [anon_sym_log3] = ACTIONS(1095),
    [anon_sym_log4] = ACTIONS(1095),
    [anon_sym_chainid] = ACTIONS(1095),
    [anon_sym_origin] = ACTIONS(1095),
    [anon_sym_gasprice] = ACTIONS(1095),
    [anon_sym_blockhash] = ACTIONS(1095),
    [anon_sym_blobhash] = ACTIONS(1095),
    [anon_sym_basefee] = ACTIONS(1095),
    [anon_sym_blobfee] = ACTIONS(1095),
    [anon_sym_coinbase] = ACTIONS(1095),
    [anon_sym_timestamp] = ACTIONS(1095),
    [anon_sym_number] = ACTIONS(1095),
    [anon_sym_difficulty] = ACTIONS(1095),
    [anon_sym_gaslimit] = ACTIONS(1095),
    [anon_sym_prevrandao] = ACTIONS(1095),
    [anon_sym_blobbasefee] = ACTIONS(1095),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(295)] = {
    [sym_identifier] = ACTIONS(1099),
    [anon_sym_LBRACE] = ACTIONS(1101),
    [anon_sym_COMMA] = ACTIONS(1101),
    [anon_sym_RBRACE] = ACTIONS(1101),
    [anon_sym_RPAREN] = ACTIONS(1101),
    [anon_sym_for] = ACTIONS(1099),
    [sym_yul_leave] = ACTIONS(1099),
    [anon_sym_break] = ACTIONS(1099),
    [anon_sym_continue] = ACTIONS(1099),
    [sym_yul_decimal_number] = ACTIONS(1099),
    [sym_yul_hex_number] = ACTIONS(1101),
    [anon_sym_true] = ACTIONS(1099),
    [anon_sym_false] = ACTIONS(1099),
    [anon_sym_hex] = ACTIONS(1099),
    [anon_sym_DQUOTE] = ACTIONS(1101),
    [anon_sym_SQUOTE] = ACTIONS(1101),
    [anon_sym_let] = ACTIONS(1099),
    [anon_sym_if] = ACTIONS(1099),
    [anon_sym_switch] = ACTIONS(1099),
    [anon_sym_default] = ACTIONS(1099),
    [anon_sym_case] = ACTIONS(1099),
    [anon_sym_function] = ACTIONS(1099),
    [anon_sym_stop] = ACTIONS(1099),
    [anon_sym_add] = ACTIONS(1099),
    [anon_sym_sub] = ACTIONS(1099),
    [anon_sym_mul] = ACTIONS(1099),
    [anon_sym_div] = ACTIONS(1099),
    [anon_sym_sdiv] = ACTIONS(1099),
    [anon_sym_mod] = ACTIONS(1099),
    [anon_sym_smod] = ACTIONS(1099),
    [anon_sym_exp] = ACTIONS(1099),
    [anon_sym_not] = ACTIONS(1099),
    [anon_sym_lt] = ACTIONS(1099),
    [anon_sym_gt] = ACTIONS(1099),
    [anon_sym_slt] = ACTIONS(1099),
    [anon_sym_sgt] = ACTIONS(1099),
    [anon_sym_eq] = ACTIONS(1099),
    [anon_sym_iszero] = ACTIONS(1099),
    [anon_sym_and] = ACTIONS(1099),
    [anon_sym_or] = ACTIONS(1099),
    [anon_sym_xor] = ACTIONS(1099),
    [anon_sym_byte] = ACTIONS(1099),
    [anon_sym_shl] = ACTIONS(1099),
    [anon_sym_shr] = ACTIONS(1099),
    [anon_sym_sar] = ACTIONS(1099),
    [anon_sym_addmod] = ACTIONS(1099),
    [anon_sym_mulmod] = ACTIONS(1099),
    [anon_sym_signextend] = ACTIONS(1099),
    [anon_sym_keccak256] = ACTIONS(1099),
    [anon_sym_pop] = ACTIONS(1099),
    [anon_sym_mload] = ACTIONS(1099),
    [anon_sym_mcopy] = ACTIONS(1099),
    [anon_sym_tload] = ACTIONS(1099),
    [anon_sym_tstore] = ACTIONS(1099),
    [anon_sym_mstore] = ACTIONS(1099),
    [anon_sym_mstore8] = ACTIONS(1099),
    [anon_sym_sload] = ACTIONS(1099),
    [anon_sym_sstore] = ACTIONS(1099),
    [anon_sym_msize] = ACTIONS(1099),
    [anon_sym_gas] = ACTIONS(1099),
    [anon_sym_address] = ACTIONS(1099),
    [anon_sym_balance] = ACTIONS(1099),
    [anon_sym_selfbalance] = ACTIONS(1099),
    [anon_sym_caller] = ACTIONS(1099),
    [anon_sym_callvalue] = ACTIONS(1099),
    [anon_sym_calldataload] = ACTIONS(1099),
    [anon_sym_calldatasize] = ACTIONS(1099),
    [anon_sym_calldatacopy] = ACTIONS(1099),
    [anon_sym_extcodesize] = ACTIONS(1099),
    [anon_sym_extcodecopy] = ACTIONS(1099),
    [anon_sym_returndatasize] = ACTIONS(1099),
    [anon_sym_returndatacopy] = ACTIONS(1099),
    [anon_sym_extcodehash] = ACTIONS(1099),
    [anon_sym_create] = ACTIONS(1099),
    [anon_sym_create2] = ACTIONS(1099),
    [anon_sym_call] = ACTIONS(1099),
    [anon_sym_callcode] = ACTIONS(1099),
    [anon_sym_delegatecall] = ACTIONS(1099),
    [anon_sym_staticcall] = ACTIONS(1099),
    [anon_sym_return] = ACTIONS(1099),
    [anon_sym_revert] = ACTIONS(1099),
    [anon_sym_selfdestruct] = ACTIONS(1099),
    [anon_sym_invalid] = ACTIONS(1099),
    [anon_sym_log0] = ACTIONS(1099),
    [anon_sym_log1] = ACTIONS(1099),
    [anon_sym_log2] = ACTIONS(1099),
    [anon_sym_log3] = ACTIONS(1099),
    [anon_sym_log4] = ACTIONS(1099),
    [anon_sym_chainid] = ACTIONS(1099),
    [anon_sym_origin] = ACTIONS(1099),
    [anon_sym_gasprice] = ACTIONS(1099),
    [anon_sym_blockhash] = ACTIONS(1099),
    [anon_sym_blobhash] = ACTIONS(1099),
    [anon_sym_basefee] = ACTIONS(1099),
    [anon_sym_blobfee] = ACTIONS(1099),
    [anon_sym_coinbase] = ACTIONS(1099),
    [anon_sym_timestamp] = ACTIONS(1099),
    [anon_sym_number] = ACTIONS(1099),
    [anon_sym_difficulty] = ACTIONS(1099),
    [anon_sym_gaslimit] = ACTIONS(1099),
    [anon_sym_prevrandao] = ACTIONS(1099),
    [anon_sym_blobbasefee] = ACTIONS(1099),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(296)] = {
    [sym_identifier] = ACTIONS(1103),
    [anon_sym_LBRACE] = ACTIONS(1105),
    [anon_sym_COMMA] = ACTIONS(1105),
    [anon_sym_RBRACE] = ACTIONS(1105),
    [anon_sym_RPAREN] = ACTIONS(1105),
    [anon_sym_for] = ACTIONS(1103),
    [sym_yul_leave] = ACTIONS(1103),
    [anon_sym_break] = ACTIONS(1103),
    [anon_sym_continue] = ACTIONS(1103),
    [sym_yul_decimal_number] = ACTIONS(1103),
    [sym_yul_hex_number] = ACTIONS(1105),
    [anon_sym_true] = ACTIONS(1103),
    [anon_sym_false] = ACTIONS(1103),
    [anon_sym_hex] = ACTIONS(1103),
    [anon_sym_DQUOTE] = ACTIONS(1105),
    [anon_sym_SQUOTE] = ACTIONS(1105),
    [anon_sym_let] = ACTIONS(1103),
    [anon_sym_if] = ACTIONS(1103),
    [anon_sym_switch] = ACTIONS(1103),
    [anon_sym_default] = ACTIONS(1103),
    [anon_sym_case] = ACTIONS(1103),
    [anon_sym_function] = ACTIONS(1103),
    [anon_sym_stop] = ACTIONS(1103),
    [anon_sym_add] = ACTIONS(1103),
    [anon_sym_sub] = ACTIONS(1103),
    [anon_sym_mul] = ACTIONS(1103),
    [anon_sym_div] = ACTIONS(1103),
    [anon_sym_sdiv] = ACTIONS(1103),
    [anon_sym_mod] = ACTIONS(1103),
    [anon_sym_smod] = ACTIONS(1103),
    [anon_sym_exp] = ACTIONS(1103),
    [anon_sym_not] = ACTIONS(1103),
    [anon_sym_lt] = ACTIONS(1103),
    [anon_sym_gt] = ACTIONS(1103),
    [anon_sym_slt] = ACTIONS(1103),
    [anon_sym_sgt] = ACTIONS(1103),
    [anon_sym_eq] = ACTIONS(1103),
    [anon_sym_iszero] = ACTIONS(1103),
    [anon_sym_and] = ACTIONS(1103),
    [anon_sym_or] = ACTIONS(1103),
    [anon_sym_xor] = ACTIONS(1103),
    [anon_sym_byte] = ACTIONS(1103),
    [anon_sym_shl] = ACTIONS(1103),
    [anon_sym_shr] = ACTIONS(1103),
    [anon_sym_sar] = ACTIONS(1103),
    [anon_sym_addmod] = ACTIONS(1103),
    [anon_sym_mulmod] = ACTIONS(1103),
    [anon_sym_signextend] = ACTIONS(1103),
    [anon_sym_keccak256] = ACTIONS(1103),
    [anon_sym_pop] = ACTIONS(1103),
    [anon_sym_mload] = ACTIONS(1103),
    [anon_sym_mcopy] = ACTIONS(1103),
    [anon_sym_tload] = ACTIONS(1103),
    [anon_sym_tstore] = ACTIONS(1103),
    [anon_sym_mstore] = ACTIONS(1103),
    [anon_sym_mstore8] = ACTIONS(1103),
    [anon_sym_sload] = ACTIONS(1103),
    [anon_sym_sstore] = ACTIONS(1103),
    [anon_sym_msize] = ACTIONS(1103),
    [anon_sym_gas] = ACTIONS(1103),
    [anon_sym_address] = ACTIONS(1103),
    [anon_sym_balance] = ACTIONS(1103),
    [anon_sym_selfbalance] = ACTIONS(1103),
    [anon_sym_caller] = ACTIONS(1103),
    [anon_sym_callvalue] = ACTIONS(1103),
    [anon_sym_calldataload] = ACTIONS(1103),
    [anon_sym_calldatasize] = ACTIONS(1103),
    [anon_sym_calldatacopy] = ACTIONS(1103),
    [anon_sym_extcodesize] = ACTIONS(1103),
    [anon_sym_extcodecopy] = ACTIONS(1103),
    [anon_sym_returndatasize] = ACTIONS(1103),
    [anon_sym_returndatacopy] = ACTIONS(1103),
    [anon_sym_extcodehash] = ACTIONS(1103),
    [anon_sym_create] = ACTIONS(1103),
    [anon_sym_create2] = ACTIONS(1103),
    [anon_sym_call] = ACTIONS(1103),
    [anon_sym_callcode] = ACTIONS(1103),
    [anon_sym_delegatecall] = ACTIONS(1103),
    [anon_sym_staticcall] = ACTIONS(1103),
    [anon_sym_return] = ACTIONS(1103),
    [anon_sym_revert] = ACTIONS(1103),
    [anon_sym_selfdestruct] = ACTIONS(1103),
    [anon_sym_invalid] = ACTIONS(1103),
    [anon_sym_log0] = ACTIONS(1103),
    [anon_sym_log1] = ACTIONS(1103),
    [anon_sym_log2] = ACTIONS(1103),
    [anon_sym_log3] = ACTIONS(1103),
    [anon_sym_log4] = ACTIONS(1103),
    [anon_sym_chainid] = ACTIONS(1103),
    [anon_sym_origin] = ACTIONS(1103),
    [anon_sym_gasprice] = ACTIONS(1103),
    [anon_sym_blockhash] = ACTIONS(1103),
    [anon_sym_blobhash] = ACTIONS(1103),
    [anon_sym_basefee] = ACTIONS(1103),
    [anon_sym_blobfee] = ACTIONS(1103),
    [anon_sym_coinbase] = ACTIONS(1103),
    [anon_sym_timestamp] = ACTIONS(1103),
    [anon_sym_number] = ACTIONS(1103),
    [anon_sym_difficulty] = ACTIONS(1103),
    [anon_sym_gaslimit] = ACTIONS(1103),
    [anon_sym_prevrandao] = ACTIONS(1103),
    [anon_sym_blobbasefee] = ACTIONS(1103),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(297)] = {
    [aux_sym_yul_variable_declaration_repeat1] = STATE(297),
    [sym_identifier] = ACTIONS(1107),
    [anon_sym_LBRACE] = ACTIONS(1109),
    [anon_sym_COMMA] = ACTIONS(1111),
    [anon_sym_RBRACE] = ACTIONS(1109),
    [anon_sym_RPAREN] = ACTIONS(1109),
    [anon_sym_for] = ACTIONS(1107),
    [sym_yul_leave] = ACTIONS(1107),
    [anon_sym_break] = ACTIONS(1107),
    [anon_sym_continue] = ACTIONS(1107),
    [sym_yul_decimal_number] = ACTIONS(1107),
    [sym_yul_hex_number] = ACTIONS(1109),
    [anon_sym_true] = ACTIONS(1107),
    [anon_sym_false] = ACTIONS(1107),
    [anon_sym_hex] = ACTIONS(1107),
    [anon_sym_DQUOTE] = ACTIONS(1109),
    [anon_sym_SQUOTE] = ACTIONS(1109),
    [anon_sym_let] = ACTIONS(1107),
    [anon_sym_COLON_EQ] = ACTIONS(1109),
    [anon_sym_if] = ACTIONS(1107),
    [anon_sym_switch] = ACTIONS(1107),
    [anon_sym_function] = ACTIONS(1107),
    [anon_sym_stop] = ACTIONS(1107),
    [anon_sym_add] = ACTIONS(1107),
    [anon_sym_sub] = ACTIONS(1107),
    [anon_sym_mul] = ACTIONS(1107),
    [anon_sym_div] = ACTIONS(1107),
    [anon_sym_sdiv] = ACTIONS(1107),
    [anon_sym_mod] = ACTIONS(1107),
    [anon_sym_smod] = ACTIONS(1107),
    [anon_sym_exp] = ACTIONS(1107),
    [anon_sym_not] = ACTIONS(1107),
    [anon_sym_lt] = ACTIONS(1107),
    [anon_sym_gt] = ACTIONS(1107),
    [anon_sym_slt] = ACTIONS(1107),
    [anon_sym_sgt] = ACTIONS(1107),
    [anon_sym_eq] = ACTIONS(1107),
    [anon_sym_iszero] = ACTIONS(1107),
    [anon_sym_and] = ACTIONS(1107),
    [anon_sym_or] = ACTIONS(1107),
    [anon_sym_xor] = ACTIONS(1107),
    [anon_sym_byte] = ACTIONS(1107),
    [anon_sym_shl] = ACTIONS(1107),
    [anon_sym_shr] = ACTIONS(1107),
    [anon_sym_sar] = ACTIONS(1107),
    [anon_sym_addmod] = ACTIONS(1107),
    [anon_sym_mulmod] = ACTIONS(1107),
    [anon_sym_signextend] = ACTIONS(1107),
    [anon_sym_keccak256] = ACTIONS(1107),
    [anon_sym_pop] = ACTIONS(1107),
    [anon_sym_mload] = ACTIONS(1107),
    [anon_sym_mcopy] = ACTIONS(1107),
    [anon_sym_tload] = ACTIONS(1107),
    [anon_sym_tstore] = ACTIONS(1107),
    [anon_sym_mstore] = ACTIONS(1107),
    [anon_sym_mstore8] = ACTIONS(1107),
    [anon_sym_sload] = ACTIONS(1107),
    [anon_sym_sstore] = ACTIONS(1107),
    [anon_sym_msize] = ACTIONS(1107),
    [anon_sym_gas] = ACTIONS(1107),
    [anon_sym_address] = ACTIONS(1107),
    [anon_sym_balance] = ACTIONS(1107),
    [anon_sym_selfbalance] = ACTIONS(1107),
    [anon_sym_caller] = ACTIONS(1107),
    [anon_sym_callvalue] = ACTIONS(1107),
    [anon_sym_calldataload] = ACTIONS(1107),
    [anon_sym_calldatasize] = ACTIONS(1107),
    [anon_sym_calldatacopy] = ACTIONS(1107),
    [anon_sym_extcodesize] = ACTIONS(1107),
    [anon_sym_extcodecopy] = ACTIONS(1107),
    [anon_sym_returndatasize] = ACTIONS(1107),
    [anon_sym_returndatacopy] = ACTIONS(1107),
    [anon_sym_extcodehash] = ACTIONS(1107),
    [anon_sym_create] = ACTIONS(1107),
    [anon_sym_create2] = ACTIONS(1107),
    [anon_sym_call] = ACTIONS(1107),
    [anon_sym_callcode] = ACTIONS(1107),
    [anon_sym_delegatecall] = ACTIONS(1107),
    [anon_sym_staticcall] = ACTIONS(1107),
    [anon_sym_return] = ACTIONS(1107),
    [anon_sym_revert] = ACTIONS(1107),
    [anon_sym_selfdestruct] = ACTIONS(1107),
    [anon_sym_invalid] = ACTIONS(1107),
    [anon_sym_log0] = ACTIONS(1107),
    [anon_sym_log1] = ACTIONS(1107),
    [anon_sym_log2] = ACTIONS(1107),
    [anon_sym_log3] = ACTIONS(1107),
    [anon_sym_log4] = ACTIONS(1107),
    [anon_sym_chainid] = ACTIONS(1107),
    [anon_sym_origin] = ACTIONS(1107),
    [anon_sym_gasprice] = ACTIONS(1107),
    [anon_sym_blockhash] = ACTIONS(1107),
    [anon_sym_blobhash] = ACTIONS(1107),
    [anon_sym_basefee] = ACTIONS(1107),
    [anon_sym_blobfee] = ACTIONS(1107),
    [anon_sym_coinbase] = ACTIONS(1107),
    [anon_sym_timestamp] = ACTIONS(1107),
    [anon_sym_number] = ACTIONS(1107),
    [anon_sym_difficulty] = ACTIONS(1107),
    [anon_sym_gaslimit] = ACTIONS(1107),
    [anon_sym_prevrandao] = ACTIONS(1107),
    [anon_sym_blobbasefee] = ACTIONS(1107),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(298)] = {
    [sym_identifier] = ACTIONS(1114),
    [anon_sym_LBRACE] = ACTIONS(1116),
    [anon_sym_COMMA] = ACTIONS(1116),
    [anon_sym_RBRACE] = ACTIONS(1116),
    [anon_sym_RPAREN] = ACTIONS(1116),
    [anon_sym_for] = ACTIONS(1114),
    [sym_yul_leave] = ACTIONS(1114),
    [anon_sym_break] = ACTIONS(1114),
    [anon_sym_continue] = ACTIONS(1114),
    [sym_yul_decimal_number] = ACTIONS(1114),
    [sym_yul_hex_number] = ACTIONS(1116),
    [anon_sym_true] = ACTIONS(1114),
    [anon_sym_false] = ACTIONS(1114),
    [anon_sym_hex] = ACTIONS(1114),
    [anon_sym_DQUOTE] = ACTIONS(1116),
    [anon_sym_SQUOTE] = ACTIONS(1116),
    [anon_sym_let] = ACTIONS(1114),
    [anon_sym_if] = ACTIONS(1114),
    [anon_sym_switch] = ACTIONS(1114),
    [anon_sym_default] = ACTIONS(1114),
    [anon_sym_case] = ACTIONS(1114),
    [anon_sym_function] = ACTIONS(1114),
    [anon_sym_stop] = ACTIONS(1114),
    [anon_sym_add] = ACTIONS(1114),
    [anon_sym_sub] = ACTIONS(1114),
    [anon_sym_mul] = ACTIONS(1114),
    [anon_sym_div] = ACTIONS(1114),
    [anon_sym_sdiv] = ACTIONS(1114),
    [anon_sym_mod] = ACTIONS(1114),
    [anon_sym_smod] = ACTIONS(1114),
    [anon_sym_exp] = ACTIONS(1114),
    [anon_sym_not] = ACTIONS(1114),
    [anon_sym_lt] = ACTIONS(1114),
    [anon_sym_gt] = ACTIONS(1114),
    [anon_sym_slt] = ACTIONS(1114),
    [anon_sym_sgt] = ACTIONS(1114),
    [anon_sym_eq] = ACTIONS(1114),
    [anon_sym_iszero] = ACTIONS(1114),
    [anon_sym_and] = ACTIONS(1114),
    [anon_sym_or] = ACTIONS(1114),
    [anon_sym_xor] = ACTIONS(1114),
    [anon_sym_byte] = ACTIONS(1114),
    [anon_sym_shl] = ACTIONS(1114),
    [anon_sym_shr] = ACTIONS(1114),
    [anon_sym_sar] = ACTIONS(1114),
    [anon_sym_addmod] = ACTIONS(1114),
    [anon_sym_mulmod] = ACTIONS(1114),
    [anon_sym_signextend] = ACTIONS(1114),
    [anon_sym_keccak256] = ACTIONS(1114),
    [anon_sym_pop] = ACTIONS(1114),
    [anon_sym_mload] = ACTIONS(1114),
    [anon_sym_mcopy] = ACTIONS(1114),
    [anon_sym_tload] = ACTIONS(1114),
    [anon_sym_tstore] = ACTIONS(1114),
    [anon_sym_mstore] = ACTIONS(1114),
    [anon_sym_mstore8] = ACTIONS(1114),
    [anon_sym_sload] = ACTIONS(1114),
    [anon_sym_sstore] = ACTIONS(1114),
    [anon_sym_msize] = ACTIONS(1114),
    [anon_sym_gas] = ACTIONS(1114),
    [anon_sym_address] = ACTIONS(1114),
    [anon_sym_balance] = ACTIONS(1114),
    [anon_sym_selfbalance] = ACTIONS(1114),
    [anon_sym_caller] = ACTIONS(1114),
    [anon_sym_callvalue] = ACTIONS(1114),
    [anon_sym_calldataload] = ACTIONS(1114),
    [anon_sym_calldatasize] = ACTIONS(1114),
    [anon_sym_calldatacopy] = ACTIONS(1114),
    [anon_sym_extcodesize] = ACTIONS(1114),
    [anon_sym_extcodecopy] = ACTIONS(1114),
    [anon_sym_returndatasize] = ACTIONS(1114),
    [anon_sym_returndatacopy] = ACTIONS(1114),
    [anon_sym_extcodehash] = ACTIONS(1114),
    [anon_sym_create] = ACTIONS(1114),
    [anon_sym_create2] = ACTIONS(1114),
    [anon_sym_call] = ACTIONS(1114),
    [anon_sym_callcode] = ACTIONS(1114),
    [anon_sym_delegatecall] = ACTIONS(1114),
    [anon_sym_staticcall] = ACTIONS(1114),
    [anon_sym_return] = ACTIONS(1114),
    [anon_sym_revert] = ACTIONS(1114),
    [anon_sym_selfdestruct] = ACTIONS(1114),
    [anon_sym_invalid] = ACTIONS(1114),
    [anon_sym_log0] = ACTIONS(1114),
    [anon_sym_log1] = ACTIONS(1114),
    [anon_sym_log2] = ACTIONS(1114),
    [anon_sym_log3] = ACTIONS(1114),
    [anon_sym_log4] = ACTIONS(1114),
    [anon_sym_chainid] = ACTIONS(1114),
    [anon_sym_origin] = ACTIONS(1114),
    [anon_sym_gasprice] = ACTIONS(1114),
    [anon_sym_blockhash] = ACTIONS(1114),
    [anon_sym_blobhash] = ACTIONS(1114),
    [anon_sym_basefee] = ACTIONS(1114),
    [anon_sym_blobfee] = ACTIONS(1114),
    [anon_sym_coinbase] = ACTIONS(1114),
    [anon_sym_timestamp] = ACTIONS(1114),
    [anon_sym_number] = ACTIONS(1114),
    [anon_sym_difficulty] = ACTIONS(1114),
    [anon_sym_gaslimit] = ACTIONS(1114),
    [anon_sym_prevrandao] = ACTIONS(1114),
    [anon_sym_blobbasefee] = ACTIONS(1114),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(299)] = {
    [aux_sym_yul_variable_declaration_repeat1] = STATE(302),
    [sym_identifier] = ACTIONS(1118),
    [anon_sym_LBRACE] = ACTIONS(1120),
    [anon_sym_COMMA] = ACTIONS(1122),
    [anon_sym_RBRACE] = ACTIONS(1120),
    [anon_sym_for] = ACTIONS(1118),
    [sym_yul_leave] = ACTIONS(1118),
    [anon_sym_break] = ACTIONS(1118),
    [anon_sym_continue] = ACTIONS(1118),
    [sym_yul_decimal_number] = ACTIONS(1118),
    [sym_yul_hex_number] = ACTIONS(1120),
    [anon_sym_true] = ACTIONS(1118),
    [anon_sym_false] = ACTIONS(1118),
    [anon_sym_hex] = ACTIONS(1118),
    [anon_sym_DQUOTE] = ACTIONS(1120),
    [anon_sym_SQUOTE] = ACTIONS(1120),
    [anon_sym_let] = ACTIONS(1118),
    [anon_sym_COLON_EQ] = ACTIONS(1124),
    [anon_sym_if] = ACTIONS(1118),
    [anon_sym_switch] = ACTIONS(1118),
    [anon_sym_function] = ACTIONS(1118),
    [anon_sym_stop] = ACTIONS(1118),
    [anon_sym_add] = ACTIONS(1118),
    [anon_sym_sub] = ACTIONS(1118),
    [anon_sym_mul] = ACTIONS(1118),
    [anon_sym_div] = ACTIONS(1118),
    [anon_sym_sdiv] = ACTIONS(1118),
    [anon_sym_mod] = ACTIONS(1118),
    [anon_sym_smod] = ACTIONS(1118),
    [anon_sym_exp] = ACTIONS(1118),
    [anon_sym_not] = ACTIONS(1118),
    [anon_sym_lt] = ACTIONS(1118),
    [anon_sym_gt] = ACTIONS(1118),
    [anon_sym_slt] = ACTIONS(1118),
    [anon_sym_sgt] = ACTIONS(1118),
    [anon_sym_eq] = ACTIONS(1118),
    [anon_sym_iszero] = ACTIONS(1118),
    [anon_sym_and] = ACTIONS(1118),
    [anon_sym_or] = ACTIONS(1118),
    [anon_sym_xor] = ACTIONS(1118),
    [anon_sym_byte] = ACTIONS(1118),
    [anon_sym_shl] = ACTIONS(1118),
    [anon_sym_shr] = ACTIONS(1118),
    [anon_sym_sar] = ACTIONS(1118),
    [anon_sym_addmod] = ACTIONS(1118),
    [anon_sym_mulmod] = ACTIONS(1118),
    [anon_sym_signextend] = ACTIONS(1118),
    [anon_sym_keccak256] = ACTIONS(1118),
    [anon_sym_pop] = ACTIONS(1118),
    [anon_sym_mload] = ACTIONS(1118),
    [anon_sym_mcopy] = ACTIONS(1118),
    [anon_sym_tload] = ACTIONS(1118),
    [anon_sym_tstore] = ACTIONS(1118),
    [anon_sym_mstore] = ACTIONS(1118),
    [anon_sym_mstore8] = ACTIONS(1118),
    [anon_sym_sload] = ACTIONS(1118),
    [anon_sym_sstore] = ACTIONS(1118),
    [anon_sym_msize] = ACTIONS(1118),
    [anon_sym_gas] = ACTIONS(1118),
    [anon_sym_address] = ACTIONS(1118),
    [anon_sym_balance] = ACTIONS(1118),
    [anon_sym_selfbalance] = ACTIONS(1118),
    [anon_sym_caller] = ACTIONS(1118),
    [anon_sym_callvalue] = ACTIONS(1118),
    [anon_sym_calldataload] = ACTIONS(1118),
    [anon_sym_calldatasize] = ACTIONS(1118),
    [anon_sym_calldatacopy] = ACTIONS(1118),
    [anon_sym_extcodesize] = ACTIONS(1118),
    [anon_sym_extcodecopy] = ACTIONS(1118),
    [anon_sym_returndatasize] = ACTIONS(1118),
    [anon_sym_returndatacopy] = ACTIONS(1118),
    [anon_sym_extcodehash] = ACTIONS(1118),
    [anon_sym_create] = ACTIONS(1118),
    [anon_sym_create2] = ACTIONS(1118),
    [anon_sym_call] = ACTIONS(1118),
    [anon_sym_callcode] = ACTIONS(1118),
    [anon_sym_delegatecall] = ACTIONS(1118),
    [anon_sym_staticcall] = ACTIONS(1118),
    [anon_sym_return] = ACTIONS(1118),
    [anon_sym_revert] = ACTIONS(1118),
    [anon_sym_selfdestruct] = ACTIONS(1118),
    [anon_sym_invalid] = ACTIONS(1118),
    [anon_sym_log0] = ACTIONS(1118),
    [anon_sym_log1] = ACTIONS(1118),
    [anon_sym_log2] = ACTIONS(1118),
    [anon_sym_log3] = ACTIONS(1118),
    [anon_sym_log4] = ACTIONS(1118),
    [anon_sym_chainid] = ACTIONS(1118),
    [anon_sym_origin] = ACTIONS(1118),
    [anon_sym_gasprice] = ACTIONS(1118),
    [anon_sym_blockhash] = ACTIONS(1118),
    [anon_sym_blobhash] = ACTIONS(1118),
    [anon_sym_basefee] = ACTIONS(1118),
    [anon_sym_blobfee] = ACTIONS(1118),
    [anon_sym_coinbase] = ACTIONS(1118),
    [anon_sym_timestamp] = ACTIONS(1118),
    [anon_sym_number] = ACTIONS(1118),
    [anon_sym_difficulty] = ACTIONS(1118),
    [anon_sym_gaslimit] = ACTIONS(1118),
    [anon_sym_prevrandao] = ACTIONS(1118),
    [anon_sym_blobbasefee] = ACTIONS(1118),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(300)] = {
    [aux_sym_yul_switch_statement_repeat1] = STATE(304),
    [sym_identifier] = ACTIONS(1126),
    [anon_sym_LBRACE] = ACTIONS(1128),
    [anon_sym_RBRACE] = ACTIONS(1128),
    [anon_sym_for] = ACTIONS(1126),
    [sym_yul_leave] = ACTIONS(1126),
    [anon_sym_break] = ACTIONS(1126),
    [anon_sym_continue] = ACTIONS(1126),
    [sym_yul_decimal_number] = ACTIONS(1126),
    [sym_yul_hex_number] = ACTIONS(1128),
    [anon_sym_true] = ACTIONS(1126),
    [anon_sym_false] = ACTIONS(1126),
    [anon_sym_hex] = ACTIONS(1126),
    [anon_sym_DQUOTE] = ACTIONS(1128),
    [anon_sym_SQUOTE] = ACTIONS(1128),
    [anon_sym_let] = ACTIONS(1126),
    [anon_sym_if] = ACTIONS(1126),
    [anon_sym_switch] = ACTIONS(1126),
    [anon_sym_default] = ACTIONS(1130),
    [anon_sym_case] = ACTIONS(1132),
    [anon_sym_function] = ACTIONS(1126),
    [anon_sym_stop] = ACTIONS(1126),
    [anon_sym_add] = ACTIONS(1126),
    [anon_sym_sub] = ACTIONS(1126),
    [anon_sym_mul] = ACTIONS(1126),
    [anon_sym_div] = ACTIONS(1126),
    [anon_sym_sdiv] = ACTIONS(1126),
    [anon_sym_mod] = ACTIONS(1126),
    [anon_sym_smod] = ACTIONS(1126),
    [anon_sym_exp] = ACTIONS(1126),
    [anon_sym_not] = ACTIONS(1126),
    [anon_sym_lt] = ACTIONS(1126),
    [anon_sym_gt] = ACTIONS(1126),
    [anon_sym_slt] = ACTIONS(1126),
    [anon_sym_sgt] = ACTIONS(1126),
    [anon_sym_eq] = ACTIONS(1126),
    [anon_sym_iszero] = ACTIONS(1126),
    [anon_sym_and] = ACTIONS(1126),
    [anon_sym_or] = ACTIONS(1126),
    [anon_sym_xor] = ACTIONS(1126),
    [anon_sym_byte] = ACTIONS(1126),
    [anon_sym_shl] = ACTIONS(1126),
    [anon_sym_shr] = ACTIONS(1126),
    [anon_sym_sar] = ACTIONS(1126),
    [anon_sym_addmod] = ACTIONS(1126),
    [anon_sym_mulmod] = ACTIONS(1126),
    [anon_sym_signextend] = ACTIONS(1126),
    [anon_sym_keccak256] = ACTIONS(1126),
    [anon_sym_pop] = ACTIONS(1126),
    [anon_sym_mload] = ACTIONS(1126),
    [anon_sym_mcopy] = ACTIONS(1126),
    [anon_sym_tload] = ACTIONS(1126),
    [anon_sym_tstore] = ACTIONS(1126),
    [anon_sym_mstore] = ACTIONS(1126),
    [anon_sym_mstore8] = ACTIONS(1126),
    [anon_sym_sload] = ACTIONS(1126),
    [anon_sym_sstore] = ACTIONS(1126),
    [anon_sym_msize] = ACTIONS(1126),
    [anon_sym_gas] = ACTIONS(1126),
    [anon_sym_address] = ACTIONS(1126),
    [anon_sym_balance] = ACTIONS(1126),
    [anon_sym_selfbalance] = ACTIONS(1126),
    [anon_sym_caller] = ACTIONS(1126),
    [anon_sym_callvalue] = ACTIONS(1126),
    [anon_sym_calldataload] = ACTIONS(1126),
    [anon_sym_calldatasize] = ACTIONS(1126),
    [anon_sym_calldatacopy] = ACTIONS(1126),
    [anon_sym_extcodesize] = ACTIONS(1126),
    [anon_sym_extcodecopy] = ACTIONS(1126),
    [anon_sym_returndatasize] = ACTIONS(1126),
    [anon_sym_returndatacopy] = ACTIONS(1126),
    [anon_sym_extcodehash] = ACTIONS(1126),
    [anon_sym_create] = ACTIONS(1126),
    [anon_sym_create2] = ACTIONS(1126),
    [anon_sym_call] = ACTIONS(1126),
    [anon_sym_callcode] = ACTIONS(1126),
    [anon_sym_delegatecall] = ACTIONS(1126),
    [anon_sym_staticcall] = ACTIONS(1126),
    [anon_sym_return] = ACTIONS(1126),
    [anon_sym_revert] = ACTIONS(1126),
    [anon_sym_selfdestruct] = ACTIONS(1126),
    [anon_sym_invalid] = ACTIONS(1126),
    [anon_sym_log0] = ACTIONS(1126),
    [anon_sym_log1] = ACTIONS(1126),
    [anon_sym_log2] = ACTIONS(1126),
    [anon_sym_log3] = ACTIONS(1126),
    [anon_sym_log4] = ACTIONS(1126),
    [anon_sym_chainid] = ACTIONS(1126),
    [anon_sym_origin] = ACTIONS(1126),
    [anon_sym_gasprice] = ACTIONS(1126),
    [anon_sym_blockhash] = ACTIONS(1126),
    [anon_sym_blobhash] = ACTIONS(1126),
    [anon_sym_basefee] = ACTIONS(1126),
    [anon_sym_blobfee] = ACTIONS(1126),
    [anon_sym_coinbase] = ACTIONS(1126),
    [anon_sym_timestamp] = ACTIONS(1126),
    [anon_sym_number] = ACTIONS(1126),
    [anon_sym_difficulty] = ACTIONS(1126),
    [anon_sym_gaslimit] = ACTIONS(1126),
    [anon_sym_prevrandao] = ACTIONS(1126),
    [anon_sym_blobbasefee] = ACTIONS(1126),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(301)] = {
    [sym_identifier] = ACTIONS(1088),
    [anon_sym_LBRACE] = ACTIONS(1090),
    [anon_sym_COMMA] = ACTIONS(1090),
    [anon_sym_RBRACE] = ACTIONS(1090),
    [anon_sym_for] = ACTIONS(1088),
    [anon_sym_COLON] = ACTIONS(1088),
    [sym_yul_leave] = ACTIONS(1088),
    [anon_sym_break] = ACTIONS(1088),
    [anon_sym_continue] = ACTIONS(1088),
    [sym_yul_decimal_number] = ACTIONS(1088),
    [sym_yul_hex_number] = ACTIONS(1090),
    [anon_sym_true] = ACTIONS(1088),
    [anon_sym_false] = ACTIONS(1088),
    [anon_sym_hex] = ACTIONS(1088),
    [anon_sym_DQUOTE] = ACTIONS(1090),
    [anon_sym_SQUOTE] = ACTIONS(1090),
    [anon_sym_let] = ACTIONS(1088),
    [anon_sym_COLON_EQ] = ACTIONS(1090),
    [anon_sym_if] = ACTIONS(1088),
    [anon_sym_switch] = ACTIONS(1088),
    [anon_sym_function] = ACTIONS(1088),
    [anon_sym_stop] = ACTIONS(1088),
    [anon_sym_add] = ACTIONS(1088),
    [anon_sym_sub] = ACTIONS(1088),
    [anon_sym_mul] = ACTIONS(1088),
    [anon_sym_div] = ACTIONS(1088),
    [anon_sym_sdiv] = ACTIONS(1088),
    [anon_sym_mod] = ACTIONS(1088),
    [anon_sym_smod] = ACTIONS(1088),
    [anon_sym_exp] = ACTIONS(1088),
    [anon_sym_not] = ACTIONS(1088),
    [anon_sym_lt] = ACTIONS(1088),
    [anon_sym_gt] = ACTIONS(1088),
    [anon_sym_slt] = ACTIONS(1088),
    [anon_sym_sgt] = ACTIONS(1088),
    [anon_sym_eq] = ACTIONS(1088),
    [anon_sym_iszero] = ACTIONS(1088),
    [anon_sym_and] = ACTIONS(1088),
    [anon_sym_or] = ACTIONS(1088),
    [anon_sym_xor] = ACTIONS(1088),
    [anon_sym_byte] = ACTIONS(1088),
    [anon_sym_shl] = ACTIONS(1088),
    [anon_sym_shr] = ACTIONS(1088),
    [anon_sym_sar] = ACTIONS(1088),
    [anon_sym_addmod] = ACTIONS(1088),
    [anon_sym_mulmod] = ACTIONS(1088),
    [anon_sym_signextend] = ACTIONS(1088),
    [anon_sym_keccak256] = ACTIONS(1088),
    [anon_sym_pop] = ACTIONS(1088),
    [anon_sym_mload] = ACTIONS(1088),
    [anon_sym_mcopy] = ACTIONS(1088),
    [anon_sym_tload] = ACTIONS(1088),
    [anon_sym_tstore] = ACTIONS(1088),
    [anon_sym_mstore] = ACTIONS(1088),
    [anon_sym_mstore8] = ACTIONS(1088),
    [anon_sym_sload] = ACTIONS(1088),
    [anon_sym_sstore] = ACTIONS(1088),
    [anon_sym_msize] = ACTIONS(1088),
    [anon_sym_gas] = ACTIONS(1088),
    [anon_sym_address] = ACTIONS(1088),
    [anon_sym_balance] = ACTIONS(1088),
    [anon_sym_selfbalance] = ACTIONS(1088),
    [anon_sym_caller] = ACTIONS(1088),
    [anon_sym_callvalue] = ACTIONS(1088),
    [anon_sym_calldataload] = ACTIONS(1088),
    [anon_sym_calldatasize] = ACTIONS(1088),
    [anon_sym_calldatacopy] = ACTIONS(1088),
    [anon_sym_extcodesize] = ACTIONS(1088),
    [anon_sym_extcodecopy] = ACTIONS(1088),
    [anon_sym_returndatasize] = ACTIONS(1088),
    [anon_sym_returndatacopy] = ACTIONS(1088),
    [anon_sym_extcodehash] = ACTIONS(1088),
    [anon_sym_create] = ACTIONS(1088),
    [anon_sym_create2] = ACTIONS(1088),
    [anon_sym_call] = ACTIONS(1088),
    [anon_sym_callcode] = ACTIONS(1088),
    [anon_sym_delegatecall] = ACTIONS(1088),
    [anon_sym_staticcall] = ACTIONS(1088),
    [anon_sym_return] = ACTIONS(1088),
    [anon_sym_revert] = ACTIONS(1088),
    [anon_sym_selfdestruct] = ACTIONS(1088),
    [anon_sym_invalid] = ACTIONS(1088),
    [anon_sym_log0] = ACTIONS(1088),
    [anon_sym_log1] = ACTIONS(1088),
    [anon_sym_log2] = ACTIONS(1088),
    [anon_sym_log3] = ACTIONS(1088),
    [anon_sym_log4] = ACTIONS(1088),
    [anon_sym_chainid] = ACTIONS(1088),
    [anon_sym_origin] = ACTIONS(1088),
    [anon_sym_gasprice] = ACTIONS(1088),
    [anon_sym_blockhash] = ACTIONS(1088),
    [anon_sym_blobhash] = ACTIONS(1088),
    [anon_sym_basefee] = ACTIONS(1088),
    [anon_sym_blobfee] = ACTIONS(1088),
    [anon_sym_coinbase] = ACTIONS(1088),
    [anon_sym_timestamp] = ACTIONS(1088),
    [anon_sym_number] = ACTIONS(1088),
    [anon_sym_difficulty] = ACTIONS(1088),
    [anon_sym_gaslimit] = ACTIONS(1088),
    [anon_sym_prevrandao] = ACTIONS(1088),
    [anon_sym_blobbasefee] = ACTIONS(1088),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(302)] = {
    [aux_sym_yul_variable_declaration_repeat1] = STATE(297),
    [sym_identifier] = ACTIONS(1134),
    [anon_sym_LBRACE] = ACTIONS(1136),
    [anon_sym_COMMA] = ACTIONS(1138),
    [anon_sym_RBRACE] = ACTIONS(1136),
    [anon_sym_for] = ACTIONS(1134),
    [sym_yul_leave] = ACTIONS(1134),
    [anon_sym_break] = ACTIONS(1134),
    [anon_sym_continue] = ACTIONS(1134),
    [sym_yul_decimal_number] = ACTIONS(1134),
    [sym_yul_hex_number] = ACTIONS(1136),
    [anon_sym_true] = ACTIONS(1134),
    [anon_sym_false] = ACTIONS(1134),
    [anon_sym_hex] = ACTIONS(1134),
    [anon_sym_DQUOTE] = ACTIONS(1136),
    [anon_sym_SQUOTE] = ACTIONS(1136),
    [anon_sym_let] = ACTIONS(1134),
    [anon_sym_COLON_EQ] = ACTIONS(1140),
    [anon_sym_if] = ACTIONS(1134),
    [anon_sym_switch] = ACTIONS(1134),
    [anon_sym_function] = ACTIONS(1134),
    [anon_sym_stop] = ACTIONS(1134),
    [anon_sym_add] = ACTIONS(1134),
    [anon_sym_sub] = ACTIONS(1134),
    [anon_sym_mul] = ACTIONS(1134),
    [anon_sym_div] = ACTIONS(1134),
    [anon_sym_sdiv] = ACTIONS(1134),
    [anon_sym_mod] = ACTIONS(1134),
    [anon_sym_smod] = ACTIONS(1134),
    [anon_sym_exp] = ACTIONS(1134),
    [anon_sym_not] = ACTIONS(1134),
    [anon_sym_lt] = ACTIONS(1134),
    [anon_sym_gt] = ACTIONS(1134),
    [anon_sym_slt] = ACTIONS(1134),
    [anon_sym_sgt] = ACTIONS(1134),
    [anon_sym_eq] = ACTIONS(1134),
    [anon_sym_iszero] = ACTIONS(1134),
    [anon_sym_and] = ACTIONS(1134),
    [anon_sym_or] = ACTIONS(1134),
    [anon_sym_xor] = ACTIONS(1134),
    [anon_sym_byte] = ACTIONS(1134),
    [anon_sym_shl] = ACTIONS(1134),
    [anon_sym_shr] = ACTIONS(1134),
    [anon_sym_sar] = ACTIONS(1134),
    [anon_sym_addmod] = ACTIONS(1134),
    [anon_sym_mulmod] = ACTIONS(1134),
    [anon_sym_signextend] = ACTIONS(1134),
    [anon_sym_keccak256] = ACTIONS(1134),
    [anon_sym_pop] = ACTIONS(1134),
    [anon_sym_mload] = ACTIONS(1134),
    [anon_sym_mcopy] = ACTIONS(1134),
    [anon_sym_tload] = ACTIONS(1134),
    [anon_sym_tstore] = ACTIONS(1134),
    [anon_sym_mstore] = ACTIONS(1134),
    [anon_sym_mstore8] = ACTIONS(1134),
    [anon_sym_sload] = ACTIONS(1134),
    [anon_sym_sstore] = ACTIONS(1134),
    [anon_sym_msize] = ACTIONS(1134),
    [anon_sym_gas] = ACTIONS(1134),
    [anon_sym_address] = ACTIONS(1134),
    [anon_sym_balance] = ACTIONS(1134),
    [anon_sym_selfbalance] = ACTIONS(1134),
    [anon_sym_caller] = ACTIONS(1134),
    [anon_sym_callvalue] = ACTIONS(1134),
    [anon_sym_calldataload] = ACTIONS(1134),
    [anon_sym_calldatasize] = ACTIONS(1134),
    [anon_sym_calldatacopy] = ACTIONS(1134),
    [anon_sym_extcodesize] = ACTIONS(1134),
    [anon_sym_extcodecopy] = ACTIONS(1134),
    [anon_sym_returndatasize] = ACTIONS(1134),
    [anon_sym_returndatacopy] = ACTIONS(1134),
    [anon_sym_extcodehash] = ACTIONS(1134),
    [anon_sym_create] = ACTIONS(1134),
    [anon_sym_create2] = ACTIONS(1134),
    [anon_sym_call] = ACTIONS(1134),
    [anon_sym_callcode] = ACTIONS(1134),
    [anon_sym_delegatecall] = ACTIONS(1134),
    [anon_sym_staticcall] = ACTIONS(1134),
    [anon_sym_return] = ACTIONS(1134),
    [anon_sym_revert] = ACTIONS(1134),
    [anon_sym_selfdestruct] = ACTIONS(1134),
    [anon_sym_invalid] = ACTIONS(1134),
    [anon_sym_log0] = ACTIONS(1134),
    [anon_sym_log1] = ACTIONS(1134),
    [anon_sym_log2] = ACTIONS(1134),
    [anon_sym_log3] = ACTIONS(1134),
    [anon_sym_log4] = ACTIONS(1134),
    [anon_sym_chainid] = ACTIONS(1134),
    [anon_sym_origin] = ACTIONS(1134),
    [anon_sym_gasprice] = ACTIONS(1134),
    [anon_sym_blockhash] = ACTIONS(1134),
    [anon_sym_blobhash] = ACTIONS(1134),
    [anon_sym_basefee] = ACTIONS(1134),
    [anon_sym_blobfee] = ACTIONS(1134),
    [anon_sym_coinbase] = ACTIONS(1134),
    [anon_sym_timestamp] = ACTIONS(1134),
    [anon_sym_number] = ACTIONS(1134),
    [anon_sym_difficulty] = ACTIONS(1134),
    [anon_sym_gaslimit] = ACTIONS(1134),
    [anon_sym_prevrandao] = ACTIONS(1134),
    [anon_sym_blobbasefee] = ACTIONS(1134),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(303)] = {
    [sym_identifier] = ACTIONS(1107),
    [anon_sym_LBRACE] = ACTIONS(1109),
    [anon_sym_COMMA] = ACTIONS(1109),
    [anon_sym_RBRACE] = ACTIONS(1109),
    [anon_sym_RPAREN] = ACTIONS(1109),
    [anon_sym_for] = ACTIONS(1107),
    [sym_yul_leave] = ACTIONS(1107),
    [anon_sym_break] = ACTIONS(1107),
    [anon_sym_continue] = ACTIONS(1107),
    [sym_yul_decimal_number] = ACTIONS(1107),
    [sym_yul_hex_number] = ACTIONS(1109),
    [anon_sym_true] = ACTIONS(1107),
    [anon_sym_false] = ACTIONS(1107),
    [anon_sym_hex] = ACTIONS(1107),
    [anon_sym_DQUOTE] = ACTIONS(1109),
    [anon_sym_SQUOTE] = ACTIONS(1109),
    [anon_sym_let] = ACTIONS(1107),
    [anon_sym_COLON_EQ] = ACTIONS(1109),
    [anon_sym_if] = ACTIONS(1107),
    [anon_sym_switch] = ACTIONS(1107),
    [anon_sym_function] = ACTIONS(1107),
    [anon_sym_stop] = ACTIONS(1107),
    [anon_sym_add] = ACTIONS(1107),
    [anon_sym_sub] = ACTIONS(1107),
    [anon_sym_mul] = ACTIONS(1107),
    [anon_sym_div] = ACTIONS(1107),
    [anon_sym_sdiv] = ACTIONS(1107),
    [anon_sym_mod] = ACTIONS(1107),
    [anon_sym_smod] = ACTIONS(1107),
    [anon_sym_exp] = ACTIONS(1107),
    [anon_sym_not] = ACTIONS(1107),
    [anon_sym_lt] = ACTIONS(1107),
    [anon_sym_gt] = ACTIONS(1107),
    [anon_sym_slt] = ACTIONS(1107),
    [anon_sym_sgt] = ACTIONS(1107),
    [anon_sym_eq] = ACTIONS(1107),
    [anon_sym_iszero] = ACTIONS(1107),
    [anon_sym_and] = ACTIONS(1107),
    [anon_sym_or] = ACTIONS(1107),
    [anon_sym_xor] = ACTIONS(1107),
    [anon_sym_byte] = ACTIONS(1107),
    [anon_sym_shl] = ACTIONS(1107),
    [anon_sym_shr] = ACTIONS(1107),
    [anon_sym_sar] = ACTIONS(1107),
    [anon_sym_addmod] = ACTIONS(1107),
    [anon_sym_mulmod] = ACTIONS(1107),
    [anon_sym_signextend] = ACTIONS(1107),
    [anon_sym_keccak256] = ACTIONS(1107),
    [anon_sym_pop] = ACTIONS(1107),
    [anon_sym_mload] = ACTIONS(1107),
    [anon_sym_mcopy] = ACTIONS(1107),
    [anon_sym_tload] = ACTIONS(1107),
    [anon_sym_tstore] = ACTIONS(1107),
    [anon_sym_mstore] = ACTIONS(1107),
    [anon_sym_mstore8] = ACTIONS(1107),
    [anon_sym_sload] = ACTIONS(1107),
    [anon_sym_sstore] = ACTIONS(1107),
    [anon_sym_msize] = ACTIONS(1107),
    [anon_sym_gas] = ACTIONS(1107),
    [anon_sym_address] = ACTIONS(1107),
    [anon_sym_balance] = ACTIONS(1107),
    [anon_sym_selfbalance] = ACTIONS(1107),
    [anon_sym_caller] = ACTIONS(1107),
    [anon_sym_callvalue] = ACTIONS(1107),
    [anon_sym_calldataload] = ACTIONS(1107),
    [anon_sym_calldatasize] = ACTIONS(1107),
    [anon_sym_calldatacopy] = ACTIONS(1107),
    [anon_sym_extcodesize] = ACTIONS(1107),
    [anon_sym_extcodecopy] = ACTIONS(1107),
    [anon_sym_returndatasize] = ACTIONS(1107),
    [anon_sym_returndatacopy] = ACTIONS(1107),
    [anon_sym_extcodehash] = ACTIONS(1107),
    [anon_sym_create] = ACTIONS(1107),
    [anon_sym_create2] = ACTIONS(1107),
    [anon_sym_call] = ACTIONS(1107),
    [anon_sym_callcode] = ACTIONS(1107),
    [anon_sym_delegatecall] = ACTIONS(1107),
    [anon_sym_staticcall] = ACTIONS(1107),
    [anon_sym_return] = ACTIONS(1107),
    [anon_sym_revert] = ACTIONS(1107),
    [anon_sym_selfdestruct] = ACTIONS(1107),
    [anon_sym_invalid] = ACTIONS(1107),
    [anon_sym_log0] = ACTIONS(1107),
    [anon_sym_log1] = ACTIONS(1107),
    [anon_sym_log2] = ACTIONS(1107),
    [anon_sym_log3] = ACTIONS(1107),
    [anon_sym_log4] = ACTIONS(1107),
    [anon_sym_chainid] = ACTIONS(1107),
    [anon_sym_origin] = ACTIONS(1107),
    [anon_sym_gasprice] = ACTIONS(1107),
    [anon_sym_blockhash] = ACTIONS(1107),
    [anon_sym_blobhash] = ACTIONS(1107),
    [anon_sym_basefee] = ACTIONS(1107),
    [anon_sym_blobfee] = ACTIONS(1107),
    [anon_sym_coinbase] = ACTIONS(1107),
    [anon_sym_timestamp] = ACTIONS(1107),
    [anon_sym_number] = ACTIONS(1107),
    [anon_sym_difficulty] = ACTIONS(1107),
    [anon_sym_gaslimit] = ACTIONS(1107),
    [anon_sym_prevrandao] = ACTIONS(1107),
    [anon_sym_blobbasefee] = ACTIONS(1107),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(304)] = {
    [aux_sym_yul_switch_statement_repeat1] = STATE(304),
    [sym_identifier] = ACTIONS(1142),
    [anon_sym_LBRACE] = ACTIONS(1144),
    [anon_sym_RBRACE] = ACTIONS(1144),
    [anon_sym_for] = ACTIONS(1142),
    [sym_yul_leave] = ACTIONS(1142),
    [anon_sym_break] = ACTIONS(1142),
    [anon_sym_continue] = ACTIONS(1142),
    [sym_yul_decimal_number] = ACTIONS(1142),
    [sym_yul_hex_number] = ACTIONS(1144),
    [anon_sym_true] = ACTIONS(1142),
    [anon_sym_false] = ACTIONS(1142),
    [anon_sym_hex] = ACTIONS(1142),
    [anon_sym_DQUOTE] = ACTIONS(1144),
    [anon_sym_SQUOTE] = ACTIONS(1144),
    [anon_sym_let] = ACTIONS(1142),
    [anon_sym_if] = ACTIONS(1142),
    [anon_sym_switch] = ACTIONS(1142),
    [anon_sym_default] = ACTIONS(1142),
    [anon_sym_case] = ACTIONS(1146),
    [anon_sym_function] = ACTIONS(1142),
    [anon_sym_stop] = ACTIONS(1142),
    [anon_sym_add] = ACTIONS(1142),
    [anon_sym_sub] = ACTIONS(1142),
    [anon_sym_mul] = ACTIONS(1142),
    [anon_sym_div] = ACTIONS(1142),
    [anon_sym_sdiv] = ACTIONS(1142),
    [anon_sym_mod] = ACTIONS(1142),
    [anon_sym_smod] = ACTIONS(1142),
    [anon_sym_exp] = ACTIONS(1142),
    [anon_sym_not] = ACTIONS(1142),
    [anon_sym_lt] = ACTIONS(1142),
    [anon_sym_gt] = ACTIONS(1142),
    [anon_sym_slt] = ACTIONS(1142),
    [anon_sym_sgt] = ACTIONS(1142),
    [anon_sym_eq] = ACTIONS(1142),
    [anon_sym_iszero] = ACTIONS(1142),
    [anon_sym_and] = ACTIONS(1142),
    [anon_sym_or] = ACTIONS(1142),
    [anon_sym_xor] = ACTIONS(1142),
    [anon_sym_byte] = ACTIONS(1142),
    [anon_sym_shl] = ACTIONS(1142),
    [anon_sym_shr] = ACTIONS(1142),
    [anon_sym_sar] = ACTIONS(1142),
    [anon_sym_addmod] = ACTIONS(1142),
    [anon_sym_mulmod] = ACTIONS(1142),
    [anon_sym_signextend] = ACTIONS(1142),
    [anon_sym_keccak256] = ACTIONS(1142),
    [anon_sym_pop] = ACTIONS(1142),
    [anon_sym_mload] = ACTIONS(1142),
    [anon_sym_mcopy] = ACTIONS(1142),
    [anon_sym_tload] = ACTIONS(1142),
    [anon_sym_tstore] = ACTIONS(1142),
    [anon_sym_mstore] = ACTIONS(1142),
    [anon_sym_mstore8] = ACTIONS(1142),
    [anon_sym_sload] = ACTIONS(1142),
    [anon_sym_sstore] = ACTIONS(1142),
    [anon_sym_msize] = ACTIONS(1142),
    [anon_sym_gas] = ACTIONS(1142),
    [anon_sym_address] = ACTIONS(1142),
    [anon_sym_balance] = ACTIONS(1142),
    [anon_sym_selfbalance] = ACTIONS(1142),
    [anon_sym_caller] = ACTIONS(1142),
    [anon_sym_callvalue] = ACTIONS(1142),
    [anon_sym_calldataload] = ACTIONS(1142),
    [anon_sym_calldatasize] = ACTIONS(1142),
    [anon_sym_calldatacopy] = ACTIONS(1142),
    [anon_sym_extcodesize] = ACTIONS(1142),
    [anon_sym_extcodecopy] = ACTIONS(1142),
    [anon_sym_returndatasize] = ACTIONS(1142),
    [anon_sym_returndatacopy] = ACTIONS(1142),
    [anon_sym_extcodehash] = ACTIONS(1142),
    [anon_sym_create] = ACTIONS(1142),
    [anon_sym_create2] = ACTIONS(1142),
    [anon_sym_call] = ACTIONS(1142),
    [anon_sym_callcode] = ACTIONS(1142),
    [anon_sym_delegatecall] = ACTIONS(1142),
    [anon_sym_staticcall] = ACTIONS(1142),
    [anon_sym_return] = ACTIONS(1142),
    [anon_sym_revert] = ACTIONS(1142),
    [anon_sym_selfdestruct] = ACTIONS(1142),
    [anon_sym_invalid] = ACTIONS(1142),
    [anon_sym_log0] = ACTIONS(1142),
    [anon_sym_log1] = ACTIONS(1142),
    [anon_sym_log2] = ACTIONS(1142),
    [anon_sym_log3] = ACTIONS(1142),
    [anon_sym_log4] = ACTIONS(1142),
    [anon_sym_chainid] = ACTIONS(1142),
    [anon_sym_origin] = ACTIONS(1142),
    [anon_sym_gasprice] = ACTIONS(1142),
    [anon_sym_blockhash] = ACTIONS(1142),
    [anon_sym_blobhash] = ACTIONS(1142),
    [anon_sym_basefee] = ACTIONS(1142),
    [anon_sym_blobfee] = ACTIONS(1142),
    [anon_sym_coinbase] = ACTIONS(1142),
    [anon_sym_timestamp] = ACTIONS(1142),
    [anon_sym_number] = ACTIONS(1142),
    [anon_sym_difficulty] = ACTIONS(1142),
    [anon_sym_gaslimit] = ACTIONS(1142),
    [anon_sym_prevrandao] = ACTIONS(1142),
    [anon_sym_blobbasefee] = ACTIONS(1142),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(305)] = {
    [sym_yul_identifier] = STATE(303),
    [sym_identifier] = ACTIONS(1134),
    [anon_sym_LBRACE] = ACTIONS(1136),
    [anon_sym_RBRACE] = ACTIONS(1136),
    [anon_sym_for] = ACTIONS(1134),
    [sym_yul_leave] = ACTIONS(1134),
    [anon_sym_break] = ACTIONS(1134),
    [anon_sym_continue] = ACTIONS(1134),
    [sym_yul_decimal_number] = ACTIONS(1134),
    [sym_yul_hex_number] = ACTIONS(1136),
    [anon_sym_true] = ACTIONS(1134),
    [anon_sym_false] = ACTIONS(1134),
    [anon_sym_hex] = ACTIONS(1134),
    [anon_sym_DQUOTE] = ACTIONS(1136),
    [anon_sym_SQUOTE] = ACTIONS(1136),
    [anon_sym_let] = ACTIONS(1134),
    [anon_sym_COLON_EQ] = ACTIONS(1140),
    [anon_sym_if] = ACTIONS(1134),
    [anon_sym_switch] = ACTIONS(1134),
    [anon_sym_function] = ACTIONS(1134),
    [anon_sym_stop] = ACTIONS(1134),
    [anon_sym_add] = ACTIONS(1134),
    [anon_sym_sub] = ACTIONS(1134),
    [anon_sym_mul] = ACTIONS(1134),
    [anon_sym_div] = ACTIONS(1134),
    [anon_sym_sdiv] = ACTIONS(1134),
    [anon_sym_mod] = ACTIONS(1134),
    [anon_sym_smod] = ACTIONS(1134),
    [anon_sym_exp] = ACTIONS(1134),
    [anon_sym_not] = ACTIONS(1134),
    [anon_sym_lt] = ACTIONS(1134),
    [anon_sym_gt] = ACTIONS(1134),
    [anon_sym_slt] = ACTIONS(1134),
    [anon_sym_sgt] = ACTIONS(1134),
    [anon_sym_eq] = ACTIONS(1134),
    [anon_sym_iszero] = ACTIONS(1134),
    [anon_sym_and] = ACTIONS(1134),
    [anon_sym_or] = ACTIONS(1134),
    [anon_sym_xor] = ACTIONS(1134),
    [anon_sym_byte] = ACTIONS(1134),
    [anon_sym_shl] = ACTIONS(1134),
    [anon_sym_shr] = ACTIONS(1134),
    [anon_sym_sar] = ACTIONS(1134),
    [anon_sym_addmod] = ACTIONS(1134),
    [anon_sym_mulmod] = ACTIONS(1134),
    [anon_sym_signextend] = ACTIONS(1134),
    [anon_sym_keccak256] = ACTIONS(1134),
    [anon_sym_pop] = ACTIONS(1134),
    [anon_sym_mload] = ACTIONS(1134),
    [anon_sym_mcopy] = ACTIONS(1134),
    [anon_sym_tload] = ACTIONS(1134),
    [anon_sym_tstore] = ACTIONS(1134),
    [anon_sym_mstore] = ACTIONS(1134),
    [anon_sym_mstore8] = ACTIONS(1134),
    [anon_sym_sload] = ACTIONS(1134),
    [anon_sym_sstore] = ACTIONS(1134),
    [anon_sym_msize] = ACTIONS(1134),
    [anon_sym_gas] = ACTIONS(1134),
    [anon_sym_address] = ACTIONS(1134),
    [anon_sym_balance] = ACTIONS(1134),
    [anon_sym_selfbalance] = ACTIONS(1134),
    [anon_sym_caller] = ACTIONS(1134),
    [anon_sym_callvalue] = ACTIONS(1134),
    [anon_sym_calldataload] = ACTIONS(1134),
    [anon_sym_calldatasize] = ACTIONS(1134),
    [anon_sym_calldatacopy] = ACTIONS(1134),
    [anon_sym_extcodesize] = ACTIONS(1134),
    [anon_sym_extcodecopy] = ACTIONS(1134),
    [anon_sym_returndatasize] = ACTIONS(1134),
    [anon_sym_returndatacopy] = ACTIONS(1134),
    [anon_sym_extcodehash] = ACTIONS(1134),
    [anon_sym_create] = ACTIONS(1134),
    [anon_sym_create2] = ACTIONS(1134),
    [anon_sym_call] = ACTIONS(1134),
    [anon_sym_callcode] = ACTIONS(1134),
    [anon_sym_delegatecall] = ACTIONS(1134),
    [anon_sym_staticcall] = ACTIONS(1134),
    [anon_sym_return] = ACTIONS(1134),
    [anon_sym_revert] = ACTIONS(1134),
    [anon_sym_selfdestruct] = ACTIONS(1134),
    [anon_sym_invalid] = ACTIONS(1134),
    [anon_sym_log0] = ACTIONS(1134),
    [anon_sym_log1] = ACTIONS(1134),
    [anon_sym_log2] = ACTIONS(1134),
    [anon_sym_log3] = ACTIONS(1134),
    [anon_sym_log4] = ACTIONS(1134),
    [anon_sym_chainid] = ACTIONS(1134),
    [anon_sym_origin] = ACTIONS(1134),
    [anon_sym_gasprice] = ACTIONS(1134),
    [anon_sym_blockhash] = ACTIONS(1134),
    [anon_sym_blobhash] = ACTIONS(1134),
    [anon_sym_basefee] = ACTIONS(1134),
    [anon_sym_blobfee] = ACTIONS(1134),
    [anon_sym_coinbase] = ACTIONS(1134),
    [anon_sym_timestamp] = ACTIONS(1134),
    [anon_sym_number] = ACTIONS(1134),
    [anon_sym_difficulty] = ACTIONS(1134),
    [anon_sym_gaslimit] = ACTIONS(1134),
    [anon_sym_prevrandao] = ACTIONS(1134),
    [anon_sym_blobbasefee] = ACTIONS(1134),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(306)] = {
    [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_hex] = ACTIONS(1149),
    [anon_sym_DQUOTE] = ACTIONS(1151),
    [anon_sym_SQUOTE] = ACTIONS(1151),
    [anon_sym_let] = ACTIONS(1149),
    [anon_sym_if] = ACTIONS(1149),
    [anon_sym_switch] = ACTIONS(1149),
    [anon_sym_default] = ACTIONS(1149),
    [anon_sym_case] = 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_mcopy] = ACTIONS(1149),
    [anon_sym_tload] = ACTIONS(1149),
    [anon_sym_tstore] = 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_blobhash] = ACTIONS(1149),
    [anon_sym_basefee] = ACTIONS(1149),
    [anon_sym_blobfee] = 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_prevrandao] = ACTIONS(1149),
    [anon_sym_blobbasefee] = ACTIONS(1149),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(307)] = {
    [sym_identifier] = ACTIONS(1153),
    [anon_sym_LBRACE] = ACTIONS(1155),
    [anon_sym_RBRACE] = ACTIONS(1155),
    [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(1155),
    [anon_sym_true] = ACTIONS(1153),
    [anon_sym_false] = ACTIONS(1153),
    [anon_sym_hex] = ACTIONS(1153),
    [anon_sym_DQUOTE] = ACTIONS(1155),
    [anon_sym_SQUOTE] = ACTIONS(1155),
    [anon_sym_let] = ACTIONS(1153),
    [anon_sym_if] = ACTIONS(1153),
    [anon_sym_switch] = ACTIONS(1153),
    [anon_sym_default] = ACTIONS(1153),
    [anon_sym_case] = 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_mcopy] = ACTIONS(1153),
    [anon_sym_tload] = ACTIONS(1153),
    [anon_sym_tstore] = 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_blobhash] = ACTIONS(1153),
    [anon_sym_basefee] = ACTIONS(1153),
    [anon_sym_blobfee] = 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_prevrandao] = ACTIONS(1153),
    [anon_sym_blobbasefee] = ACTIONS(1153),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(308)] = {
    [sym_identifier] = ACTIONS(1157),
    [anon_sym_LBRACE] = ACTIONS(1159),
    [anon_sym_RBRACE] = ACTIONS(1159),
    [anon_sym_for] = ACTIONS(1157),
    [sym_yul_leave] = ACTIONS(1157),
    [anon_sym_break] = ACTIONS(1157),
    [anon_sym_continue] = ACTIONS(1157),
    [sym_yul_decimal_number] = ACTIONS(1157),
    [sym_yul_hex_number] = ACTIONS(1159),
    [anon_sym_true] = ACTIONS(1157),
    [anon_sym_false] = ACTIONS(1157),
    [anon_sym_hex] = ACTIONS(1157),
    [anon_sym_DQUOTE] = ACTIONS(1159),
    [anon_sym_SQUOTE] = ACTIONS(1159),
    [anon_sym_let] = ACTIONS(1157),
    [anon_sym_if] = ACTIONS(1157),
    [anon_sym_switch] = ACTIONS(1157),
    [anon_sym_default] = ACTIONS(1157),
    [anon_sym_case] = ACTIONS(1157),
    [anon_sym_function] = ACTIONS(1157),
    [anon_sym_stop] = ACTIONS(1157),
    [anon_sym_add] = ACTIONS(1157),
    [anon_sym_sub] = ACTIONS(1157),
    [anon_sym_mul] = ACTIONS(1157),
    [anon_sym_div] = ACTIONS(1157),
    [anon_sym_sdiv] = ACTIONS(1157),
    [anon_sym_mod] = ACTIONS(1157),
    [anon_sym_smod] = ACTIONS(1157),
    [anon_sym_exp] = ACTIONS(1157),
    [anon_sym_not] = ACTIONS(1157),
    [anon_sym_lt] = ACTIONS(1157),
    [anon_sym_gt] = ACTIONS(1157),
    [anon_sym_slt] = ACTIONS(1157),
    [anon_sym_sgt] = ACTIONS(1157),
    [anon_sym_eq] = ACTIONS(1157),
    [anon_sym_iszero] = ACTIONS(1157),
    [anon_sym_and] = ACTIONS(1157),
    [anon_sym_or] = ACTIONS(1157),
    [anon_sym_xor] = ACTIONS(1157),
    [anon_sym_byte] = ACTIONS(1157),
    [anon_sym_shl] = ACTIONS(1157),
    [anon_sym_shr] = ACTIONS(1157),
    [anon_sym_sar] = ACTIONS(1157),
    [anon_sym_addmod] = ACTIONS(1157),
    [anon_sym_mulmod] = ACTIONS(1157),
    [anon_sym_signextend] = ACTIONS(1157),
    [anon_sym_keccak256] = ACTIONS(1157),
    [anon_sym_pop] = ACTIONS(1157),
    [anon_sym_mload] = ACTIONS(1157),
    [anon_sym_mcopy] = ACTIONS(1157),
    [anon_sym_tload] = ACTIONS(1157),
    [anon_sym_tstore] = ACTIONS(1157),
    [anon_sym_mstore] = ACTIONS(1157),
    [anon_sym_mstore8] = ACTIONS(1157),
    [anon_sym_sload] = ACTIONS(1157),
    [anon_sym_sstore] = ACTIONS(1157),
    [anon_sym_msize] = ACTIONS(1157),
    [anon_sym_gas] = ACTIONS(1157),
    [anon_sym_address] = ACTIONS(1157),
    [anon_sym_balance] = ACTIONS(1157),
    [anon_sym_selfbalance] = ACTIONS(1157),
    [anon_sym_caller] = ACTIONS(1157),
    [anon_sym_callvalue] = ACTIONS(1157),
    [anon_sym_calldataload] = ACTIONS(1157),
    [anon_sym_calldatasize] = ACTIONS(1157),
    [anon_sym_calldatacopy] = ACTIONS(1157),
    [anon_sym_extcodesize] = ACTIONS(1157),
    [anon_sym_extcodecopy] = ACTIONS(1157),
    [anon_sym_returndatasize] = ACTIONS(1157),
    [anon_sym_returndatacopy] = ACTIONS(1157),
    [anon_sym_extcodehash] = ACTIONS(1157),
    [anon_sym_create] = ACTIONS(1157),
    [anon_sym_create2] = ACTIONS(1157),
    [anon_sym_call] = ACTIONS(1157),
    [anon_sym_callcode] = ACTIONS(1157),
    [anon_sym_delegatecall] = ACTIONS(1157),
    [anon_sym_staticcall] = ACTIONS(1157),
    [anon_sym_return] = ACTIONS(1157),
    [anon_sym_revert] = ACTIONS(1157),
    [anon_sym_selfdestruct] = ACTIONS(1157),
    [anon_sym_invalid] = ACTIONS(1157),
    [anon_sym_log0] = ACTIONS(1157),
    [anon_sym_log1] = ACTIONS(1157),
    [anon_sym_log2] = ACTIONS(1157),
    [anon_sym_log3] = ACTIONS(1157),
    [anon_sym_log4] = ACTIONS(1157),
    [anon_sym_chainid] = ACTIONS(1157),
    [anon_sym_origin] = ACTIONS(1157),
    [anon_sym_gasprice] = ACTIONS(1157),
    [anon_sym_blockhash] = ACTIONS(1157),
    [anon_sym_blobhash] = ACTIONS(1157),
    [anon_sym_basefee] = ACTIONS(1157),
    [anon_sym_blobfee] = ACTIONS(1157),
    [anon_sym_coinbase] = ACTIONS(1157),
    [anon_sym_timestamp] = ACTIONS(1157),
    [anon_sym_number] = ACTIONS(1157),
    [anon_sym_difficulty] = ACTIONS(1157),
    [anon_sym_gaslimit] = ACTIONS(1157),
    [anon_sym_prevrandao] = ACTIONS(1157),
    [anon_sym_blobbasefee] = ACTIONS(1157),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(309)] = {
    [sym_yul_identifier] = STATE(303),
    [sym_identifier] = ACTIONS(1161),
    [anon_sym_LBRACE] = ACTIONS(1163),
    [anon_sym_RBRACE] = ACTIONS(1163),
    [anon_sym_for] = ACTIONS(1161),
    [sym_yul_leave] = ACTIONS(1161),
    [anon_sym_break] = ACTIONS(1161),
    [anon_sym_continue] = ACTIONS(1161),
    [sym_yul_decimal_number] = ACTIONS(1161),
    [sym_yul_hex_number] = ACTIONS(1163),
    [anon_sym_true] = ACTIONS(1161),
    [anon_sym_false] = ACTIONS(1161),
    [anon_sym_hex] = ACTIONS(1161),
    [anon_sym_DQUOTE] = ACTIONS(1163),
    [anon_sym_SQUOTE] = ACTIONS(1163),
    [anon_sym_let] = ACTIONS(1161),
    [anon_sym_COLON_EQ] = ACTIONS(1165),
    [anon_sym_if] = ACTIONS(1161),
    [anon_sym_switch] = ACTIONS(1161),
    [anon_sym_function] = ACTIONS(1161),
    [anon_sym_stop] = ACTIONS(1161),
    [anon_sym_add] = ACTIONS(1161),
    [anon_sym_sub] = ACTIONS(1161),
    [anon_sym_mul] = ACTIONS(1161),
    [anon_sym_div] = ACTIONS(1161),
    [anon_sym_sdiv] = ACTIONS(1161),
    [anon_sym_mod] = ACTIONS(1161),
    [anon_sym_smod] = ACTIONS(1161),
    [anon_sym_exp] = ACTIONS(1161),
    [anon_sym_not] = ACTIONS(1161),
    [anon_sym_lt] = ACTIONS(1161),
    [anon_sym_gt] = ACTIONS(1161),
    [anon_sym_slt] = ACTIONS(1161),
    [anon_sym_sgt] = ACTIONS(1161),
    [anon_sym_eq] = ACTIONS(1161),
    [anon_sym_iszero] = ACTIONS(1161),
    [anon_sym_and] = ACTIONS(1161),
    [anon_sym_or] = ACTIONS(1161),
    [anon_sym_xor] = ACTIONS(1161),
    [anon_sym_byte] = ACTIONS(1161),
    [anon_sym_shl] = ACTIONS(1161),
    [anon_sym_shr] = ACTIONS(1161),
    [anon_sym_sar] = ACTIONS(1161),
    [anon_sym_addmod] = ACTIONS(1161),
    [anon_sym_mulmod] = ACTIONS(1161),
    [anon_sym_signextend] = ACTIONS(1161),
    [anon_sym_keccak256] = ACTIONS(1161),
    [anon_sym_pop] = ACTIONS(1161),
    [anon_sym_mload] = ACTIONS(1161),
    [anon_sym_mcopy] = ACTIONS(1161),
    [anon_sym_tload] = ACTIONS(1161),
    [anon_sym_tstore] = ACTIONS(1161),
    [anon_sym_mstore] = ACTIONS(1161),
    [anon_sym_mstore8] = ACTIONS(1161),
    [anon_sym_sload] = ACTIONS(1161),
    [anon_sym_sstore] = ACTIONS(1161),
    [anon_sym_msize] = ACTIONS(1161),
    [anon_sym_gas] = ACTIONS(1161),
    [anon_sym_address] = ACTIONS(1161),
    [anon_sym_balance] = ACTIONS(1161),
    [anon_sym_selfbalance] = ACTIONS(1161),
    [anon_sym_caller] = ACTIONS(1161),
    [anon_sym_callvalue] = ACTIONS(1161),
    [anon_sym_calldataload] = ACTIONS(1161),
    [anon_sym_calldatasize] = ACTIONS(1161),
    [anon_sym_calldatacopy] = ACTIONS(1161),
    [anon_sym_extcodesize] = ACTIONS(1161),
    [anon_sym_extcodecopy] = ACTIONS(1161),
    [anon_sym_returndatasize] = ACTIONS(1161),
    [anon_sym_returndatacopy] = ACTIONS(1161),
    [anon_sym_extcodehash] = ACTIONS(1161),
    [anon_sym_create] = ACTIONS(1161),
    [anon_sym_create2] = ACTIONS(1161),
    [anon_sym_call] = ACTIONS(1161),
    [anon_sym_callcode] = ACTIONS(1161),
    [anon_sym_delegatecall] = ACTIONS(1161),
    [anon_sym_staticcall] = ACTIONS(1161),
    [anon_sym_return] = ACTIONS(1161),
    [anon_sym_revert] = ACTIONS(1161),
    [anon_sym_selfdestruct] = ACTIONS(1161),
    [anon_sym_invalid] = ACTIONS(1161),
    [anon_sym_log0] = ACTIONS(1161),
    [anon_sym_log1] = ACTIONS(1161),
    [anon_sym_log2] = ACTIONS(1161),
    [anon_sym_log3] = ACTIONS(1161),
    [anon_sym_log4] = ACTIONS(1161),
    [anon_sym_chainid] = ACTIONS(1161),
    [anon_sym_origin] = ACTIONS(1161),
    [anon_sym_gasprice] = ACTIONS(1161),
    [anon_sym_blockhash] = ACTIONS(1161),
    [anon_sym_blobhash] = ACTIONS(1161),
    [anon_sym_basefee] = ACTIONS(1161),
    [anon_sym_blobfee] = ACTIONS(1161),
    [anon_sym_coinbase] = ACTIONS(1161),
    [anon_sym_timestamp] = ACTIONS(1161),
    [anon_sym_number] = ACTIONS(1161),
    [anon_sym_difficulty] = ACTIONS(1161),
    [anon_sym_gaslimit] = ACTIONS(1161),
    [anon_sym_prevrandao] = ACTIONS(1161),
    [anon_sym_blobbasefee] = ACTIONS(1161),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(310)] = {
    [sym_yul_identifier] = STATE(275),
    [sym__yul_expression] = STATE(746),
    [sym_yul_path] = STATE(746),
    [sym__yul_literal] = STATE(746),
    [sym_yul_string_literal] = STATE(746),
    [sym_yul_boolean] = STATE(746),
    [sym_yul_hex_string_literal] = STATE(746),
    [sym_yul_function_call] = STATE(746),
    [sym_yul_evm_builtin] = STATE(284),
    [sym_string] = STATE(290),
    [sym_identifier] = ACTIONS(1167),
    [anon_sym_RPAREN] = ACTIONS(1169),
    [sym_yul_decimal_number] = ACTIONS(1171),
    [sym_yul_hex_number] = ACTIONS(1173),
    [anon_sym_true] = ACTIONS(908),
    [anon_sym_false] = ACTIONS(908),
    [anon_sym_hex] = ACTIONS(910),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_stop] = ACTIONS(924),
    [anon_sym_add] = ACTIONS(924),
    [anon_sym_sub] = ACTIONS(924),
    [anon_sym_mul] = ACTIONS(924),
    [anon_sym_div] = ACTIONS(924),
    [anon_sym_sdiv] = ACTIONS(924),
    [anon_sym_mod] = ACTIONS(924),
    [anon_sym_smod] = ACTIONS(924),
    [anon_sym_exp] = ACTIONS(924),
    [anon_sym_not] = ACTIONS(924),
    [anon_sym_lt] = ACTIONS(924),
    [anon_sym_gt] = ACTIONS(924),
    [anon_sym_slt] = ACTIONS(924),
    [anon_sym_sgt] = ACTIONS(924),
    [anon_sym_eq] = ACTIONS(924),
    [anon_sym_iszero] = ACTIONS(924),
    [anon_sym_and] = ACTIONS(924),
    [anon_sym_or] = ACTIONS(924),
    [anon_sym_xor] = ACTIONS(924),
    [anon_sym_byte] = ACTIONS(924),
    [anon_sym_shl] = ACTIONS(924),
    [anon_sym_shr] = ACTIONS(924),
    [anon_sym_sar] = ACTIONS(924),
    [anon_sym_addmod] = ACTIONS(924),
    [anon_sym_mulmod] = ACTIONS(924),
    [anon_sym_signextend] = ACTIONS(924),
    [anon_sym_keccak256] = ACTIONS(924),
    [anon_sym_pop] = ACTIONS(924),
    [anon_sym_mload] = ACTIONS(924),
    [anon_sym_mcopy] = ACTIONS(924),
    [anon_sym_tload] = ACTIONS(924),
    [anon_sym_tstore] = ACTIONS(924),
    [anon_sym_mstore] = ACTIONS(924),
    [anon_sym_mstore8] = ACTIONS(924),
    [anon_sym_sload] = ACTIONS(924),
    [anon_sym_sstore] = ACTIONS(924),
    [anon_sym_msize] = ACTIONS(924),
    [anon_sym_gas] = ACTIONS(924),
    [anon_sym_address] = ACTIONS(924),
    [anon_sym_balance] = ACTIONS(924),
    [anon_sym_selfbalance] = ACTIONS(924),
    [anon_sym_caller] = ACTIONS(924),
    [anon_sym_callvalue] = ACTIONS(924),
    [anon_sym_calldataload] = ACTIONS(924),
    [anon_sym_calldatasize] = ACTIONS(924),
    [anon_sym_calldatacopy] = ACTIONS(924),
    [anon_sym_extcodesize] = ACTIONS(924),
    [anon_sym_extcodecopy] = ACTIONS(924),
    [anon_sym_returndatasize] = ACTIONS(924),
    [anon_sym_returndatacopy] = ACTIONS(924),
    [anon_sym_extcodehash] = ACTIONS(924),
    [anon_sym_create] = ACTIONS(924),
    [anon_sym_create2] = ACTIONS(924),
    [anon_sym_call] = ACTIONS(924),
    [anon_sym_callcode] = ACTIONS(924),
    [anon_sym_delegatecall] = ACTIONS(924),
    [anon_sym_staticcall] = ACTIONS(924),
    [anon_sym_return] = ACTIONS(924),
    [anon_sym_revert] = ACTIONS(924),
    [anon_sym_selfdestruct] = ACTIONS(924),
    [anon_sym_invalid] = ACTIONS(924),
    [anon_sym_log0] = ACTIONS(924),
    [anon_sym_log1] = ACTIONS(924),
    [anon_sym_log2] = ACTIONS(924),
    [anon_sym_log3] = ACTIONS(924),
    [anon_sym_log4] = ACTIONS(924),
    [anon_sym_chainid] = ACTIONS(924),
    [anon_sym_origin] = ACTIONS(924),
    [anon_sym_gasprice] = ACTIONS(924),
    [anon_sym_blockhash] = ACTIONS(924),
    [anon_sym_blobhash] = ACTIONS(924),
    [anon_sym_basefee] = ACTIONS(924),
    [anon_sym_blobfee] = ACTIONS(924),
    [anon_sym_coinbase] = ACTIONS(924),
    [anon_sym_timestamp] = ACTIONS(924),
    [anon_sym_number] = ACTIONS(924),
    [anon_sym_difficulty] = ACTIONS(924),
    [anon_sym_gaslimit] = ACTIONS(924),
    [anon_sym_prevrandao] = ACTIONS(924),
    [anon_sym_blobbasefee] = ACTIONS(924),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(311)] = {
    [sym_identifier] = ACTIONS(1175),
    [anon_sym_LBRACE] = ACTIONS(1177),
    [anon_sym_RBRACE] = ACTIONS(1177),
    [anon_sym_for] = ACTIONS(1175),
    [sym_yul_leave] = ACTIONS(1175),
    [anon_sym_break] = ACTIONS(1175),
    [anon_sym_continue] = ACTIONS(1175),
    [sym_yul_decimal_number] = ACTIONS(1175),
    [sym_yul_hex_number] = ACTIONS(1177),
    [anon_sym_true] = ACTIONS(1175),
    [anon_sym_false] = ACTIONS(1175),
    [anon_sym_hex] = ACTIONS(1175),
    [anon_sym_DQUOTE] = ACTIONS(1177),
    [anon_sym_SQUOTE] = ACTIONS(1177),
    [anon_sym_let] = ACTIONS(1175),
    [anon_sym_COLON_EQ] = ACTIONS(1179),
    [anon_sym_if] = ACTIONS(1175),
    [anon_sym_switch] = ACTIONS(1175),
    [anon_sym_function] = ACTIONS(1175),
    [anon_sym_stop] = ACTIONS(1175),
    [anon_sym_add] = ACTIONS(1175),
    [anon_sym_sub] = ACTIONS(1175),
    [anon_sym_mul] = ACTIONS(1175),
    [anon_sym_div] = ACTIONS(1175),
    [anon_sym_sdiv] = ACTIONS(1175),
    [anon_sym_mod] = ACTIONS(1175),
    [anon_sym_smod] = ACTIONS(1175),
    [anon_sym_exp] = ACTIONS(1175),
    [anon_sym_not] = ACTIONS(1175),
    [anon_sym_lt] = ACTIONS(1175),
    [anon_sym_gt] = ACTIONS(1175),
    [anon_sym_slt] = ACTIONS(1175),
    [anon_sym_sgt] = ACTIONS(1175),
    [anon_sym_eq] = ACTIONS(1175),
    [anon_sym_iszero] = ACTIONS(1175),
    [anon_sym_and] = ACTIONS(1175),
    [anon_sym_or] = ACTIONS(1175),
    [anon_sym_xor] = ACTIONS(1175),
    [anon_sym_byte] = ACTIONS(1175),
    [anon_sym_shl] = ACTIONS(1175),
    [anon_sym_shr] = ACTIONS(1175),
    [anon_sym_sar] = ACTIONS(1175),
    [anon_sym_addmod] = ACTIONS(1175),
    [anon_sym_mulmod] = ACTIONS(1175),
    [anon_sym_signextend] = ACTIONS(1175),
    [anon_sym_keccak256] = ACTIONS(1175),
    [anon_sym_pop] = ACTIONS(1175),
    [anon_sym_mload] = ACTIONS(1175),
    [anon_sym_mcopy] = ACTIONS(1175),
    [anon_sym_tload] = ACTIONS(1175),
    [anon_sym_tstore] = ACTIONS(1175),
    [anon_sym_mstore] = ACTIONS(1175),
    [anon_sym_mstore8] = ACTIONS(1175),
    [anon_sym_sload] = ACTIONS(1175),
    [anon_sym_sstore] = ACTIONS(1175),
    [anon_sym_msize] = ACTIONS(1175),
    [anon_sym_gas] = ACTIONS(1175),
    [anon_sym_address] = ACTIONS(1175),
    [anon_sym_balance] = ACTIONS(1175),
    [anon_sym_selfbalance] = ACTIONS(1175),
    [anon_sym_caller] = ACTIONS(1175),
    [anon_sym_callvalue] = ACTIONS(1175),
    [anon_sym_calldataload] = ACTIONS(1175),
    [anon_sym_calldatasize] = ACTIONS(1175),
    [anon_sym_calldatacopy] = ACTIONS(1175),
    [anon_sym_extcodesize] = ACTIONS(1175),
    [anon_sym_extcodecopy] = ACTIONS(1175),
    [anon_sym_returndatasize] = ACTIONS(1175),
    [anon_sym_returndatacopy] = ACTIONS(1175),
    [anon_sym_extcodehash] = ACTIONS(1175),
    [anon_sym_create] = ACTIONS(1175),
    [anon_sym_create2] = ACTIONS(1175),
    [anon_sym_call] = ACTIONS(1175),
    [anon_sym_callcode] = ACTIONS(1175),
    [anon_sym_delegatecall] = ACTIONS(1175),
    [anon_sym_staticcall] = ACTIONS(1175),
    [anon_sym_return] = ACTIONS(1175),
    [anon_sym_revert] = ACTIONS(1175),
    [anon_sym_selfdestruct] = ACTIONS(1175),
    [anon_sym_invalid] = ACTIONS(1175),
    [anon_sym_log0] = ACTIONS(1175),
    [anon_sym_log1] = ACTIONS(1175),
    [anon_sym_log2] = ACTIONS(1175),
    [anon_sym_log3] = ACTIONS(1175),
    [anon_sym_log4] = ACTIONS(1175),
    [anon_sym_chainid] = ACTIONS(1175),
    [anon_sym_origin] = ACTIONS(1175),
    [anon_sym_gasprice] = ACTIONS(1175),
    [anon_sym_blockhash] = ACTIONS(1175),
    [anon_sym_blobhash] = ACTIONS(1175),
    [anon_sym_basefee] = ACTIONS(1175),
    [anon_sym_blobfee] = ACTIONS(1175),
    [anon_sym_coinbase] = ACTIONS(1175),
    [anon_sym_timestamp] = ACTIONS(1175),
    [anon_sym_number] = ACTIONS(1175),
    [anon_sym_difficulty] = ACTIONS(1175),
    [anon_sym_gaslimit] = ACTIONS(1175),
    [anon_sym_prevrandao] = ACTIONS(1175),
    [anon_sym_blobbasefee] = ACTIONS(1175),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(312)] = {
    [sym_identifier] = ACTIONS(1161),
    [anon_sym_LBRACE] = ACTIONS(1163),
    [anon_sym_RBRACE] = ACTIONS(1163),
    [anon_sym_for] = ACTIONS(1161),
    [sym_yul_leave] = ACTIONS(1161),
    [anon_sym_break] = ACTIONS(1161),
    [anon_sym_continue] = ACTIONS(1161),
    [sym_yul_decimal_number] = ACTIONS(1161),
    [sym_yul_hex_number] = ACTIONS(1163),
    [anon_sym_true] = ACTIONS(1161),
    [anon_sym_false] = ACTIONS(1161),
    [anon_sym_hex] = ACTIONS(1161),
    [anon_sym_DQUOTE] = ACTIONS(1163),
    [anon_sym_SQUOTE] = ACTIONS(1163),
    [anon_sym_let] = ACTIONS(1161),
    [anon_sym_COLON_EQ] = ACTIONS(1165),
    [anon_sym_if] = ACTIONS(1161),
    [anon_sym_switch] = ACTIONS(1161),
    [anon_sym_function] = ACTIONS(1161),
    [anon_sym_stop] = ACTIONS(1161),
    [anon_sym_add] = ACTIONS(1161),
    [anon_sym_sub] = ACTIONS(1161),
    [anon_sym_mul] = ACTIONS(1161),
    [anon_sym_div] = ACTIONS(1161),
    [anon_sym_sdiv] = ACTIONS(1161),
    [anon_sym_mod] = ACTIONS(1161),
    [anon_sym_smod] = ACTIONS(1161),
    [anon_sym_exp] = ACTIONS(1161),
    [anon_sym_not] = ACTIONS(1161),
    [anon_sym_lt] = ACTIONS(1161),
    [anon_sym_gt] = ACTIONS(1161),
    [anon_sym_slt] = ACTIONS(1161),
    [anon_sym_sgt] = ACTIONS(1161),
    [anon_sym_eq] = ACTIONS(1161),
    [anon_sym_iszero] = ACTIONS(1161),
    [anon_sym_and] = ACTIONS(1161),
    [anon_sym_or] = ACTIONS(1161),
    [anon_sym_xor] = ACTIONS(1161),
    [anon_sym_byte] = ACTIONS(1161),
    [anon_sym_shl] = ACTIONS(1161),
    [anon_sym_shr] = ACTIONS(1161),
    [anon_sym_sar] = ACTIONS(1161),
    [anon_sym_addmod] = ACTIONS(1161),
    [anon_sym_mulmod] = ACTIONS(1161),
    [anon_sym_signextend] = ACTIONS(1161),
    [anon_sym_keccak256] = ACTIONS(1161),
    [anon_sym_pop] = ACTIONS(1161),
    [anon_sym_mload] = ACTIONS(1161),
    [anon_sym_mcopy] = ACTIONS(1161),
    [anon_sym_tload] = ACTIONS(1161),
    [anon_sym_tstore] = ACTIONS(1161),
    [anon_sym_mstore] = ACTIONS(1161),
    [anon_sym_mstore8] = ACTIONS(1161),
    [anon_sym_sload] = ACTIONS(1161),
    [anon_sym_sstore] = ACTIONS(1161),
    [anon_sym_msize] = ACTIONS(1161),
    [anon_sym_gas] = ACTIONS(1161),
    [anon_sym_address] = ACTIONS(1161),
    [anon_sym_balance] = ACTIONS(1161),
    [anon_sym_selfbalance] = ACTIONS(1161),
    [anon_sym_caller] = ACTIONS(1161),
    [anon_sym_callvalue] = ACTIONS(1161),
    [anon_sym_calldataload] = ACTIONS(1161),
    [anon_sym_calldatasize] = ACTIONS(1161),
    [anon_sym_calldatacopy] = ACTIONS(1161),
    [anon_sym_extcodesize] = ACTIONS(1161),
    [anon_sym_extcodecopy] = ACTIONS(1161),
    [anon_sym_returndatasize] = ACTIONS(1161),
    [anon_sym_returndatacopy] = ACTIONS(1161),
    [anon_sym_extcodehash] = ACTIONS(1161),
    [anon_sym_create] = ACTIONS(1161),
    [anon_sym_create2] = ACTIONS(1161),
    [anon_sym_call] = ACTIONS(1161),
    [anon_sym_callcode] = ACTIONS(1161),
    [anon_sym_delegatecall] = ACTIONS(1161),
    [anon_sym_staticcall] = ACTIONS(1161),
    [anon_sym_return] = ACTIONS(1161),
    [anon_sym_revert] = ACTIONS(1161),
    [anon_sym_selfdestruct] = ACTIONS(1161),
    [anon_sym_invalid] = ACTIONS(1161),
    [anon_sym_log0] = ACTIONS(1161),
    [anon_sym_log1] = ACTIONS(1161),
    [anon_sym_log2] = ACTIONS(1161),
    [anon_sym_log3] = ACTIONS(1161),
    [anon_sym_log4] = ACTIONS(1161),
    [anon_sym_chainid] = ACTIONS(1161),
    [anon_sym_origin] = ACTIONS(1161),
    [anon_sym_gasprice] = ACTIONS(1161),
    [anon_sym_blockhash] = ACTIONS(1161),
    [anon_sym_blobhash] = ACTIONS(1161),
    [anon_sym_basefee] = ACTIONS(1161),
    [anon_sym_blobfee] = ACTIONS(1161),
    [anon_sym_coinbase] = ACTIONS(1161),
    [anon_sym_timestamp] = ACTIONS(1161),
    [anon_sym_number] = ACTIONS(1161),
    [anon_sym_difficulty] = ACTIONS(1161),
    [anon_sym_gaslimit] = ACTIONS(1161),
    [anon_sym_prevrandao] = ACTIONS(1161),
    [anon_sym_blobbasefee] = ACTIONS(1161),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(313)] = {
    [sym_yul_identifier] = STATE(275),
    [sym__yul_expression] = STATE(781),
    [sym_yul_path] = STATE(781),
    [sym__yul_literal] = STATE(781),
    [sym_yul_string_literal] = STATE(781),
    [sym_yul_boolean] = STATE(781),
    [sym_yul_hex_string_literal] = STATE(781),
    [sym_yul_function_call] = STATE(781),
    [sym_yul_evm_builtin] = STATE(284),
    [sym_string] = STATE(290),
    [sym_identifier] = ACTIONS(1167),
    [anon_sym_RPAREN] = ACTIONS(1181),
    [sym_yul_decimal_number] = ACTIONS(1183),
    [sym_yul_hex_number] = ACTIONS(1185),
    [anon_sym_true] = ACTIONS(908),
    [anon_sym_false] = ACTIONS(908),
    [anon_sym_hex] = ACTIONS(910),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_stop] = ACTIONS(924),
    [anon_sym_add] = ACTIONS(924),
    [anon_sym_sub] = ACTIONS(924),
    [anon_sym_mul] = ACTIONS(924),
    [anon_sym_div] = ACTIONS(924),
    [anon_sym_sdiv] = ACTIONS(924),
    [anon_sym_mod] = ACTIONS(924),
    [anon_sym_smod] = ACTIONS(924),
    [anon_sym_exp] = ACTIONS(924),
    [anon_sym_not] = ACTIONS(924),
    [anon_sym_lt] = ACTIONS(924),
    [anon_sym_gt] = ACTIONS(924),
    [anon_sym_slt] = ACTIONS(924),
    [anon_sym_sgt] = ACTIONS(924),
    [anon_sym_eq] = ACTIONS(924),
    [anon_sym_iszero] = ACTIONS(924),
    [anon_sym_and] = ACTIONS(924),
    [anon_sym_or] = ACTIONS(924),
    [anon_sym_xor] = ACTIONS(924),
    [anon_sym_byte] = ACTIONS(924),
    [anon_sym_shl] = ACTIONS(924),
    [anon_sym_shr] = ACTIONS(924),
    [anon_sym_sar] = ACTIONS(924),
    [anon_sym_addmod] = ACTIONS(924),
    [anon_sym_mulmod] = ACTIONS(924),
    [anon_sym_signextend] = ACTIONS(924),
    [anon_sym_keccak256] = ACTIONS(924),
    [anon_sym_pop] = ACTIONS(924),
    [anon_sym_mload] = ACTIONS(924),
    [anon_sym_mcopy] = ACTIONS(924),
    [anon_sym_tload] = ACTIONS(924),
    [anon_sym_tstore] = ACTIONS(924),
    [anon_sym_mstore] = ACTIONS(924),
    [anon_sym_mstore8] = ACTIONS(924),
    [anon_sym_sload] = ACTIONS(924),
    [anon_sym_sstore] = ACTIONS(924),
    [anon_sym_msize] = ACTIONS(924),
    [anon_sym_gas] = ACTIONS(924),
    [anon_sym_address] = ACTIONS(924),
    [anon_sym_balance] = ACTIONS(924),
    [anon_sym_selfbalance] = ACTIONS(924),
    [anon_sym_caller] = ACTIONS(924),
    [anon_sym_callvalue] = ACTIONS(924),
    [anon_sym_calldataload] = ACTIONS(924),
    [anon_sym_calldatasize] = ACTIONS(924),
    [anon_sym_calldatacopy] = ACTIONS(924),
    [anon_sym_extcodesize] = ACTIONS(924),
    [anon_sym_extcodecopy] = ACTIONS(924),
    [anon_sym_returndatasize] = ACTIONS(924),
    [anon_sym_returndatacopy] = ACTIONS(924),
    [anon_sym_extcodehash] = ACTIONS(924),
    [anon_sym_create] = ACTIONS(924),
    [anon_sym_create2] = ACTIONS(924),
    [anon_sym_call] = ACTIONS(924),
    [anon_sym_callcode] = ACTIONS(924),
    [anon_sym_delegatecall] = ACTIONS(924),
    [anon_sym_staticcall] = ACTIONS(924),
    [anon_sym_return] = ACTIONS(924),
    [anon_sym_revert] = ACTIONS(924),
    [anon_sym_selfdestruct] = ACTIONS(924),
    [anon_sym_invalid] = ACTIONS(924),
    [anon_sym_log0] = ACTIONS(924),
    [anon_sym_log1] = ACTIONS(924),
    [anon_sym_log2] = ACTIONS(924),
    [anon_sym_log3] = ACTIONS(924),
    [anon_sym_log4] = ACTIONS(924),
    [anon_sym_chainid] = ACTIONS(924),
    [anon_sym_origin] = ACTIONS(924),
    [anon_sym_gasprice] = ACTIONS(924),
    [anon_sym_blockhash] = ACTIONS(924),
    [anon_sym_blobhash] = ACTIONS(924),
    [anon_sym_basefee] = ACTIONS(924),
    [anon_sym_blobfee] = ACTIONS(924),
    [anon_sym_coinbase] = ACTIONS(924),
    [anon_sym_timestamp] = ACTIONS(924),
    [anon_sym_number] = ACTIONS(924),
    [anon_sym_difficulty] = ACTIONS(924),
    [anon_sym_gaslimit] = ACTIONS(924),
    [anon_sym_prevrandao] = ACTIONS(924),
    [anon_sym_blobbasefee] = ACTIONS(924),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(314)] = {
    [sym_yul_identifier] = STATE(275),
    [sym__yul_expression] = STATE(781),
    [sym_yul_path] = STATE(781),
    [sym__yul_literal] = STATE(781),
    [sym_yul_string_literal] = STATE(781),
    [sym_yul_boolean] = STATE(781),
    [sym_yul_hex_string_literal] = STATE(781),
    [sym_yul_function_call] = STATE(781),
    [sym_yul_evm_builtin] = STATE(284),
    [sym_string] = STATE(290),
    [sym_identifier] = ACTIONS(1167),
    [anon_sym_RPAREN] = ACTIONS(1187),
    [sym_yul_decimal_number] = ACTIONS(1183),
    [sym_yul_hex_number] = ACTIONS(1185),
    [anon_sym_true] = ACTIONS(908),
    [anon_sym_false] = ACTIONS(908),
    [anon_sym_hex] = ACTIONS(910),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_stop] = ACTIONS(924),
    [anon_sym_add] = ACTIONS(924),
    [anon_sym_sub] = ACTIONS(924),
    [anon_sym_mul] = ACTIONS(924),
    [anon_sym_div] = ACTIONS(924),
    [anon_sym_sdiv] = ACTIONS(924),
    [anon_sym_mod] = ACTIONS(924),
    [anon_sym_smod] = ACTIONS(924),
    [anon_sym_exp] = ACTIONS(924),
    [anon_sym_not] = ACTIONS(924),
    [anon_sym_lt] = ACTIONS(924),
    [anon_sym_gt] = ACTIONS(924),
    [anon_sym_slt] = ACTIONS(924),
    [anon_sym_sgt] = ACTIONS(924),
    [anon_sym_eq] = ACTIONS(924),
    [anon_sym_iszero] = ACTIONS(924),
    [anon_sym_and] = ACTIONS(924),
    [anon_sym_or] = ACTIONS(924),
    [anon_sym_xor] = ACTIONS(924),
    [anon_sym_byte] = ACTIONS(924),
    [anon_sym_shl] = ACTIONS(924),
    [anon_sym_shr] = ACTIONS(924),
    [anon_sym_sar] = ACTIONS(924),
    [anon_sym_addmod] = ACTIONS(924),
    [anon_sym_mulmod] = ACTIONS(924),
    [anon_sym_signextend] = ACTIONS(924),
    [anon_sym_keccak256] = ACTIONS(924),
    [anon_sym_pop] = ACTIONS(924),
    [anon_sym_mload] = ACTIONS(924),
    [anon_sym_mcopy] = ACTIONS(924),
    [anon_sym_tload] = ACTIONS(924),
    [anon_sym_tstore] = ACTIONS(924),
    [anon_sym_mstore] = ACTIONS(924),
    [anon_sym_mstore8] = ACTIONS(924),
    [anon_sym_sload] = ACTIONS(924),
    [anon_sym_sstore] = ACTIONS(924),
    [anon_sym_msize] = ACTIONS(924),
    [anon_sym_gas] = ACTIONS(924),
    [anon_sym_address] = ACTIONS(924),
    [anon_sym_balance] = ACTIONS(924),
    [anon_sym_selfbalance] = ACTIONS(924),
    [anon_sym_caller] = ACTIONS(924),
    [anon_sym_callvalue] = ACTIONS(924),
    [anon_sym_calldataload] = ACTIONS(924),
    [anon_sym_calldatasize] = ACTIONS(924),
    [anon_sym_calldatacopy] = ACTIONS(924),
    [anon_sym_extcodesize] = ACTIONS(924),
    [anon_sym_extcodecopy] = ACTIONS(924),
    [anon_sym_returndatasize] = ACTIONS(924),
    [anon_sym_returndatacopy] = ACTIONS(924),
    [anon_sym_extcodehash] = ACTIONS(924),
    [anon_sym_create] = ACTIONS(924),
    [anon_sym_create2] = ACTIONS(924),
    [anon_sym_call] = ACTIONS(924),
    [anon_sym_callcode] = ACTIONS(924),
    [anon_sym_delegatecall] = ACTIONS(924),
    [anon_sym_staticcall] = ACTIONS(924),
    [anon_sym_return] = ACTIONS(924),
    [anon_sym_revert] = ACTIONS(924),
    [anon_sym_selfdestruct] = ACTIONS(924),
    [anon_sym_invalid] = ACTIONS(924),
    [anon_sym_log0] = ACTIONS(924),
    [anon_sym_log1] = ACTIONS(924),
    [anon_sym_log2] = ACTIONS(924),
    [anon_sym_log3] = ACTIONS(924),
    [anon_sym_log4] = ACTIONS(924),
    [anon_sym_chainid] = ACTIONS(924),
    [anon_sym_origin] = ACTIONS(924),
    [anon_sym_gasprice] = ACTIONS(924),
    [anon_sym_blockhash] = ACTIONS(924),
    [anon_sym_blobhash] = ACTIONS(924),
    [anon_sym_basefee] = ACTIONS(924),
    [anon_sym_blobfee] = ACTIONS(924),
    [anon_sym_coinbase] = ACTIONS(924),
    [anon_sym_timestamp] = ACTIONS(924),
    [anon_sym_number] = ACTIONS(924),
    [anon_sym_difficulty] = ACTIONS(924),
    [anon_sym_gaslimit] = ACTIONS(924),
    [anon_sym_prevrandao] = ACTIONS(924),
    [anon_sym_blobbasefee] = ACTIONS(924),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(315)] = {
    [sym_identifier] = ACTIONS(1189),
    [anon_sym_LBRACE] = ACTIONS(1191),
    [anon_sym_RBRACE] = ACTIONS(1191),
    [anon_sym_for] = ACTIONS(1189),
    [sym_yul_leave] = ACTIONS(1189),
    [anon_sym_break] = ACTIONS(1189),
    [anon_sym_continue] = ACTIONS(1189),
    [sym_yul_decimal_number] = ACTIONS(1189),
    [sym_yul_hex_number] = ACTIONS(1191),
    [anon_sym_true] = ACTIONS(1189),
    [anon_sym_false] = ACTIONS(1189),
    [anon_sym_hex] = ACTIONS(1189),
    [anon_sym_DQUOTE] = ACTIONS(1191),
    [anon_sym_SQUOTE] = ACTIONS(1191),
    [anon_sym_let] = ACTIONS(1189),
    [anon_sym_COLON_EQ] = ACTIONS(1193),
    [anon_sym_if] = ACTIONS(1189),
    [anon_sym_switch] = ACTIONS(1189),
    [anon_sym_function] = ACTIONS(1189),
    [anon_sym_stop] = ACTIONS(1189),
    [anon_sym_add] = ACTIONS(1189),
    [anon_sym_sub] = ACTIONS(1189),
    [anon_sym_mul] = ACTIONS(1189),
    [anon_sym_div] = ACTIONS(1189),
    [anon_sym_sdiv] = ACTIONS(1189),
    [anon_sym_mod] = ACTIONS(1189),
    [anon_sym_smod] = ACTIONS(1189),
    [anon_sym_exp] = ACTIONS(1189),
    [anon_sym_not] = ACTIONS(1189),
    [anon_sym_lt] = ACTIONS(1189),
    [anon_sym_gt] = ACTIONS(1189),
    [anon_sym_slt] = ACTIONS(1189),
    [anon_sym_sgt] = ACTIONS(1189),
    [anon_sym_eq] = ACTIONS(1189),
    [anon_sym_iszero] = ACTIONS(1189),
    [anon_sym_and] = ACTIONS(1189),
    [anon_sym_or] = ACTIONS(1189),
    [anon_sym_xor] = ACTIONS(1189),
    [anon_sym_byte] = ACTIONS(1189),
    [anon_sym_shl] = ACTIONS(1189),
    [anon_sym_shr] = ACTIONS(1189),
    [anon_sym_sar] = ACTIONS(1189),
    [anon_sym_addmod] = ACTIONS(1189),
    [anon_sym_mulmod] = ACTIONS(1189),
    [anon_sym_signextend] = ACTIONS(1189),
    [anon_sym_keccak256] = ACTIONS(1189),
    [anon_sym_pop] = ACTIONS(1189),
    [anon_sym_mload] = ACTIONS(1189),
    [anon_sym_mcopy] = ACTIONS(1189),
    [anon_sym_tload] = ACTIONS(1189),
    [anon_sym_tstore] = ACTIONS(1189),
    [anon_sym_mstore] = ACTIONS(1189),
    [anon_sym_mstore8] = ACTIONS(1189),
    [anon_sym_sload] = ACTIONS(1189),
    [anon_sym_sstore] = ACTIONS(1189),
    [anon_sym_msize] = ACTIONS(1189),
    [anon_sym_gas] = ACTIONS(1189),
    [anon_sym_address] = ACTIONS(1189),
    [anon_sym_balance] = ACTIONS(1189),
    [anon_sym_selfbalance] = ACTIONS(1189),
    [anon_sym_caller] = ACTIONS(1189),
    [anon_sym_callvalue] = ACTIONS(1189),
    [anon_sym_calldataload] = ACTIONS(1189),
    [anon_sym_calldatasize] = ACTIONS(1189),
    [anon_sym_calldatacopy] = ACTIONS(1189),
    [anon_sym_extcodesize] = ACTIONS(1189),
    [anon_sym_extcodecopy] = ACTIONS(1189),
    [anon_sym_returndatasize] = ACTIONS(1189),
    [anon_sym_returndatacopy] = ACTIONS(1189),
    [anon_sym_extcodehash] = ACTIONS(1189),
    [anon_sym_create] = ACTIONS(1189),
    [anon_sym_create2] = ACTIONS(1189),
    [anon_sym_call] = ACTIONS(1189),
    [anon_sym_callcode] = ACTIONS(1189),
    [anon_sym_delegatecall] = ACTIONS(1189),
    [anon_sym_staticcall] = ACTIONS(1189),
    [anon_sym_return] = ACTIONS(1189),
    [anon_sym_revert] = ACTIONS(1189),
    [anon_sym_selfdestruct] = ACTIONS(1189),
    [anon_sym_invalid] = ACTIONS(1189),
    [anon_sym_log0] = ACTIONS(1189),
    [anon_sym_log1] = ACTIONS(1189),
    [anon_sym_log2] = ACTIONS(1189),
    [anon_sym_log3] = ACTIONS(1189),
    [anon_sym_log4] = ACTIONS(1189),
    [anon_sym_chainid] = ACTIONS(1189),
    [anon_sym_origin] = ACTIONS(1189),
    [anon_sym_gasprice] = ACTIONS(1189),
    [anon_sym_blockhash] = ACTIONS(1189),
    [anon_sym_blobhash] = ACTIONS(1189),
    [anon_sym_basefee] = ACTIONS(1189),
    [anon_sym_blobfee] = ACTIONS(1189),
    [anon_sym_coinbase] = ACTIONS(1189),
    [anon_sym_timestamp] = ACTIONS(1189),
    [anon_sym_number] = ACTIONS(1189),
    [anon_sym_difficulty] = ACTIONS(1189),
    [anon_sym_gaslimit] = ACTIONS(1189),
    [anon_sym_prevrandao] = ACTIONS(1189),
    [anon_sym_blobbasefee] = ACTIONS(1189),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(316)] = {
    [sym_yul_identifier] = STATE(275),
    [sym__yul_expression] = STATE(692),
    [sym_yul_path] = STATE(692),
    [sym__yul_literal] = STATE(692),
    [sym_yul_string_literal] = STATE(692),
    [sym_yul_boolean] = STATE(692),
    [sym_yul_hex_string_literal] = STATE(692),
    [sym_yul_function_call] = STATE(692),
    [sym_yul_evm_builtin] = STATE(284),
    [sym_string] = STATE(290),
    [sym_identifier] = ACTIONS(1167),
    [sym_yul_decimal_number] = ACTIONS(1195),
    [sym_yul_hex_number] = ACTIONS(1197),
    [anon_sym_true] = ACTIONS(908),
    [anon_sym_false] = ACTIONS(908),
    [anon_sym_hex] = ACTIONS(910),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_stop] = ACTIONS(924),
    [anon_sym_add] = ACTIONS(924),
    [anon_sym_sub] = ACTIONS(924),
    [anon_sym_mul] = ACTIONS(924),
    [anon_sym_div] = ACTIONS(924),
    [anon_sym_sdiv] = ACTIONS(924),
    [anon_sym_mod] = ACTIONS(924),
    [anon_sym_smod] = ACTIONS(924),
    [anon_sym_exp] = ACTIONS(924),
    [anon_sym_not] = ACTIONS(924),
    [anon_sym_lt] = ACTIONS(924),
    [anon_sym_gt] = ACTIONS(924),
    [anon_sym_slt] = ACTIONS(924),
    [anon_sym_sgt] = ACTIONS(924),
    [anon_sym_eq] = ACTIONS(924),
    [anon_sym_iszero] = ACTIONS(924),
    [anon_sym_and] = ACTIONS(924),
    [anon_sym_or] = ACTIONS(924),
    [anon_sym_xor] = ACTIONS(924),
    [anon_sym_byte] = ACTIONS(924),
    [anon_sym_shl] = ACTIONS(924),
    [anon_sym_shr] = ACTIONS(924),
    [anon_sym_sar] = ACTIONS(924),
    [anon_sym_addmod] = ACTIONS(924),
    [anon_sym_mulmod] = ACTIONS(924),
    [anon_sym_signextend] = ACTIONS(924),
    [anon_sym_keccak256] = ACTIONS(924),
    [anon_sym_pop] = ACTIONS(924),
    [anon_sym_mload] = ACTIONS(924),
    [anon_sym_mcopy] = ACTIONS(924),
    [anon_sym_tload] = ACTIONS(924),
    [anon_sym_tstore] = ACTIONS(924),
    [anon_sym_mstore] = ACTIONS(924),
    [anon_sym_mstore8] = ACTIONS(924),
    [anon_sym_sload] = ACTIONS(924),
    [anon_sym_sstore] = ACTIONS(924),
    [anon_sym_msize] = ACTIONS(924),
    [anon_sym_gas] = ACTIONS(924),
    [anon_sym_address] = ACTIONS(924),
    [anon_sym_balance] = ACTIONS(924),
    [anon_sym_selfbalance] = ACTIONS(924),
    [anon_sym_caller] = ACTIONS(924),
    [anon_sym_callvalue] = ACTIONS(924),
    [anon_sym_calldataload] = ACTIONS(924),
    [anon_sym_calldatasize] = ACTIONS(924),
    [anon_sym_calldatacopy] = ACTIONS(924),
    [anon_sym_extcodesize] = ACTIONS(924),
    [anon_sym_extcodecopy] = ACTIONS(924),
    [anon_sym_returndatasize] = ACTIONS(924),
    [anon_sym_returndatacopy] = ACTIONS(924),
    [anon_sym_extcodehash] = ACTIONS(924),
    [anon_sym_create] = ACTIONS(924),
    [anon_sym_create2] = ACTIONS(924),
    [anon_sym_call] = ACTIONS(924),
    [anon_sym_callcode] = ACTIONS(924),
    [anon_sym_delegatecall] = ACTIONS(924),
    [anon_sym_staticcall] = ACTIONS(924),
    [anon_sym_return] = ACTIONS(924),
    [anon_sym_revert] = ACTIONS(924),
    [anon_sym_selfdestruct] = ACTIONS(924),
    [anon_sym_invalid] = ACTIONS(924),
    [anon_sym_log0] = ACTIONS(924),
    [anon_sym_log1] = ACTIONS(924),
    [anon_sym_log2] = ACTIONS(924),
    [anon_sym_log3] = ACTIONS(924),
    [anon_sym_log4] = ACTIONS(924),
    [anon_sym_chainid] = ACTIONS(924),
    [anon_sym_origin] = ACTIONS(924),
    [anon_sym_gasprice] = ACTIONS(924),
    [anon_sym_blockhash] = ACTIONS(924),
    [anon_sym_blobhash] = ACTIONS(924),
    [anon_sym_basefee] = ACTIONS(924),
    [anon_sym_blobfee] = ACTIONS(924),
    [anon_sym_coinbase] = ACTIONS(924),
    [anon_sym_timestamp] = ACTIONS(924),
    [anon_sym_number] = ACTIONS(924),
    [anon_sym_difficulty] = ACTIONS(924),
    [anon_sym_gaslimit] = ACTIONS(924),
    [anon_sym_prevrandao] = ACTIONS(924),
    [anon_sym_blobbasefee] = ACTIONS(924),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(317)] = {
    [sym_yul_identifier] = STATE(275),
    [sym__yul_expression] = STATE(799),
    [sym_yul_path] = STATE(799),
    [sym__yul_literal] = STATE(799),
    [sym_yul_string_literal] = STATE(799),
    [sym_yul_boolean] = STATE(799),
    [sym_yul_hex_string_literal] = STATE(799),
    [sym_yul_function_call] = STATE(799),
    [sym_yul_evm_builtin] = STATE(284),
    [sym_string] = STATE(290),
    [sym_identifier] = ACTIONS(1167),
    [sym_yul_decimal_number] = ACTIONS(1199),
    [sym_yul_hex_number] = ACTIONS(1201),
    [anon_sym_true] = ACTIONS(908),
    [anon_sym_false] = ACTIONS(908),
    [anon_sym_hex] = ACTIONS(910),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_stop] = ACTIONS(924),
    [anon_sym_add] = ACTIONS(924),
    [anon_sym_sub] = ACTIONS(924),
    [anon_sym_mul] = ACTIONS(924),
    [anon_sym_div] = ACTIONS(924),
    [anon_sym_sdiv] = ACTIONS(924),
    [anon_sym_mod] = ACTIONS(924),
    [anon_sym_smod] = ACTIONS(924),
    [anon_sym_exp] = ACTIONS(924),
    [anon_sym_not] = ACTIONS(924),
    [anon_sym_lt] = ACTIONS(924),
    [anon_sym_gt] = ACTIONS(924),
    [anon_sym_slt] = ACTIONS(924),
    [anon_sym_sgt] = ACTIONS(924),
    [anon_sym_eq] = ACTIONS(924),
    [anon_sym_iszero] = ACTIONS(924),
    [anon_sym_and] = ACTIONS(924),
    [anon_sym_or] = ACTIONS(924),
    [anon_sym_xor] = ACTIONS(924),
    [anon_sym_byte] = ACTIONS(924),
    [anon_sym_shl] = ACTIONS(924),
    [anon_sym_shr] = ACTIONS(924),
    [anon_sym_sar] = ACTIONS(924),
    [anon_sym_addmod] = ACTIONS(924),
    [anon_sym_mulmod] = ACTIONS(924),
    [anon_sym_signextend] = ACTIONS(924),
    [anon_sym_keccak256] = ACTIONS(924),
    [anon_sym_pop] = ACTIONS(924),
    [anon_sym_mload] = ACTIONS(924),
    [anon_sym_mcopy] = ACTIONS(924),
    [anon_sym_tload] = ACTIONS(924),
    [anon_sym_tstore] = ACTIONS(924),
    [anon_sym_mstore] = ACTIONS(924),
    [anon_sym_mstore8] = ACTIONS(924),
    [anon_sym_sload] = ACTIONS(924),
    [anon_sym_sstore] = ACTIONS(924),
    [anon_sym_msize] = ACTIONS(924),
    [anon_sym_gas] = ACTIONS(924),
    [anon_sym_address] = ACTIONS(924),
    [anon_sym_balance] = ACTIONS(924),
    [anon_sym_selfbalance] = ACTIONS(924),
    [anon_sym_caller] = ACTIONS(924),
    [anon_sym_callvalue] = ACTIONS(924),
    [anon_sym_calldataload] = ACTIONS(924),
    [anon_sym_calldatasize] = ACTIONS(924),
    [anon_sym_calldatacopy] = ACTIONS(924),
    [anon_sym_extcodesize] = ACTIONS(924),
    [anon_sym_extcodecopy] = ACTIONS(924),
    [anon_sym_returndatasize] = ACTIONS(924),
    [anon_sym_returndatacopy] = ACTIONS(924),
    [anon_sym_extcodehash] = ACTIONS(924),
    [anon_sym_create] = ACTIONS(924),
    [anon_sym_create2] = ACTIONS(924),
    [anon_sym_call] = ACTIONS(924),
    [anon_sym_callcode] = ACTIONS(924),
    [anon_sym_delegatecall] = ACTIONS(924),
    [anon_sym_staticcall] = ACTIONS(924),
    [anon_sym_return] = ACTIONS(924),
    [anon_sym_revert] = ACTIONS(924),
    [anon_sym_selfdestruct] = ACTIONS(924),
    [anon_sym_invalid] = ACTIONS(924),
    [anon_sym_log0] = ACTIONS(924),
    [anon_sym_log1] = ACTIONS(924),
    [anon_sym_log2] = ACTIONS(924),
    [anon_sym_log3] = ACTIONS(924),
    [anon_sym_log4] = ACTIONS(924),
    [anon_sym_chainid] = ACTIONS(924),
    [anon_sym_origin] = ACTIONS(924),
    [anon_sym_gasprice] = ACTIONS(924),
    [anon_sym_blockhash] = ACTIONS(924),
    [anon_sym_blobhash] = ACTIONS(924),
    [anon_sym_basefee] = ACTIONS(924),
    [anon_sym_blobfee] = ACTIONS(924),
    [anon_sym_coinbase] = ACTIONS(924),
    [anon_sym_timestamp] = ACTIONS(924),
    [anon_sym_number] = ACTIONS(924),
    [anon_sym_difficulty] = ACTIONS(924),
    [anon_sym_gaslimit] = ACTIONS(924),
    [anon_sym_prevrandao] = ACTIONS(924),
    [anon_sym_blobbasefee] = ACTIONS(924),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(318)] = {
    [sym_yul_identifier] = STATE(275),
    [sym__yul_expression] = STATE(798),
    [sym_yul_path] = STATE(798),
    [sym__yul_literal] = STATE(798),
    [sym_yul_string_literal] = STATE(798),
    [sym_yul_boolean] = STATE(798),
    [sym_yul_hex_string_literal] = STATE(798),
    [sym_yul_function_call] = STATE(798),
    [sym_yul_evm_builtin] = STATE(284),
    [sym_string] = STATE(290),
    [sym_identifier] = ACTIONS(1167),
    [sym_yul_decimal_number] = ACTIONS(1203),
    [sym_yul_hex_number] = ACTIONS(1205),
    [anon_sym_true] = ACTIONS(908),
    [anon_sym_false] = ACTIONS(908),
    [anon_sym_hex] = ACTIONS(910),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_stop] = ACTIONS(924),
    [anon_sym_add] = ACTIONS(924),
    [anon_sym_sub] = ACTIONS(924),
    [anon_sym_mul] = ACTIONS(924),
    [anon_sym_div] = ACTIONS(924),
    [anon_sym_sdiv] = ACTIONS(924),
    [anon_sym_mod] = ACTIONS(924),
    [anon_sym_smod] = ACTIONS(924),
    [anon_sym_exp] = ACTIONS(924),
    [anon_sym_not] = ACTIONS(924),
    [anon_sym_lt] = ACTIONS(924),
    [anon_sym_gt] = ACTIONS(924),
    [anon_sym_slt] = ACTIONS(924),
    [anon_sym_sgt] = ACTIONS(924),
    [anon_sym_eq] = ACTIONS(924),
    [anon_sym_iszero] = ACTIONS(924),
    [anon_sym_and] = ACTIONS(924),
    [anon_sym_or] = ACTIONS(924),
    [anon_sym_xor] = ACTIONS(924),
    [anon_sym_byte] = ACTIONS(924),
    [anon_sym_shl] = ACTIONS(924),
    [anon_sym_shr] = ACTIONS(924),
    [anon_sym_sar] = ACTIONS(924),
    [anon_sym_addmod] = ACTIONS(924),
    [anon_sym_mulmod] = ACTIONS(924),
    [anon_sym_signextend] = ACTIONS(924),
    [anon_sym_keccak256] = ACTIONS(924),
    [anon_sym_pop] = ACTIONS(924),
    [anon_sym_mload] = ACTIONS(924),
    [anon_sym_mcopy] = ACTIONS(924),
    [anon_sym_tload] = ACTIONS(924),
    [anon_sym_tstore] = ACTIONS(924),
    [anon_sym_mstore] = ACTIONS(924),
    [anon_sym_mstore8] = ACTIONS(924),
    [anon_sym_sload] = ACTIONS(924),
    [anon_sym_sstore] = ACTIONS(924),
    [anon_sym_msize] = ACTIONS(924),
    [anon_sym_gas] = ACTIONS(924),
    [anon_sym_address] = ACTIONS(924),
    [anon_sym_balance] = ACTIONS(924),
    [anon_sym_selfbalance] = ACTIONS(924),
    [anon_sym_caller] = ACTIONS(924),
    [anon_sym_callvalue] = ACTIONS(924),
    [anon_sym_calldataload] = ACTIONS(924),
    [anon_sym_calldatasize] = ACTIONS(924),
    [anon_sym_calldatacopy] = ACTIONS(924),
    [anon_sym_extcodesize] = ACTIONS(924),
    [anon_sym_extcodecopy] = ACTIONS(924),
    [anon_sym_returndatasize] = ACTIONS(924),
    [anon_sym_returndatacopy] = ACTIONS(924),
    [anon_sym_extcodehash] = ACTIONS(924),
    [anon_sym_create] = ACTIONS(924),
    [anon_sym_create2] = ACTIONS(924),
    [anon_sym_call] = ACTIONS(924),
    [anon_sym_callcode] = ACTIONS(924),
    [anon_sym_delegatecall] = ACTIONS(924),
    [anon_sym_staticcall] = ACTIONS(924),
    [anon_sym_return] = ACTIONS(924),
    [anon_sym_revert] = ACTIONS(924),
    [anon_sym_selfdestruct] = ACTIONS(924),
    [anon_sym_invalid] = ACTIONS(924),
    [anon_sym_log0] = ACTIONS(924),
    [anon_sym_log1] = ACTIONS(924),
    [anon_sym_log2] = ACTIONS(924),
    [anon_sym_log3] = ACTIONS(924),
    [anon_sym_log4] = ACTIONS(924),
    [anon_sym_chainid] = ACTIONS(924),
    [anon_sym_origin] = ACTIONS(924),
    [anon_sym_gasprice] = ACTIONS(924),
    [anon_sym_blockhash] = ACTIONS(924),
    [anon_sym_blobhash] = ACTIONS(924),
    [anon_sym_basefee] = ACTIONS(924),
    [anon_sym_blobfee] = ACTIONS(924),
    [anon_sym_coinbase] = ACTIONS(924),
    [anon_sym_timestamp] = ACTIONS(924),
    [anon_sym_number] = ACTIONS(924),
    [anon_sym_difficulty] = ACTIONS(924),
    [anon_sym_gaslimit] = ACTIONS(924),
    [anon_sym_prevrandao] = ACTIONS(924),
    [anon_sym_blobbasefee] = ACTIONS(924),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(319)] = {
    [sym_identifier] = ACTIONS(1207),
    [anon_sym_LBRACE] = ACTIONS(1209),
    [anon_sym_RBRACE] = ACTIONS(1209),
    [anon_sym_for] = ACTIONS(1207),
    [sym_yul_leave] = ACTIONS(1207),
    [anon_sym_break] = ACTIONS(1207),
    [anon_sym_continue] = ACTIONS(1207),
    [sym_yul_decimal_number] = ACTIONS(1207),
    [sym_yul_hex_number] = ACTIONS(1209),
    [anon_sym_true] = ACTIONS(1207),
    [anon_sym_false] = ACTIONS(1207),
    [anon_sym_hex] = ACTIONS(1207),
    [anon_sym_DQUOTE] = ACTIONS(1209),
    [anon_sym_SQUOTE] = ACTIONS(1209),
    [anon_sym_let] = ACTIONS(1207),
    [anon_sym_if] = ACTIONS(1207),
    [anon_sym_switch] = ACTIONS(1207),
    [anon_sym_function] = ACTIONS(1207),
    [anon_sym_stop] = ACTIONS(1207),
    [anon_sym_add] = ACTIONS(1207),
    [anon_sym_sub] = ACTIONS(1207),
    [anon_sym_mul] = ACTIONS(1207),
    [anon_sym_div] = ACTIONS(1207),
    [anon_sym_sdiv] = ACTIONS(1207),
    [anon_sym_mod] = ACTIONS(1207),
    [anon_sym_smod] = ACTIONS(1207),
    [anon_sym_exp] = ACTIONS(1207),
    [anon_sym_not] = ACTIONS(1207),
    [anon_sym_lt] = ACTIONS(1207),
    [anon_sym_gt] = ACTIONS(1207),
    [anon_sym_slt] = ACTIONS(1207),
    [anon_sym_sgt] = ACTIONS(1207),
    [anon_sym_eq] = ACTIONS(1207),
    [anon_sym_iszero] = ACTIONS(1207),
    [anon_sym_and] = ACTIONS(1207),
    [anon_sym_or] = ACTIONS(1207),
    [anon_sym_xor] = ACTIONS(1207),
    [anon_sym_byte] = ACTIONS(1207),
    [anon_sym_shl] = ACTIONS(1207),
    [anon_sym_shr] = ACTIONS(1207),
    [anon_sym_sar] = ACTIONS(1207),
    [anon_sym_addmod] = ACTIONS(1207),
    [anon_sym_mulmod] = ACTIONS(1207),
    [anon_sym_signextend] = ACTIONS(1207),
    [anon_sym_keccak256] = ACTIONS(1207),
    [anon_sym_pop] = ACTIONS(1207),
    [anon_sym_mload] = ACTIONS(1207),
    [anon_sym_mcopy] = ACTIONS(1207),
    [anon_sym_tload] = ACTIONS(1207),
    [anon_sym_tstore] = ACTIONS(1207),
    [anon_sym_mstore] = ACTIONS(1207),
    [anon_sym_mstore8] = ACTIONS(1207),
    [anon_sym_sload] = ACTIONS(1207),
    [anon_sym_sstore] = ACTIONS(1207),
    [anon_sym_msize] = ACTIONS(1207),
    [anon_sym_gas] = ACTIONS(1207),
    [anon_sym_address] = ACTIONS(1207),
    [anon_sym_balance] = ACTIONS(1207),
    [anon_sym_selfbalance] = ACTIONS(1207),
    [anon_sym_caller] = ACTIONS(1207),
    [anon_sym_callvalue] = ACTIONS(1207),
    [anon_sym_calldataload] = ACTIONS(1207),
    [anon_sym_calldatasize] = ACTIONS(1207),
    [anon_sym_calldatacopy] = ACTIONS(1207),
    [anon_sym_extcodesize] = ACTIONS(1207),
    [anon_sym_extcodecopy] = ACTIONS(1207),
    [anon_sym_returndatasize] = ACTIONS(1207),
    [anon_sym_returndatacopy] = ACTIONS(1207),
    [anon_sym_extcodehash] = ACTIONS(1207),
    [anon_sym_create] = ACTIONS(1207),
    [anon_sym_create2] = ACTIONS(1207),
    [anon_sym_call] = ACTIONS(1207),
    [anon_sym_callcode] = ACTIONS(1207),
    [anon_sym_delegatecall] = ACTIONS(1207),
    [anon_sym_staticcall] = ACTIONS(1207),
    [anon_sym_return] = ACTIONS(1207),
    [anon_sym_revert] = ACTIONS(1207),
    [anon_sym_selfdestruct] = ACTIONS(1207),
    [anon_sym_invalid] = ACTIONS(1207),
    [anon_sym_log0] = ACTIONS(1207),
    [anon_sym_log1] = ACTIONS(1207),
    [anon_sym_log2] = ACTIONS(1207),
    [anon_sym_log3] = ACTIONS(1207),
    [anon_sym_log4] = ACTIONS(1207),
    [anon_sym_chainid] = ACTIONS(1207),
    [anon_sym_origin] = ACTIONS(1207),
    [anon_sym_gasprice] = ACTIONS(1207),
    [anon_sym_blockhash] = ACTIONS(1207),
    [anon_sym_blobhash] = ACTIONS(1207),
    [anon_sym_basefee] = ACTIONS(1207),
    [anon_sym_blobfee] = ACTIONS(1207),
    [anon_sym_coinbase] = ACTIONS(1207),
    [anon_sym_timestamp] = ACTIONS(1207),
    [anon_sym_number] = ACTIONS(1207),
    [anon_sym_difficulty] = ACTIONS(1207),
    [anon_sym_gaslimit] = ACTIONS(1207),
    [anon_sym_prevrandao] = ACTIONS(1207),
    [anon_sym_blobbasefee] = ACTIONS(1207),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(320)] = {
    [sym_identifier] = ACTIONS(1211),
    [anon_sym_LBRACE] = ACTIONS(1213),
    [anon_sym_RBRACE] = ACTIONS(1213),
    [anon_sym_for] = ACTIONS(1211),
    [sym_yul_leave] = ACTIONS(1211),
    [anon_sym_break] = ACTIONS(1211),
    [anon_sym_continue] = ACTIONS(1211),
    [sym_yul_decimal_number] = ACTIONS(1211),
    [sym_yul_hex_number] = ACTIONS(1213),
    [anon_sym_true] = ACTIONS(1211),
    [anon_sym_false] = ACTIONS(1211),
    [anon_sym_hex] = ACTIONS(1211),
    [anon_sym_DQUOTE] = ACTIONS(1213),
    [anon_sym_SQUOTE] = ACTIONS(1213),
    [anon_sym_let] = ACTIONS(1211),
    [anon_sym_if] = ACTIONS(1211),
    [anon_sym_switch] = ACTIONS(1211),
    [anon_sym_function] = ACTIONS(1211),
    [anon_sym_stop] = ACTIONS(1211),
    [anon_sym_add] = ACTIONS(1211),
    [anon_sym_sub] = ACTIONS(1211),
    [anon_sym_mul] = ACTIONS(1211),
    [anon_sym_div] = ACTIONS(1211),
    [anon_sym_sdiv] = ACTIONS(1211),
    [anon_sym_mod] = ACTIONS(1211),
    [anon_sym_smod] = ACTIONS(1211),
    [anon_sym_exp] = ACTIONS(1211),
    [anon_sym_not] = ACTIONS(1211),
    [anon_sym_lt] = ACTIONS(1211),
    [anon_sym_gt] = ACTIONS(1211),
    [anon_sym_slt] = ACTIONS(1211),
    [anon_sym_sgt] = ACTIONS(1211),
    [anon_sym_eq] = ACTIONS(1211),
    [anon_sym_iszero] = ACTIONS(1211),
    [anon_sym_and] = ACTIONS(1211),
    [anon_sym_or] = ACTIONS(1211),
    [anon_sym_xor] = ACTIONS(1211),
    [anon_sym_byte] = ACTIONS(1211),
    [anon_sym_shl] = ACTIONS(1211),
    [anon_sym_shr] = ACTIONS(1211),
    [anon_sym_sar] = ACTIONS(1211),
    [anon_sym_addmod] = ACTIONS(1211),
    [anon_sym_mulmod] = ACTIONS(1211),
    [anon_sym_signextend] = ACTIONS(1211),
    [anon_sym_keccak256] = ACTIONS(1211),
    [anon_sym_pop] = ACTIONS(1211),
    [anon_sym_mload] = ACTIONS(1211),
    [anon_sym_mcopy] = ACTIONS(1211),
    [anon_sym_tload] = ACTIONS(1211),
    [anon_sym_tstore] = ACTIONS(1211),
    [anon_sym_mstore] = ACTIONS(1211),
    [anon_sym_mstore8] = ACTIONS(1211),
    [anon_sym_sload] = ACTIONS(1211),
    [anon_sym_sstore] = ACTIONS(1211),
    [anon_sym_msize] = ACTIONS(1211),
    [anon_sym_gas] = ACTIONS(1211),
    [anon_sym_address] = ACTIONS(1211),
    [anon_sym_balance] = ACTIONS(1211),
    [anon_sym_selfbalance] = ACTIONS(1211),
    [anon_sym_caller] = ACTIONS(1211),
    [anon_sym_callvalue] = ACTIONS(1211),
    [anon_sym_calldataload] = ACTIONS(1211),
    [anon_sym_calldatasize] = ACTIONS(1211),
    [anon_sym_calldatacopy] = ACTIONS(1211),
    [anon_sym_extcodesize] = ACTIONS(1211),
    [anon_sym_extcodecopy] = ACTIONS(1211),
    [anon_sym_returndatasize] = ACTIONS(1211),
    [anon_sym_returndatacopy] = ACTIONS(1211),
    [anon_sym_extcodehash] = ACTIONS(1211),
    [anon_sym_create] = ACTIONS(1211),
    [anon_sym_create2] = ACTIONS(1211),
    [anon_sym_call] = ACTIONS(1211),
    [anon_sym_callcode] = ACTIONS(1211),
    [anon_sym_delegatecall] = ACTIONS(1211),
    [anon_sym_staticcall] = ACTIONS(1211),
    [anon_sym_return] = ACTIONS(1211),
    [anon_sym_revert] = ACTIONS(1211),
    [anon_sym_selfdestruct] = ACTIONS(1211),
    [anon_sym_invalid] = ACTIONS(1211),
    [anon_sym_log0] = ACTIONS(1211),
    [anon_sym_log1] = ACTIONS(1211),
    [anon_sym_log2] = ACTIONS(1211),
    [anon_sym_log3] = ACTIONS(1211),
    [anon_sym_log4] = ACTIONS(1211),
    [anon_sym_chainid] = ACTIONS(1211),
    [anon_sym_origin] = ACTIONS(1211),
    [anon_sym_gasprice] = ACTIONS(1211),
    [anon_sym_blockhash] = ACTIONS(1211),
    [anon_sym_blobhash] = ACTIONS(1211),
    [anon_sym_basefee] = ACTIONS(1211),
    [anon_sym_blobfee] = ACTIONS(1211),
    [anon_sym_coinbase] = ACTIONS(1211),
    [anon_sym_timestamp] = ACTIONS(1211),
    [anon_sym_number] = ACTIONS(1211),
    [anon_sym_difficulty] = ACTIONS(1211),
    [anon_sym_gaslimit] = ACTIONS(1211),
    [anon_sym_prevrandao] = ACTIONS(1211),
    [anon_sym_blobbasefee] = ACTIONS(1211),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(321)] = {
    [sym_yul_identifier] = STATE(275),
    [sym__yul_expression] = STATE(325),
    [sym_yul_path] = STATE(325),
    [sym__yul_literal] = STATE(325),
    [sym_yul_string_literal] = STATE(325),
    [sym_yul_boolean] = STATE(325),
    [sym_yul_hex_string_literal] = STATE(325),
    [sym_yul_function_call] = STATE(326),
    [sym_yul_evm_builtin] = STATE(284),
    [sym_string] = STATE(290),
    [sym_identifier] = ACTIONS(1167),
    [sym_yul_decimal_number] = ACTIONS(1215),
    [sym_yul_hex_number] = ACTIONS(1217),
    [anon_sym_true] = ACTIONS(908),
    [anon_sym_false] = ACTIONS(908),
    [anon_sym_hex] = ACTIONS(910),
    [anon_sym_DQUOTE] = ACTIONS(912),
    [anon_sym_SQUOTE] = ACTIONS(914),
    [anon_sym_stop] = ACTIONS(924),
    [anon_sym_add] = ACTIONS(924),
    [anon_sym_sub] = ACTIONS(924),
    [anon_sym_mul] = ACTIONS(924),
    [anon_sym_div] = ACTIONS(924),
    [anon_sym_sdiv] = ACTIONS(924),
    [anon_sym_mod] = ACTIONS(924),
    [anon_sym_smod] = ACTIONS(924),
    [anon_sym_exp] = ACTIONS(924),
    [anon_sym_not] = ACTIONS(924),
    [anon_sym_lt] = ACTIONS(924),
    [anon_sym_gt] = ACTIONS(924),
    [anon_sym_slt] = ACTIONS(924),
    [anon_sym_sgt] = ACTIONS(924),
    [anon_sym_eq] = ACTIONS(924),
    [anon_sym_iszero] = ACTIONS(924),
    [anon_sym_and] = ACTIONS(924),
    [anon_sym_or] = ACTIONS(924),
    [anon_sym_xor] = ACTIONS(924),
    [anon_sym_byte] = ACTIONS(924),
    [anon_sym_shl] = ACTIONS(924),
    [anon_sym_shr] = ACTIONS(924),
    [anon_sym_sar] = ACTIONS(924),
    [anon_sym_addmod] = ACTIONS(924),
    [anon_sym_mulmod] = ACTIONS(924),
    [anon_sym_signextend] = ACTIONS(924),
    [anon_sym_keccak256] = ACTIONS(924),
    [anon_sym_pop] = ACTIONS(924),
    [anon_sym_mload] = ACTIONS(924),
    [anon_sym_mcopy] = ACTIONS(924),
    [anon_sym_tload] = ACTIONS(924),
    [anon_sym_tstore] = ACTIONS(924),
    [anon_sym_mstore] = ACTIONS(924),
    [anon_sym_mstore8] = ACTIONS(924),
    [anon_sym_sload] = ACTIONS(924),
    [anon_sym_sstore] = ACTIONS(924),
    [anon_sym_msize] = ACTIONS(924),
    [anon_sym_gas] = ACTIONS(924),
    [anon_sym_address] = ACTIONS(924),
    [anon_sym_balance] = ACTIONS(924),
    [anon_sym_selfbalance] = ACTIONS(924),
    [anon_sym_caller] = ACTIONS(924),
    [anon_sym_callvalue] = ACTIONS(924),
    [anon_sym_calldataload] = ACTIONS(924),
    [anon_sym_calldatasize] = ACTIONS(924),
    [anon_sym_calldatacopy] = ACTIONS(924),
    [anon_sym_extcodesize] = ACTIONS(924),
    [anon_sym_extcodecopy] = ACTIONS(924),
    [anon_sym_returndatasize] = ACTIONS(924),
    [anon_sym_returndatacopy] = ACTIONS(924),
    [anon_sym_extcodehash] = ACTIONS(924),
    [anon_sym_create] = ACTIONS(924),
    [anon_sym_create2] = ACTIONS(924),
    [anon_sym_call] = ACTIONS(924),
    [anon_sym_callcode] = ACTIONS(924),
    [anon_sym_delegatecall] = ACTIONS(924),
    [anon_sym_staticcall] = ACTIONS(924),
    [anon_sym_return] = ACTIONS(924),
    [anon_sym_revert] = ACTIONS(924),
    [anon_sym_selfdestruct] = ACTIONS(924),
    [anon_sym_invalid] = ACTIONS(924),
    [anon_sym_log0] = ACTIONS(924),
    [anon_sym_log1] = ACTIONS(924),
    [anon_sym_log2] = ACTIONS(924),
    [anon_sym_log3] = ACTIONS(924),
    [anon_sym_log4] = ACTIONS(924),
    [anon_sym_chainid] = ACTIONS(924),
    [anon_sym_origin] = ACTIONS(924),
    [anon_sym_gasprice] = ACTIONS(924),
    [anon_sym_blockhash] = ACTIONS(924),
    [anon_sym_blobhash] = ACTIONS(924),
    [anon_sym_basefee] = ACTIONS(924),
    [anon_sym_blobfee] = ACTIONS(924),
    [anon_sym_coinbase] = ACTIONS(924),
    [anon_sym_timestamp] = ACTIONS(924),
    [anon_sym_number] = ACTIONS(924),
    [anon_sym_difficulty] = ACTIONS(924),
    [anon_sym_gaslimit] = ACTIONS(924),
    [anon_sym_prevrandao] = ACTIONS(924),
    [anon_sym_blobbasefee] = ACTIONS(924),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(322)] = {
    [sym_identifier] = ACTIONS(1219),
    [anon_sym_LBRACE] = ACTIONS(1221),
    [anon_sym_RBRACE] = ACTIONS(1221),
    [anon_sym_for] = ACTIONS(1219),
    [sym_yul_leave] = ACTIONS(1219),
    [anon_sym_break] = ACTIONS(1219),
    [anon_sym_continue] = ACTIONS(1219),
    [sym_yul_decimal_number] = ACTIONS(1219),
    [sym_yul_hex_number] = ACTIONS(1221),
    [anon_sym_true] = ACTIONS(1219),
    [anon_sym_false] = ACTIONS(1219),
    [anon_sym_hex] = ACTIONS(1219),
    [anon_sym_DQUOTE] = ACTIONS(1221),
    [anon_sym_SQUOTE] = ACTIONS(1221),
    [anon_sym_let] = ACTIONS(1219),
    [anon_sym_if] = ACTIONS(1219),
    [anon_sym_switch] = ACTIONS(1219),
    [anon_sym_function] = ACTIONS(1219),
    [anon_sym_stop] = ACTIONS(1219),
    [anon_sym_add] = ACTIONS(1219),
    [anon_sym_sub] = ACTIONS(1219),
    [anon_sym_mul] = ACTIONS(1219),
    [anon_sym_div] = ACTIONS(1219),
    [anon_sym_sdiv] = ACTIONS(1219),
    [anon_sym_mod] = ACTIONS(1219),
    [anon_sym_smod] = ACTIONS(1219),
    [anon_sym_exp] = ACTIONS(1219),
    [anon_sym_not] = ACTIONS(1219),
    [anon_sym_lt] = ACTIONS(1219),
    [anon_sym_gt] = ACTIONS(1219),
    [anon_sym_slt] = ACTIONS(1219),
    [anon_sym_sgt] = ACTIONS(1219),
    [anon_sym_eq] = ACTIONS(1219),
    [anon_sym_iszero] = ACTIONS(1219),
    [anon_sym_and] = ACTIONS(1219),
    [anon_sym_or] = ACTIONS(1219),
    [anon_sym_xor] = ACTIONS(1219),
    [anon_sym_byte] = ACTIONS(1219),
    [anon_sym_shl] = ACTIONS(1219),
    [anon_sym_shr] = ACTIONS(1219),
    [anon_sym_sar] = ACTIONS(1219),
    [anon_sym_addmod] = ACTIONS(1219),
    [anon_sym_mulmod] = ACTIONS(1219),
    [anon_sym_signextend] = ACTIONS(1219),
    [anon_sym_keccak256] = ACTIONS(1219),
    [anon_sym_pop] = ACTIONS(1219),
    [anon_sym_mload] = ACTIONS(1219),
    [anon_sym_mcopy] = ACTIONS(1219),
    [anon_sym_tload] = ACTIONS(1219),
    [anon_sym_tstore] = ACTIONS(1219),
    [anon_sym_mstore] = ACTIONS(1219),
    [anon_sym_mstore8] = ACTIONS(1219),
    [anon_sym_sload] = ACTIONS(1219),
    [anon_sym_sstore] = ACTIONS(1219),
    [anon_sym_msize] = ACTIONS(1219),
    [anon_sym_gas] = ACTIONS(1219),
    [anon_sym_address] = ACTIONS(1219),
    [anon_sym_balance] = ACTIONS(1219),
    [anon_sym_selfbalance] = ACTIONS(1219),
    [anon_sym_caller] = ACTIONS(1219),
    [anon_sym_callvalue] = ACTIONS(1219),
    [anon_sym_calldataload] = ACTIONS(1219),
    [anon_sym_calldatasize] = ACTIONS(1219),
    [anon_sym_calldatacopy] = ACTIONS(1219),
    [anon_sym_extcodesize] = ACTIONS(1219),
    [anon_sym_extcodecopy] = ACTIONS(1219),
    [anon_sym_returndatasize] = ACTIONS(1219),
    [anon_sym_returndatacopy] = ACTIONS(1219),
    [anon_sym_extcodehash] = ACTIONS(1219),
    [anon_sym_create] = ACTIONS(1219),
    [anon_sym_create2] = ACTIONS(1219),
    [anon_sym_call] = ACTIONS(1219),
    [anon_sym_callcode] = ACTIONS(1219),
    [anon_sym_delegatecall] = ACTIONS(1219),
    [anon_sym_staticcall] = ACTIONS(1219),
    [anon_sym_return] = ACTIONS(1219),
    [anon_sym_revert] = ACTIONS(1219),
    [anon_sym_selfdestruct] = ACTIONS(1219),
    [anon_sym_invalid] = ACTIONS(1219),
    [anon_sym_log0] = ACTIONS(1219),
    [anon_sym_log1] = ACTIONS(1219),
    [anon_sym_log2] = ACTIONS(1219),
    [anon_sym_log3] = ACTIONS(1219),
    [anon_sym_log4] = ACTIONS(1219),
    [anon_sym_chainid] = ACTIONS(1219),
    [anon_sym_origin] = ACTIONS(1219),
    [anon_sym_gasprice] = ACTIONS(1219),
    [anon_sym_blockhash] = ACTIONS(1219),
    [anon_sym_blobhash] = ACTIONS(1219),
    [anon_sym_basefee] = ACTIONS(1219),
    [anon_sym_blobfee] = ACTIONS(1219),
    [anon_sym_coinbase] = ACTIONS(1219),
    [anon_sym_timestamp] = ACTIONS(1219),
    [anon_sym_number] = ACTIONS(1219),
    [anon_sym_difficulty] = ACTIONS(1219),
    [anon_sym_gaslimit] = ACTIONS(1219),
    [anon_sym_prevrandao] = ACTIONS(1219),
    [anon_sym_blobbasefee] = ACTIONS(1219),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(323)] = {
    [sym_yul_identifier] = STATE(275),
    [sym__yul_expression] = STATE(327),
    [sym_yul_path] = STATE(327),
    [sym__yul_literal] = STATE(327),
    [sym_yul_string_literal] = STATE(327),
    [sym_yul_boolean] = STATE(327),
    [sym_yul_hex_string_literal] = STATE(327),
    [sym_yul_function_call] = STATE(328),
    [sym_yul_evm_builtin] = STATE(284),
    [sym_string] = STATE(290),
    [sym_identifier] = ACTIONS(1167),
    [sym_yul_decimal_number] = ACTIONS(1223),
    [sym_yul_hex_number] = ACTIONS(1225),
    [anon_sym_true] = ACTIONS(908),
    [anon_sym_false] = ACTIONS(908),
    [anon_sym_hex] = ACTIONS(910),
    [anon_sym_DQUOTE] = ACTIONS(912),
    [anon_sym_SQUOTE] = ACTIONS(914),
    [anon_sym_stop] = ACTIONS(924),
    [anon_sym_add] = ACTIONS(924),
    [anon_sym_sub] = ACTIONS(924),
    [anon_sym_mul] = ACTIONS(924),
    [anon_sym_div] = ACTIONS(924),
    [anon_sym_sdiv] = ACTIONS(924),
    [anon_sym_mod] = ACTIONS(924),
    [anon_sym_smod] = ACTIONS(924),
    [anon_sym_exp] = ACTIONS(924),
    [anon_sym_not] = ACTIONS(924),
    [anon_sym_lt] = ACTIONS(924),
    [anon_sym_gt] = ACTIONS(924),
    [anon_sym_slt] = ACTIONS(924),
    [anon_sym_sgt] = ACTIONS(924),
    [anon_sym_eq] = ACTIONS(924),
    [anon_sym_iszero] = ACTIONS(924),
    [anon_sym_and] = ACTIONS(924),
    [anon_sym_or] = ACTIONS(924),
    [anon_sym_xor] = ACTIONS(924),
    [anon_sym_byte] = ACTIONS(924),
    [anon_sym_shl] = ACTIONS(924),
    [anon_sym_shr] = ACTIONS(924),
    [anon_sym_sar] = ACTIONS(924),
    [anon_sym_addmod] = ACTIONS(924),
    [anon_sym_mulmod] = ACTIONS(924),
    [anon_sym_signextend] = ACTIONS(924),
    [anon_sym_keccak256] = ACTIONS(924),
    [anon_sym_pop] = ACTIONS(924),
    [anon_sym_mload] = ACTIONS(924),
    [anon_sym_mcopy] = ACTIONS(924),
    [anon_sym_tload] = ACTIONS(924),
    [anon_sym_tstore] = ACTIONS(924),
    [anon_sym_mstore] = ACTIONS(924),
    [anon_sym_mstore8] = ACTIONS(924),
    [anon_sym_sload] = ACTIONS(924),
    [anon_sym_sstore] = ACTIONS(924),
    [anon_sym_msize] = ACTIONS(924),
    [anon_sym_gas] = ACTIONS(924),
    [anon_sym_address] = ACTIONS(924),
    [anon_sym_balance] = ACTIONS(924),
    [anon_sym_selfbalance] = ACTIONS(924),
    [anon_sym_caller] = ACTIONS(924),
    [anon_sym_callvalue] = ACTIONS(924),
    [anon_sym_calldataload] = ACTIONS(924),
    [anon_sym_calldatasize] = ACTIONS(924),
    [anon_sym_calldatacopy] = ACTIONS(924),
    [anon_sym_extcodesize] = ACTIONS(924),
    [anon_sym_extcodecopy] = ACTIONS(924),
    [anon_sym_returndatasize] = ACTIONS(924),
    [anon_sym_returndatacopy] = ACTIONS(924),
    [anon_sym_extcodehash] = ACTIONS(924),
    [anon_sym_create] = ACTIONS(924),
    [anon_sym_create2] = ACTIONS(924),
    [anon_sym_call] = ACTIONS(924),
    [anon_sym_callcode] = ACTIONS(924),
    [anon_sym_delegatecall] = ACTIONS(924),
    [anon_sym_staticcall] = ACTIONS(924),
    [anon_sym_return] = ACTIONS(924),
    [anon_sym_revert] = ACTIONS(924),
    [anon_sym_selfdestruct] = ACTIONS(924),
    [anon_sym_invalid] = ACTIONS(924),
    [anon_sym_log0] = ACTIONS(924),
    [anon_sym_log1] = ACTIONS(924),
    [anon_sym_log2] = ACTIONS(924),
    [anon_sym_log3] = ACTIONS(924),
    [anon_sym_log4] = ACTIONS(924),
    [anon_sym_chainid] = ACTIONS(924),
    [anon_sym_origin] = ACTIONS(924),
    [anon_sym_gasprice] = ACTIONS(924),
    [anon_sym_blockhash] = ACTIONS(924),
    [anon_sym_blobhash] = ACTIONS(924),
    [anon_sym_basefee] = ACTIONS(924),
    [anon_sym_blobfee] = ACTIONS(924),
    [anon_sym_coinbase] = ACTIONS(924),
    [anon_sym_timestamp] = ACTIONS(924),
    [anon_sym_number] = ACTIONS(924),
    [anon_sym_difficulty] = ACTIONS(924),
    [anon_sym_gaslimit] = ACTIONS(924),
    [anon_sym_prevrandao] = ACTIONS(924),
    [anon_sym_blobbasefee] = ACTIONS(924),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(324)] = {
    [sym_identifier] = ACTIONS(1227),
    [anon_sym_LBRACE] = ACTIONS(1229),
    [anon_sym_RBRACE] = ACTIONS(1229),
    [anon_sym_for] = ACTIONS(1227),
    [sym_yul_leave] = ACTIONS(1227),
    [anon_sym_break] = ACTIONS(1227),
    [anon_sym_continue] = ACTIONS(1227),
    [sym_yul_decimal_number] = ACTIONS(1227),
    [sym_yul_hex_number] = ACTIONS(1229),
    [anon_sym_true] = ACTIONS(1227),
    [anon_sym_false] = ACTIONS(1227),
    [anon_sym_hex] = ACTIONS(1227),
    [anon_sym_DQUOTE] = ACTIONS(1229),
    [anon_sym_SQUOTE] = ACTIONS(1229),
    [anon_sym_let] = ACTIONS(1227),
    [anon_sym_if] = ACTIONS(1227),
    [anon_sym_switch] = ACTIONS(1227),
    [anon_sym_function] = ACTIONS(1227),
    [anon_sym_stop] = ACTIONS(1227),
    [anon_sym_add] = ACTIONS(1227),
    [anon_sym_sub] = ACTIONS(1227),
    [anon_sym_mul] = ACTIONS(1227),
    [anon_sym_div] = ACTIONS(1227),
    [anon_sym_sdiv] = ACTIONS(1227),
    [anon_sym_mod] = ACTIONS(1227),
    [anon_sym_smod] = ACTIONS(1227),
    [anon_sym_exp] = ACTIONS(1227),
    [anon_sym_not] = ACTIONS(1227),
    [anon_sym_lt] = ACTIONS(1227),
    [anon_sym_gt] = ACTIONS(1227),
    [anon_sym_slt] = ACTIONS(1227),
    [anon_sym_sgt] = ACTIONS(1227),
    [anon_sym_eq] = ACTIONS(1227),
    [anon_sym_iszero] = ACTIONS(1227),
    [anon_sym_and] = ACTIONS(1227),
    [anon_sym_or] = ACTIONS(1227),
    [anon_sym_xor] = ACTIONS(1227),
    [anon_sym_byte] = ACTIONS(1227),
    [anon_sym_shl] = ACTIONS(1227),
    [anon_sym_shr] = ACTIONS(1227),
    [anon_sym_sar] = ACTIONS(1227),
    [anon_sym_addmod] = ACTIONS(1227),
    [anon_sym_mulmod] = ACTIONS(1227),
    [anon_sym_signextend] = ACTIONS(1227),
    [anon_sym_keccak256] = ACTIONS(1227),
    [anon_sym_pop] = ACTIONS(1227),
    [anon_sym_mload] = ACTIONS(1227),
    [anon_sym_mcopy] = ACTIONS(1227),
    [anon_sym_tload] = ACTIONS(1227),
    [anon_sym_tstore] = ACTIONS(1227),
    [anon_sym_mstore] = ACTIONS(1227),
    [anon_sym_mstore8] = ACTIONS(1227),
    [anon_sym_sload] = ACTIONS(1227),
    [anon_sym_sstore] = ACTIONS(1227),
    [anon_sym_msize] = ACTIONS(1227),
    [anon_sym_gas] = ACTIONS(1227),
    [anon_sym_address] = ACTIONS(1227),
    [anon_sym_balance] = ACTIONS(1227),
    [anon_sym_selfbalance] = ACTIONS(1227),
    [anon_sym_caller] = ACTIONS(1227),
    [anon_sym_callvalue] = ACTIONS(1227),
    [anon_sym_calldataload] = ACTIONS(1227),
    [anon_sym_calldatasize] = ACTIONS(1227),
    [anon_sym_calldatacopy] = ACTIONS(1227),
    [anon_sym_extcodesize] = ACTIONS(1227),
    [anon_sym_extcodecopy] = ACTIONS(1227),
    [anon_sym_returndatasize] = ACTIONS(1227),
    [anon_sym_returndatacopy] = ACTIONS(1227),
    [anon_sym_extcodehash] = ACTIONS(1227),
    [anon_sym_create] = ACTIONS(1227),
    [anon_sym_create2] = ACTIONS(1227),
    [anon_sym_call] = ACTIONS(1227),
    [anon_sym_callcode] = ACTIONS(1227),
    [anon_sym_delegatecall] = ACTIONS(1227),
    [anon_sym_staticcall] = ACTIONS(1227),
    [anon_sym_return] = ACTIONS(1227),
    [anon_sym_revert] = ACTIONS(1227),
    [anon_sym_selfdestruct] = ACTIONS(1227),
    [anon_sym_invalid] = ACTIONS(1227),
    [anon_sym_log0] = ACTIONS(1227),
    [anon_sym_log1] = ACTIONS(1227),
    [anon_sym_log2] = ACTIONS(1227),
    [anon_sym_log3] = ACTIONS(1227),
    [anon_sym_log4] = ACTIONS(1227),
    [anon_sym_chainid] = ACTIONS(1227),
    [anon_sym_origin] = ACTIONS(1227),
    [anon_sym_gasprice] = ACTIONS(1227),
    [anon_sym_blockhash] = ACTIONS(1227),
    [anon_sym_blobhash] = ACTIONS(1227),
    [anon_sym_basefee] = ACTIONS(1227),
    [anon_sym_blobfee] = ACTIONS(1227),
    [anon_sym_coinbase] = ACTIONS(1227),
    [anon_sym_timestamp] = ACTIONS(1227),
    [anon_sym_number] = ACTIONS(1227),
    [anon_sym_difficulty] = ACTIONS(1227),
    [anon_sym_gaslimit] = ACTIONS(1227),
    [anon_sym_prevrandao] = ACTIONS(1227),
    [anon_sym_blobbasefee] = ACTIONS(1227),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(325)] = {
    [sym_identifier] = ACTIONS(1043),
    [anon_sym_LBRACE] = ACTIONS(1045),
    [anon_sym_RBRACE] = ACTIONS(1045),
    [anon_sym_for] = ACTIONS(1043),
    [sym_yul_leave] = ACTIONS(1043),
    [anon_sym_break] = ACTIONS(1043),
    [anon_sym_continue] = ACTIONS(1043),
    [sym_yul_decimal_number] = ACTIONS(1043),
    [sym_yul_hex_number] = ACTIONS(1045),
    [anon_sym_true] = ACTIONS(1043),
    [anon_sym_false] = ACTIONS(1043),
    [anon_sym_hex] = ACTIONS(1043),
    [anon_sym_DQUOTE] = ACTIONS(1045),
    [anon_sym_SQUOTE] = ACTIONS(1045),
    [anon_sym_let] = ACTIONS(1043),
    [anon_sym_if] = ACTIONS(1043),
    [anon_sym_switch] = ACTIONS(1043),
    [anon_sym_function] = ACTIONS(1043),
    [anon_sym_stop] = ACTIONS(1043),
    [anon_sym_add] = ACTIONS(1043),
    [anon_sym_sub] = ACTIONS(1043),
    [anon_sym_mul] = ACTIONS(1043),
    [anon_sym_div] = ACTIONS(1043),
    [anon_sym_sdiv] = ACTIONS(1043),
    [anon_sym_mod] = ACTIONS(1043),
    [anon_sym_smod] = ACTIONS(1043),
    [anon_sym_exp] = ACTIONS(1043),
    [anon_sym_not] = ACTIONS(1043),
    [anon_sym_lt] = ACTIONS(1043),
    [anon_sym_gt] = ACTIONS(1043),
    [anon_sym_slt] = ACTIONS(1043),
    [anon_sym_sgt] = ACTIONS(1043),
    [anon_sym_eq] = ACTIONS(1043),
    [anon_sym_iszero] = ACTIONS(1043),
    [anon_sym_and] = ACTIONS(1043),
    [anon_sym_or] = ACTIONS(1043),
    [anon_sym_xor] = ACTIONS(1043),
    [anon_sym_byte] = ACTIONS(1043),
    [anon_sym_shl] = ACTIONS(1043),
    [anon_sym_shr] = ACTIONS(1043),
    [anon_sym_sar] = ACTIONS(1043),
    [anon_sym_addmod] = ACTIONS(1043),
    [anon_sym_mulmod] = ACTIONS(1043),
    [anon_sym_signextend] = ACTIONS(1043),
    [anon_sym_keccak256] = ACTIONS(1043),
    [anon_sym_pop] = ACTIONS(1043),
    [anon_sym_mload] = ACTIONS(1043),
    [anon_sym_mcopy] = ACTIONS(1043),
    [anon_sym_tload] = ACTIONS(1043),
    [anon_sym_tstore] = ACTIONS(1043),
    [anon_sym_mstore] = ACTIONS(1043),
    [anon_sym_mstore8] = ACTIONS(1043),
    [anon_sym_sload] = ACTIONS(1043),
    [anon_sym_sstore] = ACTIONS(1043),
    [anon_sym_msize] = ACTIONS(1043),
    [anon_sym_gas] = ACTIONS(1043),
    [anon_sym_address] = ACTIONS(1043),
    [anon_sym_balance] = ACTIONS(1043),
    [anon_sym_selfbalance] = ACTIONS(1043),
    [anon_sym_caller] = ACTIONS(1043),
    [anon_sym_callvalue] = ACTIONS(1043),
    [anon_sym_calldataload] = ACTIONS(1043),
    [anon_sym_calldatasize] = ACTIONS(1043),
    [anon_sym_calldatacopy] = ACTIONS(1043),
    [anon_sym_extcodesize] = ACTIONS(1043),
    [anon_sym_extcodecopy] = ACTIONS(1043),
    [anon_sym_returndatasize] = ACTIONS(1043),
    [anon_sym_returndatacopy] = ACTIONS(1043),
    [anon_sym_extcodehash] = ACTIONS(1043),
    [anon_sym_create] = ACTIONS(1043),
    [anon_sym_create2] = ACTIONS(1043),
    [anon_sym_call] = ACTIONS(1043),
    [anon_sym_callcode] = ACTIONS(1043),
    [anon_sym_delegatecall] = ACTIONS(1043),
    [anon_sym_staticcall] = ACTIONS(1043),
    [anon_sym_return] = ACTIONS(1043),
    [anon_sym_revert] = ACTIONS(1043),
    [anon_sym_selfdestruct] = ACTIONS(1043),
    [anon_sym_invalid] = ACTIONS(1043),
    [anon_sym_log0] = ACTIONS(1043),
    [anon_sym_log1] = ACTIONS(1043),
    [anon_sym_log2] = ACTIONS(1043),
    [anon_sym_log3] = ACTIONS(1043),
    [anon_sym_log4] = ACTIONS(1043),
    [anon_sym_chainid] = ACTIONS(1043),
    [anon_sym_origin] = ACTIONS(1043),
    [anon_sym_gasprice] = ACTIONS(1043),
    [anon_sym_blockhash] = ACTIONS(1043),
    [anon_sym_blobhash] = ACTIONS(1043),
    [anon_sym_basefee] = ACTIONS(1043),
    [anon_sym_blobfee] = ACTIONS(1043),
    [anon_sym_coinbase] = ACTIONS(1043),
    [anon_sym_timestamp] = ACTIONS(1043),
    [anon_sym_number] = ACTIONS(1043),
    [anon_sym_difficulty] = ACTIONS(1043),
    [anon_sym_gaslimit] = ACTIONS(1043),
    [anon_sym_prevrandao] = ACTIONS(1043),
    [anon_sym_blobbasefee] = ACTIONS(1043),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(326)] = {
    [sym_identifier] = ACTIONS(1231),
    [anon_sym_LBRACE] = ACTIONS(1234),
    [anon_sym_RBRACE] = ACTIONS(1234),
    [anon_sym_for] = ACTIONS(1231),
    [sym_yul_leave] = ACTIONS(1231),
    [anon_sym_break] = ACTIONS(1231),
    [anon_sym_continue] = ACTIONS(1231),
    [sym_yul_decimal_number] = ACTIONS(1231),
    [sym_yul_hex_number] = ACTIONS(1234),
    [anon_sym_true] = ACTIONS(1231),
    [anon_sym_false] = ACTIONS(1231),
    [anon_sym_hex] = ACTIONS(1231),
    [anon_sym_DQUOTE] = ACTIONS(1234),
    [anon_sym_SQUOTE] = ACTIONS(1234),
    [anon_sym_let] = ACTIONS(1231),
    [anon_sym_if] = ACTIONS(1231),
    [anon_sym_switch] = ACTIONS(1231),
    [anon_sym_function] = ACTIONS(1231),
    [anon_sym_stop] = ACTIONS(1231),
    [anon_sym_add] = ACTIONS(1231),
    [anon_sym_sub] = ACTIONS(1231),
    [anon_sym_mul] = ACTIONS(1231),
    [anon_sym_div] = ACTIONS(1231),
    [anon_sym_sdiv] = ACTIONS(1231),
    [anon_sym_mod] = ACTIONS(1231),
    [anon_sym_smod] = ACTIONS(1231),
    [anon_sym_exp] = ACTIONS(1231),
    [anon_sym_not] = ACTIONS(1231),
    [anon_sym_lt] = ACTIONS(1231),
    [anon_sym_gt] = ACTIONS(1231),
    [anon_sym_slt] = ACTIONS(1231),
    [anon_sym_sgt] = ACTIONS(1231),
    [anon_sym_eq] = ACTIONS(1231),
    [anon_sym_iszero] = ACTIONS(1231),
    [anon_sym_and] = ACTIONS(1231),
    [anon_sym_or] = ACTIONS(1231),
    [anon_sym_xor] = ACTIONS(1231),
    [anon_sym_byte] = ACTIONS(1231),
    [anon_sym_shl] = ACTIONS(1231),
    [anon_sym_shr] = ACTIONS(1231),
    [anon_sym_sar] = ACTIONS(1231),
    [anon_sym_addmod] = ACTIONS(1231),
    [anon_sym_mulmod] = ACTIONS(1231),
    [anon_sym_signextend] = ACTIONS(1231),
    [anon_sym_keccak256] = ACTIONS(1231),
    [anon_sym_pop] = ACTIONS(1231),
    [anon_sym_mload] = ACTIONS(1231),
    [anon_sym_mcopy] = ACTIONS(1231),
    [anon_sym_tload] = ACTIONS(1231),
    [anon_sym_tstore] = ACTIONS(1231),
    [anon_sym_mstore] = ACTIONS(1231),
    [anon_sym_mstore8] = ACTIONS(1231),
    [anon_sym_sload] = ACTIONS(1231),
    [anon_sym_sstore] = ACTIONS(1231),
    [anon_sym_msize] = ACTIONS(1231),
    [anon_sym_gas] = ACTIONS(1231),
    [anon_sym_address] = ACTIONS(1231),
    [anon_sym_balance] = ACTIONS(1231),
    [anon_sym_selfbalance] = ACTIONS(1231),
    [anon_sym_caller] = ACTIONS(1231),
    [anon_sym_callvalue] = ACTIONS(1231),
    [anon_sym_calldataload] = ACTIONS(1231),
    [anon_sym_calldatasize] = ACTIONS(1231),
    [anon_sym_calldatacopy] = ACTIONS(1231),
    [anon_sym_extcodesize] = ACTIONS(1231),
    [anon_sym_extcodecopy] = ACTIONS(1231),
    [anon_sym_returndatasize] = ACTIONS(1231),
    [anon_sym_returndatacopy] = ACTIONS(1231),
    [anon_sym_extcodehash] = ACTIONS(1231),
    [anon_sym_create] = ACTIONS(1231),
    [anon_sym_create2] = ACTIONS(1231),
    [anon_sym_call] = ACTIONS(1231),
    [anon_sym_callcode] = ACTIONS(1231),
    [anon_sym_delegatecall] = ACTIONS(1231),
    [anon_sym_staticcall] = ACTIONS(1231),
    [anon_sym_return] = ACTIONS(1231),
    [anon_sym_revert] = ACTIONS(1231),
    [anon_sym_selfdestruct] = ACTIONS(1231),
    [anon_sym_invalid] = ACTIONS(1231),
    [anon_sym_log0] = ACTIONS(1231),
    [anon_sym_log1] = ACTIONS(1231),
    [anon_sym_log2] = ACTIONS(1231),
    [anon_sym_log3] = ACTIONS(1231),
    [anon_sym_log4] = ACTIONS(1231),
    [anon_sym_chainid] = ACTIONS(1231),
    [anon_sym_origin] = ACTIONS(1231),
    [anon_sym_gasprice] = ACTIONS(1231),
    [anon_sym_blockhash] = ACTIONS(1231),
    [anon_sym_blobhash] = ACTIONS(1231),
    [anon_sym_basefee] = ACTIONS(1231),
    [anon_sym_blobfee] = ACTIONS(1231),
    [anon_sym_coinbase] = ACTIONS(1231),
    [anon_sym_timestamp] = ACTIONS(1231),
    [anon_sym_number] = ACTIONS(1231),
    [anon_sym_difficulty] = ACTIONS(1231),
    [anon_sym_gaslimit] = ACTIONS(1231),
    [anon_sym_prevrandao] = ACTIONS(1231),
    [anon_sym_blobbasefee] = ACTIONS(1231),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(327)] = {
    [sym_identifier] = ACTIONS(1237),
    [anon_sym_LBRACE] = ACTIONS(1239),
    [anon_sym_RBRACE] = ACTIONS(1239),
    [anon_sym_for] = ACTIONS(1237),
    [sym_yul_leave] = ACTIONS(1237),
    [anon_sym_break] = ACTIONS(1237),
    [anon_sym_continue] = ACTIONS(1237),
    [sym_yul_decimal_number] = ACTIONS(1237),
    [sym_yul_hex_number] = ACTIONS(1239),
    [anon_sym_true] = ACTIONS(1237),
    [anon_sym_false] = ACTIONS(1237),
    [anon_sym_hex] = ACTIONS(1237),
    [anon_sym_DQUOTE] = ACTIONS(1239),
    [anon_sym_SQUOTE] = ACTIONS(1239),
    [anon_sym_let] = ACTIONS(1237),
    [anon_sym_if] = ACTIONS(1237),
    [anon_sym_switch] = ACTIONS(1237),
    [anon_sym_function] = ACTIONS(1237),
    [anon_sym_stop] = ACTIONS(1237),
    [anon_sym_add] = ACTIONS(1237),
    [anon_sym_sub] = ACTIONS(1237),
    [anon_sym_mul] = ACTIONS(1237),
    [anon_sym_div] = ACTIONS(1237),
    [anon_sym_sdiv] = ACTIONS(1237),
    [anon_sym_mod] = ACTIONS(1237),
    [anon_sym_smod] = ACTIONS(1237),
    [anon_sym_exp] = ACTIONS(1237),
    [anon_sym_not] = ACTIONS(1237),
    [anon_sym_lt] = ACTIONS(1237),
    [anon_sym_gt] = ACTIONS(1237),
    [anon_sym_slt] = ACTIONS(1237),
    [anon_sym_sgt] = ACTIONS(1237),
    [anon_sym_eq] = ACTIONS(1237),
    [anon_sym_iszero] = ACTIONS(1237),
    [anon_sym_and] = ACTIONS(1237),
    [anon_sym_or] = ACTIONS(1237),
    [anon_sym_xor] = ACTIONS(1237),
    [anon_sym_byte] = ACTIONS(1237),
    [anon_sym_shl] = ACTIONS(1237),
    [anon_sym_shr] = ACTIONS(1237),
    [anon_sym_sar] = ACTIONS(1237),
    [anon_sym_addmod] = ACTIONS(1237),
    [anon_sym_mulmod] = ACTIONS(1237),
    [anon_sym_signextend] = ACTIONS(1237),
    [anon_sym_keccak256] = ACTIONS(1237),
    [anon_sym_pop] = ACTIONS(1237),
    [anon_sym_mload] = ACTIONS(1237),
    [anon_sym_mcopy] = ACTIONS(1237),
    [anon_sym_tload] = ACTIONS(1237),
    [anon_sym_tstore] = ACTIONS(1237),
    [anon_sym_mstore] = ACTIONS(1237),
    [anon_sym_mstore8] = ACTIONS(1237),
    [anon_sym_sload] = ACTIONS(1237),
    [anon_sym_sstore] = ACTIONS(1237),
    [anon_sym_msize] = ACTIONS(1237),
    [anon_sym_gas] = ACTIONS(1237),
    [anon_sym_address] = ACTIONS(1237),
    [anon_sym_balance] = ACTIONS(1237),
    [anon_sym_selfbalance] = ACTIONS(1237),
    [anon_sym_caller] = ACTIONS(1237),
    [anon_sym_callvalue] = ACTIONS(1237),
    [anon_sym_calldataload] = ACTIONS(1237),
    [anon_sym_calldatasize] = ACTIONS(1237),
    [anon_sym_calldatacopy] = ACTIONS(1237),
    [anon_sym_extcodesize] = ACTIONS(1237),
    [anon_sym_extcodecopy] = ACTIONS(1237),
    [anon_sym_returndatasize] = ACTIONS(1237),
    [anon_sym_returndatacopy] = ACTIONS(1237),
    [anon_sym_extcodehash] = ACTIONS(1237),
    [anon_sym_create] = ACTIONS(1237),
    [anon_sym_create2] = ACTIONS(1237),
    [anon_sym_call] = ACTIONS(1237),
    [anon_sym_callcode] = ACTIONS(1237),
    [anon_sym_delegatecall] = ACTIONS(1237),
    [anon_sym_staticcall] = ACTIONS(1237),
    [anon_sym_return] = ACTIONS(1237),
    [anon_sym_revert] = ACTIONS(1237),
    [anon_sym_selfdestruct] = ACTIONS(1237),
    [anon_sym_invalid] = ACTIONS(1237),
    [anon_sym_log0] = ACTIONS(1237),
    [anon_sym_log1] = ACTIONS(1237),
    [anon_sym_log2] = ACTIONS(1237),
    [anon_sym_log3] = ACTIONS(1237),
    [anon_sym_log4] = ACTIONS(1237),
    [anon_sym_chainid] = ACTIONS(1237),
    [anon_sym_origin] = ACTIONS(1237),
    [anon_sym_gasprice] = ACTIONS(1237),
    [anon_sym_blockhash] = ACTIONS(1237),
    [anon_sym_blobhash] = ACTIONS(1237),
    [anon_sym_basefee] = ACTIONS(1237),
    [anon_sym_blobfee] = ACTIONS(1237),
    [anon_sym_coinbase] = ACTIONS(1237),
    [anon_sym_timestamp] = ACTIONS(1237),
    [anon_sym_number] = ACTIONS(1237),
    [anon_sym_difficulty] = ACTIONS(1237),
    [anon_sym_gaslimit] = ACTIONS(1237),
    [anon_sym_prevrandao] = ACTIONS(1237),
    [anon_sym_blobbasefee] = ACTIONS(1237),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(328)] = {
    [sym_identifier] = ACTIONS(1237),
    [anon_sym_LBRACE] = ACTIONS(1239),
    [anon_sym_RBRACE] = ACTIONS(1239),
    [anon_sym_for] = ACTIONS(1237),
    [sym_yul_leave] = ACTIONS(1237),
    [anon_sym_break] = ACTIONS(1237),
    [anon_sym_continue] = ACTIONS(1237),
    [sym_yul_decimal_number] = ACTIONS(1237),
    [sym_yul_hex_number] = ACTIONS(1239),
    [anon_sym_true] = ACTIONS(1237),
    [anon_sym_false] = ACTIONS(1237),
    [anon_sym_hex] = ACTIONS(1237),
    [anon_sym_DQUOTE] = ACTIONS(1239),
    [anon_sym_SQUOTE] = ACTIONS(1239),
    [anon_sym_let] = ACTIONS(1237),
    [anon_sym_if] = ACTIONS(1237),
    [anon_sym_switch] = ACTIONS(1237),
    [anon_sym_function] = ACTIONS(1237),
    [anon_sym_stop] = ACTIONS(1237),
    [anon_sym_add] = ACTIONS(1237),
    [anon_sym_sub] = ACTIONS(1237),
    [anon_sym_mul] = ACTIONS(1237),
    [anon_sym_div] = ACTIONS(1237),
    [anon_sym_sdiv] = ACTIONS(1237),
    [anon_sym_mod] = ACTIONS(1237),
    [anon_sym_smod] = ACTIONS(1237),
    [anon_sym_exp] = ACTIONS(1237),
    [anon_sym_not] = ACTIONS(1237),
    [anon_sym_lt] = ACTIONS(1237),
    [anon_sym_gt] = ACTIONS(1237),
    [anon_sym_slt] = ACTIONS(1237),
    [anon_sym_sgt] = ACTIONS(1237),
    [anon_sym_eq] = ACTIONS(1237),
    [anon_sym_iszero] = ACTIONS(1237),
    [anon_sym_and] = ACTIONS(1237),
    [anon_sym_or] = ACTIONS(1237),
    [anon_sym_xor] = ACTIONS(1237),
    [anon_sym_byte] = ACTIONS(1237),
    [anon_sym_shl] = ACTIONS(1237),
    [anon_sym_shr] = ACTIONS(1237),
    [anon_sym_sar] = ACTIONS(1237),
    [anon_sym_addmod] = ACTIONS(1237),
    [anon_sym_mulmod] = ACTIONS(1237),
    [anon_sym_signextend] = ACTIONS(1237),
    [anon_sym_keccak256] = ACTIONS(1237),
    [anon_sym_pop] = ACTIONS(1237),
    [anon_sym_mload] = ACTIONS(1237),
    [anon_sym_mcopy] = ACTIONS(1237),
    [anon_sym_tload] = ACTIONS(1237),
    [anon_sym_tstore] = ACTIONS(1237),
    [anon_sym_mstore] = ACTIONS(1237),
    [anon_sym_mstore8] = ACTIONS(1237),
    [anon_sym_sload] = ACTIONS(1237),
    [anon_sym_sstore] = ACTIONS(1237),
    [anon_sym_msize] = ACTIONS(1237),
    [anon_sym_gas] = ACTIONS(1237),
    [anon_sym_address] = ACTIONS(1237),
    [anon_sym_balance] = ACTIONS(1237),
    [anon_sym_selfbalance] = ACTIONS(1237),
    [anon_sym_caller] = ACTIONS(1237),
    [anon_sym_callvalue] = ACTIONS(1237),
    [anon_sym_calldataload] = ACTIONS(1237),
    [anon_sym_calldatasize] = ACTIONS(1237),
    [anon_sym_calldatacopy] = ACTIONS(1237),
    [anon_sym_extcodesize] = ACTIONS(1237),
    [anon_sym_extcodecopy] = ACTIONS(1237),
    [anon_sym_returndatasize] = ACTIONS(1237),
    [anon_sym_returndatacopy] = ACTIONS(1237),
    [anon_sym_extcodehash] = ACTIONS(1237),
    [anon_sym_create] = ACTIONS(1237),
    [anon_sym_create2] = ACTIONS(1237),
    [anon_sym_call] = ACTIONS(1237),
    [anon_sym_callcode] = ACTIONS(1237),
    [anon_sym_delegatecall] = ACTIONS(1237),
    [anon_sym_staticcall] = ACTIONS(1237),
    [anon_sym_return] = ACTIONS(1237),
    [anon_sym_revert] = ACTIONS(1237),
    [anon_sym_selfdestruct] = ACTIONS(1237),
    [anon_sym_invalid] = ACTIONS(1237),
    [anon_sym_log0] = ACTIONS(1237),
    [anon_sym_log1] = ACTIONS(1237),
    [anon_sym_log2] = ACTIONS(1237),
    [anon_sym_log3] = ACTIONS(1237),
    [anon_sym_log4] = ACTIONS(1237),
    [anon_sym_chainid] = ACTIONS(1237),
    [anon_sym_origin] = ACTIONS(1237),
    [anon_sym_gasprice] = ACTIONS(1237),
    [anon_sym_blockhash] = ACTIONS(1237),
    [anon_sym_blobhash] = ACTIONS(1237),
    [anon_sym_basefee] = ACTIONS(1237),
    [anon_sym_blobfee] = ACTIONS(1237),
    [anon_sym_coinbase] = ACTIONS(1237),
    [anon_sym_timestamp] = ACTIONS(1237),
    [anon_sym_number] = ACTIONS(1237),
    [anon_sym_difficulty] = ACTIONS(1237),
    [anon_sym_gaslimit] = ACTIONS(1237),
    [anon_sym_prevrandao] = ACTIONS(1237),
    [anon_sym_blobbasefee] = ACTIONS(1237),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(329)] = {
    [sym_identifier] = ACTIONS(1241),
    [anon_sym_LBRACE] = ACTIONS(1243),
    [anon_sym_RBRACE] = ACTIONS(1243),
    [anon_sym_for] = ACTIONS(1241),
    [sym_yul_leave] = ACTIONS(1241),
    [anon_sym_break] = ACTIONS(1241),
    [anon_sym_continue] = ACTIONS(1241),
    [sym_yul_decimal_number] = ACTIONS(1241),
    [sym_yul_hex_number] = ACTIONS(1243),
    [anon_sym_true] = ACTIONS(1241),
    [anon_sym_false] = ACTIONS(1241),
    [anon_sym_hex] = ACTIONS(1241),
    [anon_sym_DQUOTE] = ACTIONS(1243),
    [anon_sym_SQUOTE] = ACTIONS(1243),
    [anon_sym_let] = ACTIONS(1241),
    [anon_sym_if] = ACTIONS(1241),
    [anon_sym_switch] = ACTIONS(1241),
    [anon_sym_function] = ACTIONS(1241),
    [anon_sym_stop] = ACTIONS(1241),
    [anon_sym_add] = ACTIONS(1241),
    [anon_sym_sub] = ACTIONS(1241),
    [anon_sym_mul] = ACTIONS(1241),
    [anon_sym_div] = ACTIONS(1241),
    [anon_sym_sdiv] = ACTIONS(1241),
    [anon_sym_mod] = ACTIONS(1241),
    [anon_sym_smod] = ACTIONS(1241),
    [anon_sym_exp] = ACTIONS(1241),
    [anon_sym_not] = ACTIONS(1241),
    [anon_sym_lt] = ACTIONS(1241),
    [anon_sym_gt] = ACTIONS(1241),
    [anon_sym_slt] = ACTIONS(1241),
    [anon_sym_sgt] = ACTIONS(1241),
    [anon_sym_eq] = ACTIONS(1241),
    [anon_sym_iszero] = ACTIONS(1241),
    [anon_sym_and] = ACTIONS(1241),
    [anon_sym_or] = ACTIONS(1241),
    [anon_sym_xor] = ACTIONS(1241),
    [anon_sym_byte] = ACTIONS(1241),
    [anon_sym_shl] = ACTIONS(1241),
    [anon_sym_shr] = ACTIONS(1241),
    [anon_sym_sar] = ACTIONS(1241),
    [anon_sym_addmod] = ACTIONS(1241),
    [anon_sym_mulmod] = ACTIONS(1241),
    [anon_sym_signextend] = ACTIONS(1241),
    [anon_sym_keccak256] = ACTIONS(1241),
    [anon_sym_pop] = ACTIONS(1241),
    [anon_sym_mload] = ACTIONS(1241),
    [anon_sym_mcopy] = ACTIONS(1241),
    [anon_sym_tload] = ACTIONS(1241),
    [anon_sym_tstore] = ACTIONS(1241),
    [anon_sym_mstore] = ACTIONS(1241),
    [anon_sym_mstore8] = ACTIONS(1241),
    [anon_sym_sload] = ACTIONS(1241),
    [anon_sym_sstore] = ACTIONS(1241),
    [anon_sym_msize] = ACTIONS(1241),
    [anon_sym_gas] = ACTIONS(1241),
    [anon_sym_address] = ACTIONS(1241),
    [anon_sym_balance] = ACTIONS(1241),
    [anon_sym_selfbalance] = ACTIONS(1241),
    [anon_sym_caller] = ACTIONS(1241),
    [anon_sym_callvalue] = ACTIONS(1241),
    [anon_sym_calldataload] = ACTIONS(1241),
    [anon_sym_calldatasize] = ACTIONS(1241),
    [anon_sym_calldatacopy] = ACTIONS(1241),
    [anon_sym_extcodesize] = ACTIONS(1241),
    [anon_sym_extcodecopy] = ACTIONS(1241),
    [anon_sym_returndatasize] = ACTIONS(1241),
    [anon_sym_returndatacopy] = ACTIONS(1241),
    [anon_sym_extcodehash] = ACTIONS(1241),
    [anon_sym_create] = ACTIONS(1241),
    [anon_sym_create2] = ACTIONS(1241),
    [anon_sym_call] = ACTIONS(1241),
    [anon_sym_callcode] = ACTIONS(1241),
    [anon_sym_delegatecall] = ACTIONS(1241),
    [anon_sym_staticcall] = ACTIONS(1241),
    [anon_sym_return] = ACTIONS(1241),
    [anon_sym_revert] = ACTIONS(1241),
    [anon_sym_selfdestruct] = ACTIONS(1241),
    [anon_sym_invalid] = ACTIONS(1241),
    [anon_sym_log0] = ACTIONS(1241),
    [anon_sym_log1] = ACTIONS(1241),
    [anon_sym_log2] = ACTIONS(1241),
    [anon_sym_log3] = ACTIONS(1241),
    [anon_sym_log4] = ACTIONS(1241),
    [anon_sym_chainid] = ACTIONS(1241),
    [anon_sym_origin] = ACTIONS(1241),
    [anon_sym_gasprice] = ACTIONS(1241),
    [anon_sym_blockhash] = ACTIONS(1241),
    [anon_sym_blobhash] = ACTIONS(1241),
    [anon_sym_basefee] = ACTIONS(1241),
    [anon_sym_blobfee] = ACTIONS(1241),
    [anon_sym_coinbase] = ACTIONS(1241),
    [anon_sym_timestamp] = ACTIONS(1241),
    [anon_sym_number] = ACTIONS(1241),
    [anon_sym_difficulty] = ACTIONS(1241),
    [anon_sym_gaslimit] = ACTIONS(1241),
    [anon_sym_prevrandao] = ACTIONS(1241),
    [anon_sym_blobbasefee] = ACTIONS(1241),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(330)] = {
    [sym_identifier] = ACTIONS(1245),
    [anon_sym_LBRACE] = ACTIONS(1247),
    [anon_sym_RBRACE] = ACTIONS(1247),
    [anon_sym_for] = ACTIONS(1245),
    [sym_yul_leave] = ACTIONS(1245),
    [anon_sym_break] = ACTIONS(1245),
    [anon_sym_continue] = ACTIONS(1245),
    [sym_yul_decimal_number] = ACTIONS(1245),
    [sym_yul_hex_number] = ACTIONS(1247),
    [anon_sym_true] = ACTIONS(1245),
    [anon_sym_false] = ACTIONS(1245),
    [anon_sym_hex] = ACTIONS(1245),
    [anon_sym_DQUOTE] = ACTIONS(1247),
    [anon_sym_SQUOTE] = ACTIONS(1247),
    [anon_sym_let] = ACTIONS(1245),
    [anon_sym_if] = ACTIONS(1245),
    [anon_sym_switch] = ACTIONS(1245),
    [anon_sym_function] = ACTIONS(1245),
    [anon_sym_stop] = ACTIONS(1245),
    [anon_sym_add] = ACTIONS(1245),
    [anon_sym_sub] = ACTIONS(1245),
    [anon_sym_mul] = ACTIONS(1245),
    [anon_sym_div] = ACTIONS(1245),
    [anon_sym_sdiv] = ACTIONS(1245),
    [anon_sym_mod] = ACTIONS(1245),
    [anon_sym_smod] = ACTIONS(1245),
    [anon_sym_exp] = ACTIONS(1245),
    [anon_sym_not] = ACTIONS(1245),
    [anon_sym_lt] = ACTIONS(1245),
    [anon_sym_gt] = ACTIONS(1245),
    [anon_sym_slt] = ACTIONS(1245),
    [anon_sym_sgt] = ACTIONS(1245),
    [anon_sym_eq] = ACTIONS(1245),
    [anon_sym_iszero] = ACTIONS(1245),
    [anon_sym_and] = ACTIONS(1245),
    [anon_sym_or] = ACTIONS(1245),
    [anon_sym_xor] = ACTIONS(1245),
    [anon_sym_byte] = ACTIONS(1245),
    [anon_sym_shl] = ACTIONS(1245),
    [anon_sym_shr] = ACTIONS(1245),
    [anon_sym_sar] = ACTIONS(1245),
    [anon_sym_addmod] = ACTIONS(1245),
    [anon_sym_mulmod] = ACTIONS(1245),
    [anon_sym_signextend] = ACTIONS(1245),
    [anon_sym_keccak256] = ACTIONS(1245),
    [anon_sym_pop] = ACTIONS(1245),
    [anon_sym_mload] = ACTIONS(1245),
    [anon_sym_mcopy] = ACTIONS(1245),
    [anon_sym_tload] = ACTIONS(1245),
    [anon_sym_tstore] = ACTIONS(1245),
    [anon_sym_mstore] = ACTIONS(1245),
    [anon_sym_mstore8] = ACTIONS(1245),
    [anon_sym_sload] = ACTIONS(1245),
    [anon_sym_sstore] = ACTIONS(1245),
    [anon_sym_msize] = ACTIONS(1245),
    [anon_sym_gas] = ACTIONS(1245),
    [anon_sym_address] = ACTIONS(1245),
    [anon_sym_balance] = ACTIONS(1245),
    [anon_sym_selfbalance] = ACTIONS(1245),
    [anon_sym_caller] = ACTIONS(1245),
    [anon_sym_callvalue] = ACTIONS(1245),
    [anon_sym_calldataload] = ACTIONS(1245),
    [anon_sym_calldatasize] = ACTIONS(1245),
    [anon_sym_calldatacopy] = ACTIONS(1245),
    [anon_sym_extcodesize] = ACTIONS(1245),
    [anon_sym_extcodecopy] = ACTIONS(1245),
    [anon_sym_returndatasize] = ACTIONS(1245),
    [anon_sym_returndatacopy] = ACTIONS(1245),
    [anon_sym_extcodehash] = ACTIONS(1245),
    [anon_sym_create] = ACTIONS(1245),
    [anon_sym_create2] = ACTIONS(1245),
    [anon_sym_call] = ACTIONS(1245),
    [anon_sym_callcode] = ACTIONS(1245),
    [anon_sym_delegatecall] = ACTIONS(1245),
    [anon_sym_staticcall] = ACTIONS(1245),
    [anon_sym_return] = ACTIONS(1245),
    [anon_sym_revert] = ACTIONS(1245),
    [anon_sym_selfdestruct] = ACTIONS(1245),
    [anon_sym_invalid] = ACTIONS(1245),
    [anon_sym_log0] = ACTIONS(1245),
    [anon_sym_log1] = ACTIONS(1245),
    [anon_sym_log2] = ACTIONS(1245),
    [anon_sym_log3] = ACTIONS(1245),
    [anon_sym_log4] = ACTIONS(1245),
    [anon_sym_chainid] = ACTIONS(1245),
    [anon_sym_origin] = ACTIONS(1245),
    [anon_sym_gasprice] = ACTIONS(1245),
    [anon_sym_blockhash] = ACTIONS(1245),
    [anon_sym_blobhash] = ACTIONS(1245),
    [anon_sym_basefee] = ACTIONS(1245),
    [anon_sym_blobfee] = ACTIONS(1245),
    [anon_sym_coinbase] = ACTIONS(1245),
    [anon_sym_timestamp] = ACTIONS(1245),
    [anon_sym_number] = ACTIONS(1245),
    [anon_sym_difficulty] = ACTIONS(1245),
    [anon_sym_gaslimit] = ACTIONS(1245),
    [anon_sym_prevrandao] = ACTIONS(1245),
    [anon_sym_blobbasefee] = ACTIONS(1245),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(331)] = {
    [sym_identifier] = ACTIONS(1249),
    [anon_sym_LBRACE] = ACTIONS(1251),
    [anon_sym_RBRACE] = ACTIONS(1251),
    [anon_sym_for] = ACTIONS(1249),
    [sym_yul_leave] = ACTIONS(1249),
    [anon_sym_break] = ACTIONS(1249),
    [anon_sym_continue] = ACTIONS(1249),
    [sym_yul_decimal_number] = ACTIONS(1249),
    [sym_yul_hex_number] = ACTIONS(1251),
    [anon_sym_true] = ACTIONS(1249),
    [anon_sym_false] = ACTIONS(1249),
    [anon_sym_hex] = ACTIONS(1249),
    [anon_sym_DQUOTE] = ACTIONS(1251),
    [anon_sym_SQUOTE] = ACTIONS(1251),
    [anon_sym_let] = ACTIONS(1249),
    [anon_sym_if] = ACTIONS(1249),
    [anon_sym_switch] = ACTIONS(1249),
    [anon_sym_function] = ACTIONS(1249),
    [anon_sym_stop] = ACTIONS(1249),
    [anon_sym_add] = ACTIONS(1249),
    [anon_sym_sub] = ACTIONS(1249),
    [anon_sym_mul] = ACTIONS(1249),
    [anon_sym_div] = ACTIONS(1249),
    [anon_sym_sdiv] = ACTIONS(1249),
    [anon_sym_mod] = ACTIONS(1249),
    [anon_sym_smod] = ACTIONS(1249),
    [anon_sym_exp] = ACTIONS(1249),
    [anon_sym_not] = ACTIONS(1249),
    [anon_sym_lt] = ACTIONS(1249),
    [anon_sym_gt] = ACTIONS(1249),
    [anon_sym_slt] = ACTIONS(1249),
    [anon_sym_sgt] = ACTIONS(1249),
    [anon_sym_eq] = ACTIONS(1249),
    [anon_sym_iszero] = ACTIONS(1249),
    [anon_sym_and] = ACTIONS(1249),
    [anon_sym_or] = ACTIONS(1249),
    [anon_sym_xor] = ACTIONS(1249),
    [anon_sym_byte] = ACTIONS(1249),
    [anon_sym_shl] = ACTIONS(1249),
    [anon_sym_shr] = ACTIONS(1249),
    [anon_sym_sar] = ACTIONS(1249),
    [anon_sym_addmod] = ACTIONS(1249),
    [anon_sym_mulmod] = ACTIONS(1249),
    [anon_sym_signextend] = ACTIONS(1249),
    [anon_sym_keccak256] = ACTIONS(1249),
    [anon_sym_pop] = ACTIONS(1249),
    [anon_sym_mload] = ACTIONS(1249),
    [anon_sym_mcopy] = ACTIONS(1249),
    [anon_sym_tload] = ACTIONS(1249),
    [anon_sym_tstore] = ACTIONS(1249),
    [anon_sym_mstore] = ACTIONS(1249),
    [anon_sym_mstore8] = ACTIONS(1249),
    [anon_sym_sload] = ACTIONS(1249),
    [anon_sym_sstore] = ACTIONS(1249),
    [anon_sym_msize] = ACTIONS(1249),
    [anon_sym_gas] = ACTIONS(1249),
    [anon_sym_address] = ACTIONS(1249),
    [anon_sym_balance] = ACTIONS(1249),
    [anon_sym_selfbalance] = ACTIONS(1249),
    [anon_sym_caller] = ACTIONS(1249),
    [anon_sym_callvalue] = ACTIONS(1249),
    [anon_sym_calldataload] = ACTIONS(1249),
    [anon_sym_calldatasize] = ACTIONS(1249),
    [anon_sym_calldatacopy] = ACTIONS(1249),
    [anon_sym_extcodesize] = ACTIONS(1249),
    [anon_sym_extcodecopy] = ACTIONS(1249),
    [anon_sym_returndatasize] = ACTIONS(1249),
    [anon_sym_returndatacopy] = ACTIONS(1249),
    [anon_sym_extcodehash] = ACTIONS(1249),
    [anon_sym_create] = ACTIONS(1249),
    [anon_sym_create2] = ACTIONS(1249),
    [anon_sym_call] = ACTIONS(1249),
    [anon_sym_callcode] = ACTIONS(1249),
    [anon_sym_delegatecall] = ACTIONS(1249),
    [anon_sym_staticcall] = ACTIONS(1249),
    [anon_sym_return] = ACTIONS(1249),
    [anon_sym_revert] = ACTIONS(1249),
    [anon_sym_selfdestruct] = ACTIONS(1249),
    [anon_sym_invalid] = ACTIONS(1249),
    [anon_sym_log0] = ACTIONS(1249),
    [anon_sym_log1] = ACTIONS(1249),
    [anon_sym_log2] = ACTIONS(1249),
    [anon_sym_log3] = ACTIONS(1249),
    [anon_sym_log4] = ACTIONS(1249),
    [anon_sym_chainid] = ACTIONS(1249),
    [anon_sym_origin] = ACTIONS(1249),
    [anon_sym_gasprice] = ACTIONS(1249),
    [anon_sym_blockhash] = ACTIONS(1249),
    [anon_sym_blobhash] = ACTIONS(1249),
    [anon_sym_basefee] = ACTIONS(1249),
    [anon_sym_blobfee] = ACTIONS(1249),
    [anon_sym_coinbase] = ACTIONS(1249),
    [anon_sym_timestamp] = ACTIONS(1249),
    [anon_sym_number] = ACTIONS(1249),
    [anon_sym_difficulty] = ACTIONS(1249),
    [anon_sym_gaslimit] = ACTIONS(1249),
    [anon_sym_prevrandao] = ACTIONS(1249),
    [anon_sym_blobbasefee] = ACTIONS(1249),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(332)] = {
    [sym_identifier] = ACTIONS(1253),
    [anon_sym_LBRACE] = ACTIONS(1255),
    [anon_sym_RBRACE] = ACTIONS(1255),
    [anon_sym_for] = ACTIONS(1253),
    [sym_yul_leave] = ACTIONS(1253),
    [anon_sym_break] = ACTIONS(1253),
    [anon_sym_continue] = ACTIONS(1253),
    [sym_yul_decimal_number] = ACTIONS(1253),
    [sym_yul_hex_number] = ACTIONS(1255),
    [anon_sym_true] = ACTIONS(1253),
    [anon_sym_false] = ACTIONS(1253),
    [anon_sym_hex] = ACTIONS(1253),
    [anon_sym_DQUOTE] = ACTIONS(1255),
    [anon_sym_SQUOTE] = ACTIONS(1255),
    [anon_sym_let] = ACTIONS(1253),
    [anon_sym_if] = ACTIONS(1253),
    [anon_sym_switch] = ACTIONS(1253),
    [anon_sym_function] = ACTIONS(1253),
    [anon_sym_stop] = ACTIONS(1253),
    [anon_sym_add] = ACTIONS(1253),
    [anon_sym_sub] = ACTIONS(1253),
    [anon_sym_mul] = ACTIONS(1253),
    [anon_sym_div] = ACTIONS(1253),
    [anon_sym_sdiv] = ACTIONS(1253),
    [anon_sym_mod] = ACTIONS(1253),
    [anon_sym_smod] = ACTIONS(1253),
    [anon_sym_exp] = ACTIONS(1253),
    [anon_sym_not] = ACTIONS(1253),
    [anon_sym_lt] = ACTIONS(1253),
    [anon_sym_gt] = ACTIONS(1253),
    [anon_sym_slt] = ACTIONS(1253),
    [anon_sym_sgt] = ACTIONS(1253),
    [anon_sym_eq] = ACTIONS(1253),
    [anon_sym_iszero] = ACTIONS(1253),
    [anon_sym_and] = ACTIONS(1253),
    [anon_sym_or] = ACTIONS(1253),
    [anon_sym_xor] = ACTIONS(1253),
    [anon_sym_byte] = ACTIONS(1253),
    [anon_sym_shl] = ACTIONS(1253),
    [anon_sym_shr] = ACTIONS(1253),
    [anon_sym_sar] = ACTIONS(1253),
    [anon_sym_addmod] = ACTIONS(1253),
    [anon_sym_mulmod] = ACTIONS(1253),
    [anon_sym_signextend] = ACTIONS(1253),
    [anon_sym_keccak256] = ACTIONS(1253),
    [anon_sym_pop] = ACTIONS(1253),
    [anon_sym_mload] = ACTIONS(1253),
    [anon_sym_mcopy] = ACTIONS(1253),
    [anon_sym_tload] = ACTIONS(1253),
    [anon_sym_tstore] = ACTIONS(1253),
    [anon_sym_mstore] = ACTIONS(1253),
    [anon_sym_mstore8] = ACTIONS(1253),
    [anon_sym_sload] = ACTIONS(1253),
    [anon_sym_sstore] = ACTIONS(1253),
    [anon_sym_msize] = ACTIONS(1253),
    [anon_sym_gas] = ACTIONS(1253),
    [anon_sym_address] = ACTIONS(1253),
    [anon_sym_balance] = ACTIONS(1253),
    [anon_sym_selfbalance] = ACTIONS(1253),
    [anon_sym_caller] = ACTIONS(1253),
    [anon_sym_callvalue] = ACTIONS(1253),
    [anon_sym_calldataload] = ACTIONS(1253),
    [anon_sym_calldatasize] = ACTIONS(1253),
    [anon_sym_calldatacopy] = ACTIONS(1253),
    [anon_sym_extcodesize] = ACTIONS(1253),
    [anon_sym_extcodecopy] = ACTIONS(1253),
    [anon_sym_returndatasize] = ACTIONS(1253),
    [anon_sym_returndatacopy] = ACTIONS(1253),
    [anon_sym_extcodehash] = ACTIONS(1253),
    [anon_sym_create] = ACTIONS(1253),
    [anon_sym_create2] = ACTIONS(1253),
    [anon_sym_call] = ACTIONS(1253),
    [anon_sym_callcode] = ACTIONS(1253),
    [anon_sym_delegatecall] = ACTIONS(1253),
    [anon_sym_staticcall] = ACTIONS(1253),
    [anon_sym_return] = ACTIONS(1253),
    [anon_sym_revert] = ACTIONS(1253),
    [anon_sym_selfdestruct] = ACTIONS(1253),
    [anon_sym_invalid] = ACTIONS(1253),
    [anon_sym_log0] = ACTIONS(1253),
    [anon_sym_log1] = ACTIONS(1253),
    [anon_sym_log2] = ACTIONS(1253),
    [anon_sym_log3] = ACTIONS(1253),
    [anon_sym_log4] = ACTIONS(1253),
    [anon_sym_chainid] = ACTIONS(1253),
    [anon_sym_origin] = ACTIONS(1253),
    [anon_sym_gasprice] = ACTIONS(1253),
    [anon_sym_blockhash] = ACTIONS(1253),
    [anon_sym_blobhash] = ACTIONS(1253),
    [anon_sym_basefee] = ACTIONS(1253),
    [anon_sym_blobfee] = ACTIONS(1253),
    [anon_sym_coinbase] = ACTIONS(1253),
    [anon_sym_timestamp] = ACTIONS(1253),
    [anon_sym_number] = ACTIONS(1253),
    [anon_sym_difficulty] = ACTIONS(1253),
    [anon_sym_gaslimit] = ACTIONS(1253),
    [anon_sym_prevrandao] = ACTIONS(1253),
    [anon_sym_blobbasefee] = ACTIONS(1253),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(333)] = {
    [sym_identifier] = ACTIONS(1257),
    [anon_sym_LBRACE] = ACTIONS(1259),
    [anon_sym_RBRACE] = ACTIONS(1259),
    [anon_sym_for] = ACTIONS(1257),
    [sym_yul_leave] = ACTIONS(1257),
    [anon_sym_break] = ACTIONS(1257),
    [anon_sym_continue] = ACTIONS(1257),
    [sym_yul_decimal_number] = ACTIONS(1257),
    [sym_yul_hex_number] = ACTIONS(1259),
    [anon_sym_true] = ACTIONS(1257),
    [anon_sym_false] = ACTIONS(1257),
    [anon_sym_hex] = ACTIONS(1257),
    [anon_sym_DQUOTE] = ACTIONS(1259),
    [anon_sym_SQUOTE] = ACTIONS(1259),
    [anon_sym_let] = ACTIONS(1257),
    [anon_sym_if] = ACTIONS(1257),
    [anon_sym_switch] = ACTIONS(1257),
    [anon_sym_function] = ACTIONS(1257),
    [anon_sym_stop] = ACTIONS(1257),
    [anon_sym_add] = ACTIONS(1257),
    [anon_sym_sub] = ACTIONS(1257),
    [anon_sym_mul] = ACTIONS(1257),
    [anon_sym_div] = ACTIONS(1257),
    [anon_sym_sdiv] = ACTIONS(1257),
    [anon_sym_mod] = ACTIONS(1257),
    [anon_sym_smod] = ACTIONS(1257),
    [anon_sym_exp] = ACTIONS(1257),
    [anon_sym_not] = ACTIONS(1257),
    [anon_sym_lt] = ACTIONS(1257),
    [anon_sym_gt] = ACTIONS(1257),
    [anon_sym_slt] = ACTIONS(1257),
    [anon_sym_sgt] = ACTIONS(1257),
    [anon_sym_eq] = ACTIONS(1257),
    [anon_sym_iszero] = ACTIONS(1257),
    [anon_sym_and] = ACTIONS(1257),
    [anon_sym_or] = ACTIONS(1257),
    [anon_sym_xor] = ACTIONS(1257),
    [anon_sym_byte] = ACTIONS(1257),
    [anon_sym_shl] = ACTIONS(1257),
    [anon_sym_shr] = ACTIONS(1257),
    [anon_sym_sar] = ACTIONS(1257),
    [anon_sym_addmod] = ACTIONS(1257),
    [anon_sym_mulmod] = ACTIONS(1257),
    [anon_sym_signextend] = ACTIONS(1257),
    [anon_sym_keccak256] = ACTIONS(1257),
    [anon_sym_pop] = ACTIONS(1257),
    [anon_sym_mload] = ACTIONS(1257),
    [anon_sym_mcopy] = ACTIONS(1257),
    [anon_sym_tload] = ACTIONS(1257),
    [anon_sym_tstore] = ACTIONS(1257),
    [anon_sym_mstore] = ACTIONS(1257),
    [anon_sym_mstore8] = ACTIONS(1257),
    [anon_sym_sload] = ACTIONS(1257),
    [anon_sym_sstore] = ACTIONS(1257),
    [anon_sym_msize] = ACTIONS(1257),
    [anon_sym_gas] = ACTIONS(1257),
    [anon_sym_address] = ACTIONS(1257),
    [anon_sym_balance] = ACTIONS(1257),
    [anon_sym_selfbalance] = ACTIONS(1257),
    [anon_sym_caller] = ACTIONS(1257),
    [anon_sym_callvalue] = ACTIONS(1257),
    [anon_sym_calldataload] = ACTIONS(1257),
    [anon_sym_calldatasize] = ACTIONS(1257),
    [anon_sym_calldatacopy] = ACTIONS(1257),
    [anon_sym_extcodesize] = ACTIONS(1257),
    [anon_sym_extcodecopy] = ACTIONS(1257),
    [anon_sym_returndatasize] = ACTIONS(1257),
    [anon_sym_returndatacopy] = ACTIONS(1257),
    [anon_sym_extcodehash] = ACTIONS(1257),
    [anon_sym_create] = ACTIONS(1257),
    [anon_sym_create2] = ACTIONS(1257),
    [anon_sym_call] = ACTIONS(1257),
    [anon_sym_callcode] = ACTIONS(1257),
    [anon_sym_delegatecall] = ACTIONS(1257),
    [anon_sym_staticcall] = ACTIONS(1257),
    [anon_sym_return] = ACTIONS(1257),
    [anon_sym_revert] = ACTIONS(1257),
    [anon_sym_selfdestruct] = ACTIONS(1257),
    [anon_sym_invalid] = ACTIONS(1257),
    [anon_sym_log0] = ACTIONS(1257),
    [anon_sym_log1] = ACTIONS(1257),
    [anon_sym_log2] = ACTIONS(1257),
    [anon_sym_log3] = ACTIONS(1257),
    [anon_sym_log4] = ACTIONS(1257),
    [anon_sym_chainid] = ACTIONS(1257),
    [anon_sym_origin] = ACTIONS(1257),
    [anon_sym_gasprice] = ACTIONS(1257),
    [anon_sym_blockhash] = ACTIONS(1257),
    [anon_sym_blobhash] = ACTIONS(1257),
    [anon_sym_basefee] = ACTIONS(1257),
    [anon_sym_blobfee] = ACTIONS(1257),
    [anon_sym_coinbase] = ACTIONS(1257),
    [anon_sym_timestamp] = ACTIONS(1257),
    [anon_sym_number] = ACTIONS(1257),
    [anon_sym_difficulty] = ACTIONS(1257),
    [anon_sym_gaslimit] = ACTIONS(1257),
    [anon_sym_prevrandao] = ACTIONS(1257),
    [anon_sym_blobbasefee] = ACTIONS(1257),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(334)] = {
    [sym_identifier] = ACTIONS(1261),
    [anon_sym_LBRACE] = ACTIONS(1263),
    [anon_sym_RBRACE] = ACTIONS(1263),
    [anon_sym_for] = ACTIONS(1261),
    [sym_yul_leave] = ACTIONS(1261),
    [anon_sym_break] = ACTIONS(1261),
    [anon_sym_continue] = ACTIONS(1261),
    [sym_yul_decimal_number] = ACTIONS(1261),
    [sym_yul_hex_number] = ACTIONS(1263),
    [anon_sym_true] = ACTIONS(1261),
    [anon_sym_false] = ACTIONS(1261),
    [anon_sym_hex] = ACTIONS(1261),
    [anon_sym_DQUOTE] = ACTIONS(1263),
    [anon_sym_SQUOTE] = ACTIONS(1263),
    [anon_sym_let] = ACTIONS(1261),
    [anon_sym_if] = ACTIONS(1261),
    [anon_sym_switch] = ACTIONS(1261),
    [anon_sym_function] = ACTIONS(1261),
    [anon_sym_stop] = ACTIONS(1261),
    [anon_sym_add] = ACTIONS(1261),
    [anon_sym_sub] = ACTIONS(1261),
    [anon_sym_mul] = ACTIONS(1261),
    [anon_sym_div] = ACTIONS(1261),
    [anon_sym_sdiv] = ACTIONS(1261),
    [anon_sym_mod] = ACTIONS(1261),
    [anon_sym_smod] = ACTIONS(1261),
    [anon_sym_exp] = ACTIONS(1261),
    [anon_sym_not] = ACTIONS(1261),
    [anon_sym_lt] = ACTIONS(1261),
    [anon_sym_gt] = ACTIONS(1261),
    [anon_sym_slt] = ACTIONS(1261),
    [anon_sym_sgt] = ACTIONS(1261),
    [anon_sym_eq] = ACTIONS(1261),
    [anon_sym_iszero] = ACTIONS(1261),
    [anon_sym_and] = ACTIONS(1261),
    [anon_sym_or] = ACTIONS(1261),
    [anon_sym_xor] = ACTIONS(1261),
    [anon_sym_byte] = ACTIONS(1261),
    [anon_sym_shl] = ACTIONS(1261),
    [anon_sym_shr] = ACTIONS(1261),
    [anon_sym_sar] = ACTIONS(1261),
    [anon_sym_addmod] = ACTIONS(1261),
    [anon_sym_mulmod] = ACTIONS(1261),
    [anon_sym_signextend] = ACTIONS(1261),
    [anon_sym_keccak256] = ACTIONS(1261),
    [anon_sym_pop] = ACTIONS(1261),
    [anon_sym_mload] = ACTIONS(1261),
    [anon_sym_mcopy] = ACTIONS(1261),
    [anon_sym_tload] = ACTIONS(1261),
    [anon_sym_tstore] = ACTIONS(1261),
    [anon_sym_mstore] = ACTIONS(1261),
    [anon_sym_mstore8] = ACTIONS(1261),
    [anon_sym_sload] = ACTIONS(1261),
    [anon_sym_sstore] = ACTIONS(1261),
    [anon_sym_msize] = ACTIONS(1261),
    [anon_sym_gas] = ACTIONS(1261),
    [anon_sym_address] = ACTIONS(1261),
    [anon_sym_balance] = ACTIONS(1261),
    [anon_sym_selfbalance] = ACTIONS(1261),
    [anon_sym_caller] = ACTIONS(1261),
    [anon_sym_callvalue] = ACTIONS(1261),
    [anon_sym_calldataload] = ACTIONS(1261),
    [anon_sym_calldatasize] = ACTIONS(1261),
    [anon_sym_calldatacopy] = ACTIONS(1261),
    [anon_sym_extcodesize] = ACTIONS(1261),
    [anon_sym_extcodecopy] = ACTIONS(1261),
    [anon_sym_returndatasize] = ACTIONS(1261),
    [anon_sym_returndatacopy] = ACTIONS(1261),
    [anon_sym_extcodehash] = ACTIONS(1261),
    [anon_sym_create] = ACTIONS(1261),
    [anon_sym_create2] = ACTIONS(1261),
    [anon_sym_call] = ACTIONS(1261),
    [anon_sym_callcode] = ACTIONS(1261),
    [anon_sym_delegatecall] = ACTIONS(1261),
    [anon_sym_staticcall] = ACTIONS(1261),
    [anon_sym_return] = ACTIONS(1261),
    [anon_sym_revert] = ACTIONS(1261),
    [anon_sym_selfdestruct] = ACTIONS(1261),
    [anon_sym_invalid] = ACTIONS(1261),
    [anon_sym_log0] = ACTIONS(1261),
    [anon_sym_log1] = ACTIONS(1261),
    [anon_sym_log2] = ACTIONS(1261),
    [anon_sym_log3] = ACTIONS(1261),
    [anon_sym_log4] = ACTIONS(1261),
    [anon_sym_chainid] = ACTIONS(1261),
    [anon_sym_origin] = ACTIONS(1261),
    [anon_sym_gasprice] = ACTIONS(1261),
    [anon_sym_blockhash] = ACTIONS(1261),
    [anon_sym_blobhash] = ACTIONS(1261),
    [anon_sym_basefee] = ACTIONS(1261),
    [anon_sym_blobfee] = ACTIONS(1261),
    [anon_sym_coinbase] = ACTIONS(1261),
    [anon_sym_timestamp] = ACTIONS(1261),
    [anon_sym_number] = ACTIONS(1261),
    [anon_sym_difficulty] = ACTIONS(1261),
    [anon_sym_gaslimit] = ACTIONS(1261),
    [anon_sym_prevrandao] = ACTIONS(1261),
    [anon_sym_blobbasefee] = ACTIONS(1261),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(335)] = {
    [sym_identifier] = ACTIONS(1265),
    [anon_sym_LBRACE] = ACTIONS(1267),
    [anon_sym_RBRACE] = ACTIONS(1267),
    [anon_sym_for] = ACTIONS(1265),
    [sym_yul_leave] = ACTIONS(1265),
    [anon_sym_break] = ACTIONS(1265),
    [anon_sym_continue] = ACTIONS(1265),
    [sym_yul_decimal_number] = ACTIONS(1265),
    [sym_yul_hex_number] = ACTIONS(1267),
    [anon_sym_true] = ACTIONS(1265),
    [anon_sym_false] = ACTIONS(1265),
    [anon_sym_hex] = ACTIONS(1265),
    [anon_sym_DQUOTE] = ACTIONS(1267),
    [anon_sym_SQUOTE] = ACTIONS(1267),
    [anon_sym_let] = ACTIONS(1265),
    [anon_sym_if] = ACTIONS(1265),
    [anon_sym_switch] = ACTIONS(1265),
    [anon_sym_function] = ACTIONS(1265),
    [anon_sym_stop] = ACTIONS(1265),
    [anon_sym_add] = ACTIONS(1265),
    [anon_sym_sub] = ACTIONS(1265),
    [anon_sym_mul] = ACTIONS(1265),
    [anon_sym_div] = ACTIONS(1265),
    [anon_sym_sdiv] = ACTIONS(1265),
    [anon_sym_mod] = ACTIONS(1265),
    [anon_sym_smod] = ACTIONS(1265),
    [anon_sym_exp] = ACTIONS(1265),
    [anon_sym_not] = ACTIONS(1265),
    [anon_sym_lt] = ACTIONS(1265),
    [anon_sym_gt] = ACTIONS(1265),
    [anon_sym_slt] = ACTIONS(1265),
    [anon_sym_sgt] = ACTIONS(1265),
    [anon_sym_eq] = ACTIONS(1265),
    [anon_sym_iszero] = ACTIONS(1265),
    [anon_sym_and] = ACTIONS(1265),
    [anon_sym_or] = ACTIONS(1265),
    [anon_sym_xor] = ACTIONS(1265),
    [anon_sym_byte] = ACTIONS(1265),
    [anon_sym_shl] = ACTIONS(1265),
    [anon_sym_shr] = ACTIONS(1265),
    [anon_sym_sar] = ACTIONS(1265),
    [anon_sym_addmod] = ACTIONS(1265),
    [anon_sym_mulmod] = ACTIONS(1265),
    [anon_sym_signextend] = ACTIONS(1265),
    [anon_sym_keccak256] = ACTIONS(1265),
    [anon_sym_pop] = ACTIONS(1265),
    [anon_sym_mload] = ACTIONS(1265),
    [anon_sym_mcopy] = ACTIONS(1265),
    [anon_sym_tload] = ACTIONS(1265),
    [anon_sym_tstore] = ACTIONS(1265),
    [anon_sym_mstore] = ACTIONS(1265),
    [anon_sym_mstore8] = ACTIONS(1265),
    [anon_sym_sload] = ACTIONS(1265),
    [anon_sym_sstore] = ACTIONS(1265),
    [anon_sym_msize] = ACTIONS(1265),
    [anon_sym_gas] = ACTIONS(1265),
    [anon_sym_address] = ACTIONS(1265),
    [anon_sym_balance] = ACTIONS(1265),
    [anon_sym_selfbalance] = ACTIONS(1265),
    [anon_sym_caller] = ACTIONS(1265),
    [anon_sym_callvalue] = ACTIONS(1265),
    [anon_sym_calldataload] = ACTIONS(1265),
    [anon_sym_calldatasize] = ACTIONS(1265),
    [anon_sym_calldatacopy] = ACTIONS(1265),
    [anon_sym_extcodesize] = ACTIONS(1265),
    [anon_sym_extcodecopy] = ACTIONS(1265),
    [anon_sym_returndatasize] = ACTIONS(1265),
    [anon_sym_returndatacopy] = ACTIONS(1265),
    [anon_sym_extcodehash] = ACTIONS(1265),
    [anon_sym_create] = ACTIONS(1265),
    [anon_sym_create2] = ACTIONS(1265),
    [anon_sym_call] = ACTIONS(1265),
    [anon_sym_callcode] = ACTIONS(1265),
    [anon_sym_delegatecall] = ACTIONS(1265),
    [anon_sym_staticcall] = ACTIONS(1265),
    [anon_sym_return] = ACTIONS(1265),
    [anon_sym_revert] = ACTIONS(1265),
    [anon_sym_selfdestruct] = ACTIONS(1265),
    [anon_sym_invalid] = ACTIONS(1265),
    [anon_sym_log0] = ACTIONS(1265),
    [anon_sym_log1] = ACTIONS(1265),
    [anon_sym_log2] = ACTIONS(1265),
    [anon_sym_log3] = ACTIONS(1265),
    [anon_sym_log4] = ACTIONS(1265),
    [anon_sym_chainid] = ACTIONS(1265),
    [anon_sym_origin] = ACTIONS(1265),
    [anon_sym_gasprice] = ACTIONS(1265),
    [anon_sym_blockhash] = ACTIONS(1265),
    [anon_sym_blobhash] = ACTIONS(1265),
    [anon_sym_basefee] = ACTIONS(1265),
    [anon_sym_blobfee] = ACTIONS(1265),
    [anon_sym_coinbase] = ACTIONS(1265),
    [anon_sym_timestamp] = ACTIONS(1265),
    [anon_sym_number] = ACTIONS(1265),
    [anon_sym_difficulty] = ACTIONS(1265),
    [anon_sym_gaslimit] = ACTIONS(1265),
    [anon_sym_prevrandao] = ACTIONS(1265),
    [anon_sym_blobbasefee] = ACTIONS(1265),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(336)] = {
    [sym_identifier] = ACTIONS(1269),
    [anon_sym_LBRACE] = ACTIONS(1271),
    [anon_sym_RBRACE] = ACTIONS(1271),
    [anon_sym_for] = ACTIONS(1269),
    [sym_yul_leave] = ACTIONS(1269),
    [anon_sym_break] = ACTIONS(1269),
    [anon_sym_continue] = ACTIONS(1269),
    [sym_yul_decimal_number] = ACTIONS(1269),
    [sym_yul_hex_number] = ACTIONS(1271),
    [anon_sym_true] = ACTIONS(1269),
    [anon_sym_false] = ACTIONS(1269),
    [anon_sym_hex] = ACTIONS(1269),
    [anon_sym_DQUOTE] = ACTIONS(1271),
    [anon_sym_SQUOTE] = ACTIONS(1271),
    [anon_sym_let] = ACTIONS(1269),
    [anon_sym_if] = ACTIONS(1269),
    [anon_sym_switch] = ACTIONS(1269),
    [anon_sym_function] = ACTIONS(1269),
    [anon_sym_stop] = ACTIONS(1269),
    [anon_sym_add] = ACTIONS(1269),
    [anon_sym_sub] = ACTIONS(1269),
    [anon_sym_mul] = ACTIONS(1269),
    [anon_sym_div] = ACTIONS(1269),
    [anon_sym_sdiv] = ACTIONS(1269),
    [anon_sym_mod] = ACTIONS(1269),
    [anon_sym_smod] = ACTIONS(1269),
    [anon_sym_exp] = ACTIONS(1269),
    [anon_sym_not] = ACTIONS(1269),
    [anon_sym_lt] = ACTIONS(1269),
    [anon_sym_gt] = ACTIONS(1269),
    [anon_sym_slt] = ACTIONS(1269),
    [anon_sym_sgt] = ACTIONS(1269),
    [anon_sym_eq] = ACTIONS(1269),
    [anon_sym_iszero] = ACTIONS(1269),
    [anon_sym_and] = ACTIONS(1269),
    [anon_sym_or] = ACTIONS(1269),
    [anon_sym_xor] = ACTIONS(1269),
    [anon_sym_byte] = ACTIONS(1269),
    [anon_sym_shl] = ACTIONS(1269),
    [anon_sym_shr] = ACTIONS(1269),
    [anon_sym_sar] = ACTIONS(1269),
    [anon_sym_addmod] = ACTIONS(1269),
    [anon_sym_mulmod] = ACTIONS(1269),
    [anon_sym_signextend] = ACTIONS(1269),
    [anon_sym_keccak256] = ACTIONS(1269),
    [anon_sym_pop] = ACTIONS(1269),
    [anon_sym_mload] = ACTIONS(1269),
    [anon_sym_mcopy] = ACTIONS(1269),
    [anon_sym_tload] = ACTIONS(1269),
    [anon_sym_tstore] = ACTIONS(1269),
    [anon_sym_mstore] = ACTIONS(1269),
    [anon_sym_mstore8] = ACTIONS(1269),
    [anon_sym_sload] = ACTIONS(1269),
    [anon_sym_sstore] = ACTIONS(1269),
    [anon_sym_msize] = ACTIONS(1269),
    [anon_sym_gas] = ACTIONS(1269),
    [anon_sym_address] = ACTIONS(1269),
    [anon_sym_balance] = ACTIONS(1269),
    [anon_sym_selfbalance] = ACTIONS(1269),
    [anon_sym_caller] = ACTIONS(1269),
    [anon_sym_callvalue] = ACTIONS(1269),
    [anon_sym_calldataload] = ACTIONS(1269),
    [anon_sym_calldatasize] = ACTIONS(1269),
    [anon_sym_calldatacopy] = ACTIONS(1269),
    [anon_sym_extcodesize] = ACTIONS(1269),
    [anon_sym_extcodecopy] = ACTIONS(1269),
    [anon_sym_returndatasize] = ACTIONS(1269),
    [anon_sym_returndatacopy] = ACTIONS(1269),
    [anon_sym_extcodehash] = ACTIONS(1269),
    [anon_sym_create] = ACTIONS(1269),
    [anon_sym_create2] = ACTIONS(1269),
    [anon_sym_call] = ACTIONS(1269),
    [anon_sym_callcode] = ACTIONS(1269),
    [anon_sym_delegatecall] = ACTIONS(1269),
    [anon_sym_staticcall] = ACTIONS(1269),
    [anon_sym_return] = ACTIONS(1269),
    [anon_sym_revert] = ACTIONS(1269),
    [anon_sym_selfdestruct] = ACTIONS(1269),
    [anon_sym_invalid] = ACTIONS(1269),
    [anon_sym_log0] = ACTIONS(1269),
    [anon_sym_log1] = ACTIONS(1269),
    [anon_sym_log2] = ACTIONS(1269),
    [anon_sym_log3] = ACTIONS(1269),
    [anon_sym_log4] = ACTIONS(1269),
    [anon_sym_chainid] = ACTIONS(1269),
    [anon_sym_origin] = ACTIONS(1269),
    [anon_sym_gasprice] = ACTIONS(1269),
    [anon_sym_blockhash] = ACTIONS(1269),
    [anon_sym_blobhash] = ACTIONS(1269),
    [anon_sym_basefee] = ACTIONS(1269),
    [anon_sym_blobfee] = ACTIONS(1269),
    [anon_sym_coinbase] = ACTIONS(1269),
    [anon_sym_timestamp] = ACTIONS(1269),
    [anon_sym_number] = ACTIONS(1269),
    [anon_sym_difficulty] = ACTIONS(1269),
    [anon_sym_gaslimit] = ACTIONS(1269),
    [anon_sym_prevrandao] = ACTIONS(1269),
    [anon_sym_blobbasefee] = ACTIONS(1269),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(337)] = {
    [sym_yul_identifier] = STATE(275),
    [sym__yul_expression] = STATE(781),
    [sym_yul_path] = STATE(781),
    [sym__yul_literal] = STATE(781),
    [sym_yul_string_literal] = STATE(781),
    [sym_yul_boolean] = STATE(781),
    [sym_yul_hex_string_literal] = STATE(781),
    [sym_yul_function_call] = STATE(781),
    [sym_yul_evm_builtin] = STATE(284),
    [sym_string] = STATE(290),
    [sym_identifier] = ACTIONS(1167),
    [sym_yul_decimal_number] = ACTIONS(1183),
    [sym_yul_hex_number] = ACTIONS(1185),
    [anon_sym_true] = ACTIONS(908),
    [anon_sym_false] = ACTIONS(908),
    [anon_sym_hex] = ACTIONS(910),
    [anon_sym_DQUOTE] = ACTIONS(69),
    [anon_sym_SQUOTE] = ACTIONS(71),
    [anon_sym_stop] = ACTIONS(924),
    [anon_sym_add] = ACTIONS(924),
    [anon_sym_sub] = ACTIONS(924),
    [anon_sym_mul] = ACTIONS(924),
    [anon_sym_div] = ACTIONS(924),
    [anon_sym_sdiv] = ACTIONS(924),
    [anon_sym_mod] = ACTIONS(924),
    [anon_sym_smod] = ACTIONS(924),
    [anon_sym_exp] = ACTIONS(924),
    [anon_sym_not] = ACTIONS(924),
    [anon_sym_lt] = ACTIONS(924),
    [anon_sym_gt] = ACTIONS(924),
    [anon_sym_slt] = ACTIONS(924),
    [anon_sym_sgt] = ACTIONS(924),
    [anon_sym_eq] = ACTIONS(924),
    [anon_sym_iszero] = ACTIONS(924),
    [anon_sym_and] = ACTIONS(924),
    [anon_sym_or] = ACTIONS(924),
    [anon_sym_xor] = ACTIONS(924),
    [anon_sym_byte] = ACTIONS(924),
    [anon_sym_shl] = ACTIONS(924),
    [anon_sym_shr] = ACTIONS(924),
    [anon_sym_sar] = ACTIONS(924),
    [anon_sym_addmod] = ACTIONS(924),
    [anon_sym_mulmod] = ACTIONS(924),
    [anon_sym_signextend] = ACTIONS(924),
    [anon_sym_keccak256] = ACTIONS(924),
    [anon_sym_pop] = ACTIONS(924),
    [anon_sym_mload] = ACTIONS(924),
    [anon_sym_mcopy] = ACTIONS(924),
    [anon_sym_tload] = ACTIONS(924),
    [anon_sym_tstore] = ACTIONS(924),
    [anon_sym_mstore] = ACTIONS(924),
    [anon_sym_mstore8] = ACTIONS(924),
    [anon_sym_sload] = ACTIONS(924),
    [anon_sym_sstore] = ACTIONS(924),
    [anon_sym_msize] = ACTIONS(924),
    [anon_sym_gas] = ACTIONS(924),
    [anon_sym_address] = ACTIONS(924),
    [anon_sym_balance] = ACTIONS(924),
    [anon_sym_selfbalance] = ACTIONS(924),
    [anon_sym_caller] = ACTIONS(924),
    [anon_sym_callvalue] = ACTIONS(924),
    [anon_sym_calldataload] = ACTIONS(924),
    [anon_sym_calldatasize] = ACTIONS(924),
    [anon_sym_calldatacopy] = ACTIONS(924),
    [anon_sym_extcodesize] = ACTIONS(924),
    [anon_sym_extcodecopy] = ACTIONS(924),
    [anon_sym_returndatasize] = ACTIONS(924),
    [anon_sym_returndatacopy] = ACTIONS(924),
    [anon_sym_extcodehash] = ACTIONS(924),
    [anon_sym_create] = ACTIONS(924),
    [anon_sym_create2] = ACTIONS(924),
    [anon_sym_call] = ACTIONS(924),
    [anon_sym_callcode] = ACTIONS(924),
    [anon_sym_delegatecall] = ACTIONS(924),
    [anon_sym_staticcall] = ACTIONS(924),
    [anon_sym_return] = ACTIONS(924),
    [anon_sym_revert] = ACTIONS(924),
    [anon_sym_selfdestruct] = ACTIONS(924),
    [anon_sym_invalid] = ACTIONS(924),
    [anon_sym_log0] = ACTIONS(924),
    [anon_sym_log1] = ACTIONS(924),
    [anon_sym_log2] = ACTIONS(924),
    [anon_sym_log3] = ACTIONS(924),
    [anon_sym_log4] = ACTIONS(924),
    [anon_sym_chainid] = ACTIONS(924),
    [anon_sym_origin] = ACTIONS(924),
    [anon_sym_gasprice] = ACTIONS(924),
    [anon_sym_blockhash] = ACTIONS(924),
    [anon_sym_blobhash] = ACTIONS(924),
    [anon_sym_basefee] = ACTIONS(924),
    [anon_sym_blobfee] = ACTIONS(924),
    [anon_sym_coinbase] = ACTIONS(924),
    [anon_sym_timestamp] = ACTIONS(924),
    [anon_sym_number] = ACTIONS(924),
    [anon_sym_difficulty] = ACTIONS(924),
    [anon_sym_gaslimit] = ACTIONS(924),
    [anon_sym_prevrandao] = ACTIONS(924),
    [anon_sym_blobbasefee] = ACTIONS(924),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(338)] = {
    [sym_identifier] = ACTIONS(1273),
    [anon_sym_LBRACE] = ACTIONS(1275),
    [anon_sym_RBRACE] = ACTIONS(1275),
    [anon_sym_for] = ACTIONS(1273),
    [sym_yul_leave] = ACTIONS(1273),
    [anon_sym_break] = ACTIONS(1273),
    [anon_sym_continue] = ACTIONS(1273),
    [sym_yul_decimal_number] = ACTIONS(1273),
    [sym_yul_hex_number] = ACTIONS(1275),
    [anon_sym_true] = ACTIONS(1273),
    [anon_sym_false] = ACTIONS(1273),
    [anon_sym_hex] = ACTIONS(1273),
    [anon_sym_DQUOTE] = ACTIONS(1275),
    [anon_sym_SQUOTE] = ACTIONS(1275),
    [anon_sym_let] = ACTIONS(1273),
    [anon_sym_if] = ACTIONS(1273),
    [anon_sym_switch] = ACTIONS(1273),
    [anon_sym_function] = ACTIONS(1273),
    [anon_sym_stop] = ACTIONS(1273),
    [anon_sym_add] = ACTIONS(1273),
    [anon_sym_sub] = ACTIONS(1273),
    [anon_sym_mul] = ACTIONS(1273),
    [anon_sym_div] = ACTIONS(1273),
    [anon_sym_sdiv] = ACTIONS(1273),
    [anon_sym_mod] = ACTIONS(1273),
    [anon_sym_smod] = ACTIONS(1273),
    [anon_sym_exp] = ACTIONS(1273),
    [anon_sym_not] = ACTIONS(1273),
    [anon_sym_lt] = ACTIONS(1273),
    [anon_sym_gt] = ACTIONS(1273),
    [anon_sym_slt] = ACTIONS(1273),
    [anon_sym_sgt] = ACTIONS(1273),
    [anon_sym_eq] = ACTIONS(1273),
    [anon_sym_iszero] = ACTIONS(1273),
    [anon_sym_and] = ACTIONS(1273),
    [anon_sym_or] = ACTIONS(1273),
    [anon_sym_xor] = ACTIONS(1273),
    [anon_sym_byte] = ACTIONS(1273),
    [anon_sym_shl] = ACTIONS(1273),
    [anon_sym_shr] = ACTIONS(1273),
    [anon_sym_sar] = ACTIONS(1273),
    [anon_sym_addmod] = ACTIONS(1273),
    [anon_sym_mulmod] = ACTIONS(1273),
    [anon_sym_signextend] = ACTIONS(1273),
    [anon_sym_keccak256] = ACTIONS(1273),
    [anon_sym_pop] = ACTIONS(1273),
    [anon_sym_mload] = ACTIONS(1273),
    [anon_sym_mcopy] = ACTIONS(1273),
    [anon_sym_tload] = ACTIONS(1273),
    [anon_sym_tstore] = ACTIONS(1273),
    [anon_sym_mstore] = ACTIONS(1273),
    [anon_sym_mstore8] = ACTIONS(1273),
    [anon_sym_sload] = ACTIONS(1273),
    [anon_sym_sstore] = ACTIONS(1273),
    [anon_sym_msize] = ACTIONS(1273),
    [anon_sym_gas] = ACTIONS(1273),
    [anon_sym_address] = ACTIONS(1273),
    [anon_sym_balance] = ACTIONS(1273),
    [anon_sym_selfbalance] = ACTIONS(1273),
    [anon_sym_caller] = ACTIONS(1273),
    [anon_sym_callvalue] = ACTIONS(1273),
    [anon_sym_calldataload] = ACTIONS(1273),
    [anon_sym_calldatasize] = ACTIONS(1273),
    [anon_sym_calldatacopy] = ACTIONS(1273),
    [anon_sym_extcodesize] = ACTIONS(1273),
    [anon_sym_extcodecopy] = ACTIONS(1273),
    [anon_sym_returndatasize] = ACTIONS(1273),
    [anon_sym_returndatacopy] = ACTIONS(1273),
    [anon_sym_extcodehash] = ACTIONS(1273),
    [anon_sym_create] = ACTIONS(1273),
    [anon_sym_create2] = ACTIONS(1273),
    [anon_sym_call] = ACTIONS(1273),
    [anon_sym_callcode] = ACTIONS(1273),
    [anon_sym_delegatecall] = ACTIONS(1273),
    [anon_sym_staticcall] = ACTIONS(1273),
    [anon_sym_return] = ACTIONS(1273),
    [anon_sym_revert] = ACTIONS(1273),
    [anon_sym_selfdestruct] = ACTIONS(1273),
    [anon_sym_invalid] = ACTIONS(1273),
    [anon_sym_log0] = ACTIONS(1273),
    [anon_sym_log1] = ACTIONS(1273),
    [anon_sym_log2] = ACTIONS(1273),
    [anon_sym_log3] = ACTIONS(1273),
    [anon_sym_log4] = ACTIONS(1273),
    [anon_sym_chainid] = ACTIONS(1273),
    [anon_sym_origin] = ACTIONS(1273),
    [anon_sym_gasprice] = ACTIONS(1273),
    [anon_sym_blockhash] = ACTIONS(1273),
    [anon_sym_blobhash] = ACTIONS(1273),
    [anon_sym_basefee] = ACTIONS(1273),
    [anon_sym_blobfee] = ACTIONS(1273),
    [anon_sym_coinbase] = ACTIONS(1273),
    [anon_sym_timestamp] = ACTIONS(1273),
    [anon_sym_number] = ACTIONS(1273),
    [anon_sym_difficulty] = ACTIONS(1273),
    [anon_sym_gaslimit] = ACTIONS(1273),
    [anon_sym_prevrandao] = ACTIONS(1273),
    [anon_sym_blobbasefee] = ACTIONS(1273),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(339)] = {
    [sym_identifier] = ACTIONS(1277),
    [anon_sym_LBRACE] = ACTIONS(1279),
    [anon_sym_RBRACE] = ACTIONS(1279),
    [anon_sym_for] = ACTIONS(1277),
    [sym_yul_leave] = ACTIONS(1277),
    [anon_sym_break] = ACTIONS(1277),
    [anon_sym_continue] = ACTIONS(1277),
    [sym_yul_decimal_number] = ACTIONS(1277),
    [sym_yul_hex_number] = ACTIONS(1279),
    [anon_sym_true] = ACTIONS(1277),
    [anon_sym_false] = ACTIONS(1277),
    [anon_sym_hex] = ACTIONS(1277),
    [anon_sym_DQUOTE] = ACTIONS(1279),
    [anon_sym_SQUOTE] = ACTIONS(1279),
    [anon_sym_let] = ACTIONS(1277),
    [anon_sym_if] = ACTIONS(1277),
    [anon_sym_switch] = ACTIONS(1277),
    [anon_sym_function] = ACTIONS(1277),
    [anon_sym_stop] = ACTIONS(1277),
    [anon_sym_add] = ACTIONS(1277),
    [anon_sym_sub] = ACTIONS(1277),
    [anon_sym_mul] = ACTIONS(1277),
    [anon_sym_div] = ACTIONS(1277),
    [anon_sym_sdiv] = ACTIONS(1277),
    [anon_sym_mod] = ACTIONS(1277),
    [anon_sym_smod] = ACTIONS(1277),
    [anon_sym_exp] = ACTIONS(1277),
    [anon_sym_not] = ACTIONS(1277),
    [anon_sym_lt] = ACTIONS(1277),
    [anon_sym_gt] = ACTIONS(1277),
    [anon_sym_slt] = ACTIONS(1277),
    [anon_sym_sgt] = ACTIONS(1277),
    [anon_sym_eq] = ACTIONS(1277),
    [anon_sym_iszero] = ACTIONS(1277),
    [anon_sym_and] = ACTIONS(1277),
    [anon_sym_or] = ACTIONS(1277),
    [anon_sym_xor] = ACTIONS(1277),
    [anon_sym_byte] = ACTIONS(1277),
    [anon_sym_shl] = ACTIONS(1277),
    [anon_sym_shr] = ACTIONS(1277),
    [anon_sym_sar] = ACTIONS(1277),
    [anon_sym_addmod] = ACTIONS(1277),
    [anon_sym_mulmod] = ACTIONS(1277),
    [anon_sym_signextend] = ACTIONS(1277),
    [anon_sym_keccak256] = ACTIONS(1277),
    [anon_sym_pop] = ACTIONS(1277),
    [anon_sym_mload] = ACTIONS(1277),
    [anon_sym_mcopy] = ACTIONS(1277),
    [anon_sym_tload] = ACTIONS(1277),
    [anon_sym_tstore] = ACTIONS(1277),
    [anon_sym_mstore] = ACTIONS(1277),
    [anon_sym_mstore8] = ACTIONS(1277),
    [anon_sym_sload] = ACTIONS(1277),
    [anon_sym_sstore] = ACTIONS(1277),
    [anon_sym_msize] = ACTIONS(1277),
    [anon_sym_gas] = ACTIONS(1277),
    [anon_sym_address] = ACTIONS(1277),
    [anon_sym_balance] = ACTIONS(1277),
    [anon_sym_selfbalance] = ACTIONS(1277),
    [anon_sym_caller] = ACTIONS(1277),
    [anon_sym_callvalue] = ACTIONS(1277),
    [anon_sym_calldataload] = ACTIONS(1277),
    [anon_sym_calldatasize] = ACTIONS(1277),
    [anon_sym_calldatacopy] = ACTIONS(1277),
    [anon_sym_extcodesize] = ACTIONS(1277),
    [anon_sym_extcodecopy] = ACTIONS(1277),
    [anon_sym_returndatasize] = ACTIONS(1277),
    [anon_sym_returndatacopy] = ACTIONS(1277),
    [anon_sym_extcodehash] = ACTIONS(1277),
    [anon_sym_create] = ACTIONS(1277),
    [anon_sym_create2] = ACTIONS(1277),
    [anon_sym_call] = ACTIONS(1277),
    [anon_sym_callcode] = ACTIONS(1277),
    [anon_sym_delegatecall] = ACTIONS(1277),
    [anon_sym_staticcall] = ACTIONS(1277),
    [anon_sym_return] = ACTIONS(1277),
    [anon_sym_revert] = ACTIONS(1277),
    [anon_sym_selfdestruct] = ACTIONS(1277),
    [anon_sym_invalid] = ACTIONS(1277),
    [anon_sym_log0] = ACTIONS(1277),
    [anon_sym_log1] = ACTIONS(1277),
    [anon_sym_log2] = ACTIONS(1277),
    [anon_sym_log3] = ACTIONS(1277),
    [anon_sym_log4] = ACTIONS(1277),
    [anon_sym_chainid] = ACTIONS(1277),
    [anon_sym_origin] = ACTIONS(1277),
    [anon_sym_gasprice] = ACTIONS(1277),
    [anon_sym_blockhash] = ACTIONS(1277),
    [anon_sym_blobhash] = ACTIONS(1277),
    [anon_sym_basefee] = ACTIONS(1277),
    [anon_sym_blobfee] = ACTIONS(1277),
    [anon_sym_coinbase] = ACTIONS(1277),
    [anon_sym_timestamp] = ACTIONS(1277),
    [anon_sym_number] = ACTIONS(1277),
    [anon_sym_difficulty] = ACTIONS(1277),
    [anon_sym_gaslimit] = ACTIONS(1277),
    [anon_sym_prevrandao] = ACTIONS(1277),
    [anon_sym_blobbasefee] = ACTIONS(1277),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(340)] = {
    [sym_identifier] = ACTIONS(1281),
    [anon_sym_LBRACE] = ACTIONS(1283),
    [anon_sym_RBRACE] = ACTIONS(1283),
    [anon_sym_for] = ACTIONS(1281),
    [sym_yul_leave] = ACTIONS(1281),
    [anon_sym_break] = ACTIONS(1281),
    [anon_sym_continue] = ACTIONS(1281),
    [sym_yul_decimal_number] = ACTIONS(1281),
    [sym_yul_hex_number] = ACTIONS(1283),
    [anon_sym_true] = ACTIONS(1281),
    [anon_sym_false] = ACTIONS(1281),
    [anon_sym_hex] = ACTIONS(1281),
    [anon_sym_DQUOTE] = ACTIONS(1283),
    [anon_sym_SQUOTE] = ACTIONS(1283),
    [anon_sym_let] = ACTIONS(1281),
    [anon_sym_if] = ACTIONS(1281),
    [anon_sym_switch] = ACTIONS(1281),
    [anon_sym_function] = ACTIONS(1281),
    [anon_sym_stop] = ACTIONS(1281),
    [anon_sym_add] = ACTIONS(1281),
    [anon_sym_sub] = ACTIONS(1281),
    [anon_sym_mul] = ACTIONS(1281),
    [anon_sym_div] = ACTIONS(1281),
    [anon_sym_sdiv] = ACTIONS(1281),
    [anon_sym_mod] = ACTIONS(1281),
    [anon_sym_smod] = ACTIONS(1281),
    [anon_sym_exp] = ACTIONS(1281),
    [anon_sym_not] = ACTIONS(1281),
    [anon_sym_lt] = ACTIONS(1281),
    [anon_sym_gt] = ACTIONS(1281),
    [anon_sym_slt] = ACTIONS(1281),
    [anon_sym_sgt] = ACTIONS(1281),
    [anon_sym_eq] = ACTIONS(1281),
    [anon_sym_iszero] = ACTIONS(1281),
    [anon_sym_and] = ACTIONS(1281),
    [anon_sym_or] = ACTIONS(1281),
    [anon_sym_xor] = ACTIONS(1281),
    [anon_sym_byte] = ACTIONS(1281),
    [anon_sym_shl] = ACTIONS(1281),
    [anon_sym_shr] = ACTIONS(1281),
    [anon_sym_sar] = ACTIONS(1281),
    [anon_sym_addmod] = ACTIONS(1281),
    [anon_sym_mulmod] = ACTIONS(1281),
    [anon_sym_signextend] = ACTIONS(1281),
    [anon_sym_keccak256] = ACTIONS(1281),
    [anon_sym_pop] = ACTIONS(1281),
    [anon_sym_mload] = ACTIONS(1281),
    [anon_sym_mcopy] = ACTIONS(1281),
    [anon_sym_tload] = ACTIONS(1281),
    [anon_sym_tstore] = ACTIONS(1281),
    [anon_sym_mstore] = ACTIONS(1281),
    [anon_sym_mstore8] = ACTIONS(1281),
    [anon_sym_sload] = ACTIONS(1281),
    [anon_sym_sstore] = ACTIONS(1281),
    [anon_sym_msize] = ACTIONS(1281),
    [anon_sym_gas] = ACTIONS(1281),
    [anon_sym_address] = ACTIONS(1281),
    [anon_sym_balance] = ACTIONS(1281),
    [anon_sym_selfbalance] = ACTIONS(1281),
    [anon_sym_caller] = ACTIONS(1281),
    [anon_sym_callvalue] = ACTIONS(1281),
    [anon_sym_calldataload] = ACTIONS(1281),
    [anon_sym_calldatasize] = ACTIONS(1281),
    [anon_sym_calldatacopy] = ACTIONS(1281),
    [anon_sym_extcodesize] = ACTIONS(1281),
    [anon_sym_extcodecopy] = ACTIONS(1281),
    [anon_sym_returndatasize] = ACTIONS(1281),
    [anon_sym_returndatacopy] = ACTIONS(1281),
    [anon_sym_extcodehash] = ACTIONS(1281),
    [anon_sym_create] = ACTIONS(1281),
    [anon_sym_create2] = ACTIONS(1281),
    [anon_sym_call] = ACTIONS(1281),
    [anon_sym_callcode] = ACTIONS(1281),
    [anon_sym_delegatecall] = ACTIONS(1281),
    [anon_sym_staticcall] = ACTIONS(1281),
    [anon_sym_return] = ACTIONS(1281),
    [anon_sym_revert] = ACTIONS(1281),
    [anon_sym_selfdestruct] = ACTIONS(1281),
    [anon_sym_invalid] = ACTIONS(1281),
    [anon_sym_log0] = ACTIONS(1281),
    [anon_sym_log1] = ACTIONS(1281),
    [anon_sym_log2] = ACTIONS(1281),
    [anon_sym_log3] = ACTIONS(1281),
    [anon_sym_log4] = ACTIONS(1281),
    [anon_sym_chainid] = ACTIONS(1281),
    [anon_sym_origin] = ACTIONS(1281),
    [anon_sym_gasprice] = ACTIONS(1281),
    [anon_sym_blockhash] = ACTIONS(1281),
    [anon_sym_blobhash] = ACTIONS(1281),
    [anon_sym_basefee] = ACTIONS(1281),
    [anon_sym_blobfee] = ACTIONS(1281),
    [anon_sym_coinbase] = ACTIONS(1281),
    [anon_sym_timestamp] = ACTIONS(1281),
    [anon_sym_number] = ACTIONS(1281),
    [anon_sym_difficulty] = ACTIONS(1281),
    [anon_sym_gaslimit] = ACTIONS(1281),
    [anon_sym_prevrandao] = ACTIONS(1281),
    [anon_sym_blobbasefee] = ACTIONS(1281),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(341)] = {
    [sym_identifier] = ACTIONS(1285),
    [anon_sym_LBRACE] = ACTIONS(1287),
    [anon_sym_RBRACE] = ACTIONS(1287),
    [anon_sym_for] = ACTIONS(1285),
    [sym_yul_leave] = ACTIONS(1285),
    [anon_sym_break] = ACTIONS(1285),
    [anon_sym_continue] = ACTIONS(1285),
    [sym_yul_decimal_number] = ACTIONS(1285),
    [sym_yul_hex_number] = ACTIONS(1287),
    [anon_sym_true] = ACTIONS(1285),
    [anon_sym_false] = ACTIONS(1285),
    [anon_sym_hex] = ACTIONS(1285),
    [anon_sym_DQUOTE] = ACTIONS(1287),
    [anon_sym_SQUOTE] = ACTIONS(1287),
    [anon_sym_let] = ACTIONS(1285),
    [anon_sym_if] = ACTIONS(1285),
    [anon_sym_switch] = ACTIONS(1285),
    [anon_sym_function] = ACTIONS(1285),
    [anon_sym_stop] = ACTIONS(1285),
    [anon_sym_add] = ACTIONS(1285),
    [anon_sym_sub] = ACTIONS(1285),
    [anon_sym_mul] = ACTIONS(1285),
    [anon_sym_div] = ACTIONS(1285),
    [anon_sym_sdiv] = ACTIONS(1285),
    [anon_sym_mod] = ACTIONS(1285),
    [anon_sym_smod] = ACTIONS(1285),
    [anon_sym_exp] = ACTIONS(1285),
    [anon_sym_not] = ACTIONS(1285),
    [anon_sym_lt] = ACTIONS(1285),
    [anon_sym_gt] = ACTIONS(1285),
    [anon_sym_slt] = ACTIONS(1285),
    [anon_sym_sgt] = ACTIONS(1285),
    [anon_sym_eq] = ACTIONS(1285),
    [anon_sym_iszero] = ACTIONS(1285),
    [anon_sym_and] = ACTIONS(1285),
    [anon_sym_or] = ACTIONS(1285),
    [anon_sym_xor] = ACTIONS(1285),
    [anon_sym_byte] = ACTIONS(1285),
    [anon_sym_shl] = ACTIONS(1285),
    [anon_sym_shr] = ACTIONS(1285),
    [anon_sym_sar] = ACTIONS(1285),
    [anon_sym_addmod] = ACTIONS(1285),
    [anon_sym_mulmod] = ACTIONS(1285),
    [anon_sym_signextend] = ACTIONS(1285),
    [anon_sym_keccak256] = ACTIONS(1285),
    [anon_sym_pop] = ACTIONS(1285),
    [anon_sym_mload] = ACTIONS(1285),
    [anon_sym_mcopy] = ACTIONS(1285),
    [anon_sym_tload] = ACTIONS(1285),
    [anon_sym_tstore] = ACTIONS(1285),
    [anon_sym_mstore] = ACTIONS(1285),
    [anon_sym_mstore8] = ACTIONS(1285),
    [anon_sym_sload] = ACTIONS(1285),
    [anon_sym_sstore] = ACTIONS(1285),
    [anon_sym_msize] = ACTIONS(1285),
    [anon_sym_gas] = ACTIONS(1285),
    [anon_sym_address] = ACTIONS(1285),
    [anon_sym_balance] = ACTIONS(1285),
    [anon_sym_selfbalance] = ACTIONS(1285),
    [anon_sym_caller] = ACTIONS(1285),
    [anon_sym_callvalue] = ACTIONS(1285),
    [anon_sym_calldataload] = ACTIONS(1285),
    [anon_sym_calldatasize] = ACTIONS(1285),
    [anon_sym_calldatacopy] = ACTIONS(1285),
    [anon_sym_extcodesize] = ACTIONS(1285),
    [anon_sym_extcodecopy] = ACTIONS(1285),
    [anon_sym_returndatasize] = ACTIONS(1285),
    [anon_sym_returndatacopy] = ACTIONS(1285),
    [anon_sym_extcodehash] = ACTIONS(1285),
    [anon_sym_create] = ACTIONS(1285),
    [anon_sym_create2] = ACTIONS(1285),
    [anon_sym_call] = ACTIONS(1285),
    [anon_sym_callcode] = ACTIONS(1285),
    [anon_sym_delegatecall] = ACTIONS(1285),
    [anon_sym_staticcall] = ACTIONS(1285),
    [anon_sym_return] = ACTIONS(1285),
    [anon_sym_revert] = ACTIONS(1285),
    [anon_sym_selfdestruct] = ACTIONS(1285),
    [anon_sym_invalid] = ACTIONS(1285),
    [anon_sym_log0] = ACTIONS(1285),
    [anon_sym_log1] = ACTIONS(1285),
    [anon_sym_log2] = ACTIONS(1285),
    [anon_sym_log3] = ACTIONS(1285),
    [anon_sym_log4] = ACTIONS(1285),
    [anon_sym_chainid] = ACTIONS(1285),
    [anon_sym_origin] = ACTIONS(1285),
    [anon_sym_gasprice] = ACTIONS(1285),
    [anon_sym_blockhash] = ACTIONS(1285),
    [anon_sym_blobhash] = ACTIONS(1285),
    [anon_sym_basefee] = ACTIONS(1285),
    [anon_sym_blobfee] = ACTIONS(1285),
    [anon_sym_coinbase] = ACTIONS(1285),
    [anon_sym_timestamp] = ACTIONS(1285),
    [anon_sym_number] = ACTIONS(1285),
    [anon_sym_difficulty] = ACTIONS(1285),
    [anon_sym_gaslimit] = ACTIONS(1285),
    [anon_sym_prevrandao] = ACTIONS(1285),
    [anon_sym_blobbasefee] = ACTIONS(1285),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(342)] = {
    [sym_identifier] = ACTIONS(1289),
    [anon_sym_LBRACE] = ACTIONS(1291),
    [anon_sym_RBRACE] = ACTIONS(1291),
    [anon_sym_for] = ACTIONS(1289),
    [sym_yul_leave] = ACTIONS(1289),
    [anon_sym_break] = ACTIONS(1289),
    [anon_sym_continue] = ACTIONS(1289),
    [sym_yul_decimal_number] = ACTIONS(1289),
    [sym_yul_hex_number] = ACTIONS(1291),
    [anon_sym_true] = ACTIONS(1289),
    [anon_sym_false] = ACTIONS(1289),
    [anon_sym_hex] = ACTIONS(1289),
    [anon_sym_DQUOTE] = ACTIONS(1291),
    [anon_sym_SQUOTE] = ACTIONS(1291),
    [anon_sym_let] = ACTIONS(1289),
    [anon_sym_if] = ACTIONS(1289),
    [anon_sym_switch] = ACTIONS(1289),
    [anon_sym_function] = ACTIONS(1289),
    [anon_sym_stop] = ACTIONS(1289),
    [anon_sym_add] = ACTIONS(1289),
    [anon_sym_sub] = ACTIONS(1289),
    [anon_sym_mul] = ACTIONS(1289),
    [anon_sym_div] = ACTIONS(1289),
    [anon_sym_sdiv] = ACTIONS(1289),
    [anon_sym_mod] = ACTIONS(1289),
    [anon_sym_smod] = ACTIONS(1289),
    [anon_sym_exp] = ACTIONS(1289),
    [anon_sym_not] = ACTIONS(1289),
    [anon_sym_lt] = ACTIONS(1289),
    [anon_sym_gt] = ACTIONS(1289),
    [anon_sym_slt] = ACTIONS(1289),
    [anon_sym_sgt] = ACTIONS(1289),
    [anon_sym_eq] = ACTIONS(1289),
    [anon_sym_iszero] = ACTIONS(1289),
    [anon_sym_and] = ACTIONS(1289),
    [anon_sym_or] = ACTIONS(1289),
    [anon_sym_xor] = ACTIONS(1289),
    [anon_sym_byte] = ACTIONS(1289),
    [anon_sym_shl] = ACTIONS(1289),
    [anon_sym_shr] = ACTIONS(1289),
    [anon_sym_sar] = ACTIONS(1289),
    [anon_sym_addmod] = ACTIONS(1289),
    [anon_sym_mulmod] = ACTIONS(1289),
    [anon_sym_signextend] = ACTIONS(1289),
    [anon_sym_keccak256] = ACTIONS(1289),
    [anon_sym_pop] = ACTIONS(1289),
    [anon_sym_mload] = ACTIONS(1289),
    [anon_sym_mcopy] = ACTIONS(1289),
    [anon_sym_tload] = ACTIONS(1289),
    [anon_sym_tstore] = ACTIONS(1289),
    [anon_sym_mstore] = ACTIONS(1289),
    [anon_sym_mstore8] = ACTIONS(1289),
    [anon_sym_sload] = ACTIONS(1289),
    [anon_sym_sstore] = ACTIONS(1289),
    [anon_sym_msize] = ACTIONS(1289),
    [anon_sym_gas] = ACTIONS(1289),
    [anon_sym_address] = ACTIONS(1289),
    [anon_sym_balance] = ACTIONS(1289),
    [anon_sym_selfbalance] = ACTIONS(1289),
    [anon_sym_caller] = ACTIONS(1289),
    [anon_sym_callvalue] = ACTIONS(1289),
    [anon_sym_calldataload] = ACTIONS(1289),
    [anon_sym_calldatasize] = ACTIONS(1289),
    [anon_sym_calldatacopy] = ACTIONS(1289),
    [anon_sym_extcodesize] = ACTIONS(1289),
    [anon_sym_extcodecopy] = ACTIONS(1289),
    [anon_sym_returndatasize] = ACTIONS(1289),
    [anon_sym_returndatacopy] = ACTIONS(1289),
    [anon_sym_extcodehash] = ACTIONS(1289),
    [anon_sym_create] = ACTIONS(1289),
    [anon_sym_create2] = ACTIONS(1289),
    [anon_sym_call] = ACTIONS(1289),
    [anon_sym_callcode] = ACTIONS(1289),
    [anon_sym_delegatecall] = ACTIONS(1289),
    [anon_sym_staticcall] = ACTIONS(1289),
    [anon_sym_return] = ACTIONS(1289),
    [anon_sym_revert] = ACTIONS(1289),
    [anon_sym_selfdestruct] = ACTIONS(1289),
    [anon_sym_invalid] = ACTIONS(1289),
    [anon_sym_log0] = ACTIONS(1289),
    [anon_sym_log1] = ACTIONS(1289),
    [anon_sym_log2] = ACTIONS(1289),
    [anon_sym_log3] = ACTIONS(1289),
    [anon_sym_log4] = ACTIONS(1289),
    [anon_sym_chainid] = ACTIONS(1289),
    [anon_sym_origin] = ACTIONS(1289),
    [anon_sym_gasprice] = ACTIONS(1289),
    [anon_sym_blockhash] = ACTIONS(1289),
    [anon_sym_blobhash] = ACTIONS(1289),
    [anon_sym_basefee] = ACTIONS(1289),
    [anon_sym_blobfee] = ACTIONS(1289),
    [anon_sym_coinbase] = ACTIONS(1289),
    [anon_sym_timestamp] = ACTIONS(1289),
    [anon_sym_number] = ACTIONS(1289),
    [anon_sym_difficulty] = ACTIONS(1289),
    [anon_sym_gaslimit] = ACTIONS(1289),
    [anon_sym_prevrandao] = ACTIONS(1289),
    [anon_sym_blobbasefee] = ACTIONS(1289),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(343)] = {
    [sym_identifier] = ACTIONS(1293),
    [anon_sym_LBRACE] = ACTIONS(1295),
    [anon_sym_RBRACE] = ACTIONS(1295),
    [anon_sym_for] = ACTIONS(1293),
    [sym_yul_leave] = ACTIONS(1293),
    [anon_sym_break] = ACTIONS(1293),
    [anon_sym_continue] = ACTIONS(1293),
    [sym_yul_decimal_number] = ACTIONS(1293),
    [sym_yul_hex_number] = ACTIONS(1295),
    [anon_sym_true] = ACTIONS(1293),
    [anon_sym_false] = ACTIONS(1293),
    [anon_sym_hex] = ACTIONS(1293),
    [anon_sym_DQUOTE] = ACTIONS(1295),
    [anon_sym_SQUOTE] = ACTIONS(1295),
    [anon_sym_let] = ACTIONS(1293),
    [anon_sym_if] = ACTIONS(1293),
    [anon_sym_switch] = ACTIONS(1293),
    [anon_sym_function] = ACTIONS(1293),
    [anon_sym_stop] = ACTIONS(1293),
    [anon_sym_add] = ACTIONS(1293),
    [anon_sym_sub] = ACTIONS(1293),
    [anon_sym_mul] = ACTIONS(1293),
    [anon_sym_div] = ACTIONS(1293),
    [anon_sym_sdiv] = ACTIONS(1293),
    [anon_sym_mod] = ACTIONS(1293),
    [anon_sym_smod] = ACTIONS(1293),
    [anon_sym_exp] = ACTIONS(1293),
    [anon_sym_not] = ACTIONS(1293),
    [anon_sym_lt] = ACTIONS(1293),
    [anon_sym_gt] = ACTIONS(1293),
    [anon_sym_slt] = ACTIONS(1293),
    [anon_sym_sgt] = ACTIONS(1293),
    [anon_sym_eq] = ACTIONS(1293),
    [anon_sym_iszero] = ACTIONS(1293),
    [anon_sym_and] = ACTIONS(1293),
    [anon_sym_or] = ACTIONS(1293),
    [anon_sym_xor] = ACTIONS(1293),
    [anon_sym_byte] = ACTIONS(1293),
    [anon_sym_shl] = ACTIONS(1293),
    [anon_sym_shr] = ACTIONS(1293),
    [anon_sym_sar] = ACTIONS(1293),
    [anon_sym_addmod] = ACTIONS(1293),
    [anon_sym_mulmod] = ACTIONS(1293),
    [anon_sym_signextend] = ACTIONS(1293),
    [anon_sym_keccak256] = ACTIONS(1293),
    [anon_sym_pop] = ACTIONS(1293),
    [anon_sym_mload] = ACTIONS(1293),
    [anon_sym_mcopy] = ACTIONS(1293),
    [anon_sym_tload] = ACTIONS(1293),
    [anon_sym_tstore] = ACTIONS(1293),
    [anon_sym_mstore] = ACTIONS(1293),
    [anon_sym_mstore8] = ACTIONS(1293),
    [anon_sym_sload] = ACTIONS(1293),
    [anon_sym_sstore] = ACTIONS(1293),
    [anon_sym_msize] = ACTIONS(1293),
    [anon_sym_gas] = ACTIONS(1293),
    [anon_sym_address] = ACTIONS(1293),
    [anon_sym_balance] = ACTIONS(1293),
    [anon_sym_selfbalance] = ACTIONS(1293),
    [anon_sym_caller] = ACTIONS(1293),
    [anon_sym_callvalue] = ACTIONS(1293),
    [anon_sym_calldataload] = ACTIONS(1293),
    [anon_sym_calldatasize] = ACTIONS(1293),
    [anon_sym_calldatacopy] = ACTIONS(1293),
    [anon_sym_extcodesize] = ACTIONS(1293),
    [anon_sym_extcodecopy] = ACTIONS(1293),
    [anon_sym_returndatasize] = ACTIONS(1293),
    [anon_sym_returndatacopy] = ACTIONS(1293),
    [anon_sym_extcodehash] = ACTIONS(1293),
    [anon_sym_create] = ACTIONS(1293),
    [anon_sym_create2] = ACTIONS(1293),
    [anon_sym_call] = ACTIONS(1293),
    [anon_sym_callcode] = ACTIONS(1293),
    [anon_sym_delegatecall] = ACTIONS(1293),
    [anon_sym_staticcall] = ACTIONS(1293),
    [anon_sym_return] = ACTIONS(1293),
    [anon_sym_revert] = ACTIONS(1293),
    [anon_sym_selfdestruct] = ACTIONS(1293),
    [anon_sym_invalid] = ACTIONS(1293),
    [anon_sym_log0] = ACTIONS(1293),
    [anon_sym_log1] = ACTIONS(1293),
    [anon_sym_log2] = ACTIONS(1293),
    [anon_sym_log3] = ACTIONS(1293),
    [anon_sym_log4] = ACTIONS(1293),
    [anon_sym_chainid] = ACTIONS(1293),
    [anon_sym_origin] = ACTIONS(1293),
    [anon_sym_gasprice] = ACTIONS(1293),
    [anon_sym_blockhash] = ACTIONS(1293),
    [anon_sym_blobhash] = ACTIONS(1293),
    [anon_sym_basefee] = ACTIONS(1293),
    [anon_sym_blobfee] = ACTIONS(1293),
    [anon_sym_coinbase] = ACTIONS(1293),
    [anon_sym_timestamp] = ACTIONS(1293),
    [anon_sym_number] = ACTIONS(1293),
    [anon_sym_difficulty] = ACTIONS(1293),
    [anon_sym_gaslimit] = ACTIONS(1293),
    [anon_sym_prevrandao] = ACTIONS(1293),
    [anon_sym_blobbasefee] = ACTIONS(1293),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(344)] = {
    [sym_identifier] = ACTIONS(1297),
    [anon_sym_LBRACE] = ACTIONS(1299),
    [anon_sym_RBRACE] = ACTIONS(1299),
    [anon_sym_for] = ACTIONS(1297),
    [sym_yul_leave] = ACTIONS(1297),
    [anon_sym_break] = ACTIONS(1297),
    [anon_sym_continue] = ACTIONS(1297),
    [sym_yul_decimal_number] = ACTIONS(1297),
    [sym_yul_hex_number] = ACTIONS(1299),
    [anon_sym_true] = ACTIONS(1297),
    [anon_sym_false] = ACTIONS(1297),
    [anon_sym_hex] = ACTIONS(1297),
    [anon_sym_DQUOTE] = ACTIONS(1299),
    [anon_sym_SQUOTE] = ACTIONS(1299),
    [anon_sym_let] = ACTIONS(1297),
    [anon_sym_if] = ACTIONS(1297),
    [anon_sym_switch] = ACTIONS(1297),
    [anon_sym_function] = ACTIONS(1297),
    [anon_sym_stop] = ACTIONS(1297),
    [anon_sym_add] = ACTIONS(1297),
    [anon_sym_sub] = ACTIONS(1297),
    [anon_sym_mul] = ACTIONS(1297),
    [anon_sym_div] = ACTIONS(1297),
    [anon_sym_sdiv] = ACTIONS(1297),
    [anon_sym_mod] = ACTIONS(1297),
    [anon_sym_smod] = ACTIONS(1297),
    [anon_sym_exp] = ACTIONS(1297),
    [anon_sym_not] = ACTIONS(1297),
    [anon_sym_lt] = ACTIONS(1297),
    [anon_sym_gt] = ACTIONS(1297),
    [anon_sym_slt] = ACTIONS(1297),
    [anon_sym_sgt] = ACTIONS(1297),
    [anon_sym_eq] = ACTIONS(1297),
    [anon_sym_iszero] = ACTIONS(1297),
    [anon_sym_and] = ACTIONS(1297),
    [anon_sym_or] = ACTIONS(1297),
    [anon_sym_xor] = ACTIONS(1297),
    [anon_sym_byte] = ACTIONS(1297),
    [anon_sym_shl] = ACTIONS(1297),
    [anon_sym_shr] = ACTIONS(1297),
    [anon_sym_sar] = ACTIONS(1297),
    [anon_sym_addmod] = ACTIONS(1297),
    [anon_sym_mulmod] = ACTIONS(1297),
    [anon_sym_signextend] = ACTIONS(1297),
    [anon_sym_keccak256] = ACTIONS(1297),
    [anon_sym_pop] = ACTIONS(1297),
    [anon_sym_mload] = ACTIONS(1297),
    [anon_sym_mcopy] = ACTIONS(1297),
    [anon_sym_tload] = ACTIONS(1297),
    [anon_sym_tstore] = ACTIONS(1297),
    [anon_sym_mstore] = ACTIONS(1297),
    [anon_sym_mstore8] = ACTIONS(1297),
    [anon_sym_sload] = ACTIONS(1297),
    [anon_sym_sstore] = ACTIONS(1297),
    [anon_sym_msize] = ACTIONS(1297),
    [anon_sym_gas] = ACTIONS(1297),
    [anon_sym_address] = ACTIONS(1297),
    [anon_sym_balance] = ACTIONS(1297),
    [anon_sym_selfbalance] = ACTIONS(1297),
    [anon_sym_caller] = ACTIONS(1297),
    [anon_sym_callvalue] = ACTIONS(1297),
    [anon_sym_calldataload] = ACTIONS(1297),
    [anon_sym_calldatasize] = ACTIONS(1297),
    [anon_sym_calldatacopy] = ACTIONS(1297),
    [anon_sym_extcodesize] = ACTIONS(1297),
    [anon_sym_extcodecopy] = ACTIONS(1297),
    [anon_sym_returndatasize] = ACTIONS(1297),
    [anon_sym_returndatacopy] = ACTIONS(1297),
    [anon_sym_extcodehash] = ACTIONS(1297),
    [anon_sym_create] = ACTIONS(1297),
    [anon_sym_create2] = ACTIONS(1297),
    [anon_sym_call] = ACTIONS(1297),
    [anon_sym_callcode] = ACTIONS(1297),
    [anon_sym_delegatecall] = ACTIONS(1297),
    [anon_sym_staticcall] = ACTIONS(1297),
    [anon_sym_return] = ACTIONS(1297),
    [anon_sym_revert] = ACTIONS(1297),
    [anon_sym_selfdestruct] = ACTIONS(1297),
    [anon_sym_invalid] = ACTIONS(1297),
    [anon_sym_log0] = ACTIONS(1297),
    [anon_sym_log1] = ACTIONS(1297),
    [anon_sym_log2] = ACTIONS(1297),
    [anon_sym_log3] = ACTIONS(1297),
    [anon_sym_log4] = ACTIONS(1297),
    [anon_sym_chainid] = ACTIONS(1297),
    [anon_sym_origin] = ACTIONS(1297),
    [anon_sym_gasprice] = ACTIONS(1297),
    [anon_sym_blockhash] = ACTIONS(1297),
    [anon_sym_blobhash] = ACTIONS(1297),
    [anon_sym_basefee] = ACTIONS(1297),
    [anon_sym_blobfee] = ACTIONS(1297),
    [anon_sym_coinbase] = ACTIONS(1297),
    [anon_sym_timestamp] = ACTIONS(1297),
    [anon_sym_number] = ACTIONS(1297),
    [anon_sym_difficulty] = ACTIONS(1297),
    [anon_sym_gaslimit] = ACTIONS(1297),
    [anon_sym_prevrandao] = ACTIONS(1297),
    [anon_sym_blobbasefee] = ACTIONS(1297),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(345)] = {
    [sym_identifier] = ACTIONS(1301),
    [anon_sym_LBRACE] = ACTIONS(1303),
    [anon_sym_RBRACE] = ACTIONS(1303),
    [anon_sym_for] = ACTIONS(1301),
    [sym_yul_leave] = ACTIONS(1301),
    [anon_sym_break] = ACTIONS(1301),
    [anon_sym_continue] = ACTIONS(1301),
    [sym_yul_decimal_number] = ACTIONS(1301),
    [sym_yul_hex_number] = ACTIONS(1303),
    [anon_sym_true] = ACTIONS(1301),
    [anon_sym_false] = ACTIONS(1301),
    [anon_sym_hex] = ACTIONS(1301),
    [anon_sym_DQUOTE] = ACTIONS(1303),
    [anon_sym_SQUOTE] = ACTIONS(1303),
    [anon_sym_let] = ACTIONS(1301),
    [anon_sym_if] = ACTIONS(1301),
    [anon_sym_switch] = ACTIONS(1301),
    [anon_sym_function] = ACTIONS(1301),
    [anon_sym_stop] = ACTIONS(1301),
    [anon_sym_add] = ACTIONS(1301),
    [anon_sym_sub] = ACTIONS(1301),
    [anon_sym_mul] = ACTIONS(1301),
    [anon_sym_div] = ACTIONS(1301),
    [anon_sym_sdiv] = ACTIONS(1301),
    [anon_sym_mod] = ACTIONS(1301),
    [anon_sym_smod] = ACTIONS(1301),
    [anon_sym_exp] = ACTIONS(1301),
    [anon_sym_not] = ACTIONS(1301),
    [anon_sym_lt] = ACTIONS(1301),
    [anon_sym_gt] = ACTIONS(1301),
    [anon_sym_slt] = ACTIONS(1301),
    [anon_sym_sgt] = ACTIONS(1301),
    [anon_sym_eq] = ACTIONS(1301),
    [anon_sym_iszero] = ACTIONS(1301),
    [anon_sym_and] = ACTIONS(1301),
    [anon_sym_or] = ACTIONS(1301),
    [anon_sym_xor] = ACTIONS(1301),
    [anon_sym_byte] = ACTIONS(1301),
    [anon_sym_shl] = ACTIONS(1301),
    [anon_sym_shr] = ACTIONS(1301),
    [anon_sym_sar] = ACTIONS(1301),
    [anon_sym_addmod] = ACTIONS(1301),
    [anon_sym_mulmod] = ACTIONS(1301),
    [anon_sym_signextend] = ACTIONS(1301),
    [anon_sym_keccak256] = ACTIONS(1301),
    [anon_sym_pop] = ACTIONS(1301),
    [anon_sym_mload] = ACTIONS(1301),
    [anon_sym_mcopy] = ACTIONS(1301),
    [anon_sym_tload] = ACTIONS(1301),
    [anon_sym_tstore] = ACTIONS(1301),
    [anon_sym_mstore] = ACTIONS(1301),
    [anon_sym_mstore8] = ACTIONS(1301),
    [anon_sym_sload] = ACTIONS(1301),
    [anon_sym_sstore] = ACTIONS(1301),
    [anon_sym_msize] = ACTIONS(1301),
    [anon_sym_gas] = ACTIONS(1301),
    [anon_sym_address] = ACTIONS(1301),
    [anon_sym_balance] = ACTIONS(1301),
    [anon_sym_selfbalance] = ACTIONS(1301),
    [anon_sym_caller] = ACTIONS(1301),
    [anon_sym_callvalue] = ACTIONS(1301),
    [anon_sym_calldataload] = ACTIONS(1301),
    [anon_sym_calldatasize] = ACTIONS(1301),
    [anon_sym_calldatacopy] = ACTIONS(1301),
    [anon_sym_extcodesize] = ACTIONS(1301),
    [anon_sym_extcodecopy] = ACTIONS(1301),
    [anon_sym_returndatasize] = ACTIONS(1301),
    [anon_sym_returndatacopy] = ACTIONS(1301),
    [anon_sym_extcodehash] = ACTIONS(1301),
    [anon_sym_create] = ACTIONS(1301),
    [anon_sym_create2] = ACTIONS(1301),
    [anon_sym_call] = ACTIONS(1301),
    [anon_sym_callcode] = ACTIONS(1301),
    [anon_sym_delegatecall] = ACTIONS(1301),
    [anon_sym_staticcall] = ACTIONS(1301),
    [anon_sym_return] = ACTIONS(1301),
    [anon_sym_revert] = ACTIONS(1301),
    [anon_sym_selfdestruct] = ACTIONS(1301),
    [anon_sym_invalid] = ACTIONS(1301),
    [anon_sym_log0] = ACTIONS(1301),
    [anon_sym_log1] = ACTIONS(1301),
    [anon_sym_log2] = ACTIONS(1301),
    [anon_sym_log3] = ACTIONS(1301),
    [anon_sym_log4] = ACTIONS(1301),
    [anon_sym_chainid] = ACTIONS(1301),
    [anon_sym_origin] = ACTIONS(1301),
    [anon_sym_gasprice] = ACTIONS(1301),
    [anon_sym_blockhash] = ACTIONS(1301),
    [anon_sym_blobhash] = ACTIONS(1301),
    [anon_sym_basefee] = ACTIONS(1301),
    [anon_sym_blobfee] = ACTIONS(1301),
    [anon_sym_coinbase] = ACTIONS(1301),
    [anon_sym_timestamp] = ACTIONS(1301),
    [anon_sym_number] = ACTIONS(1301),
    [anon_sym_difficulty] = ACTIONS(1301),
    [anon_sym_gaslimit] = ACTIONS(1301),
    [anon_sym_prevrandao] = ACTIONS(1301),
    [anon_sym_blobbasefee] = ACTIONS(1301),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(346)] = {
    [sym_identifier] = ACTIONS(1305),
    [anon_sym_LBRACE] = ACTIONS(1307),
    [anon_sym_RBRACE] = ACTIONS(1307),
    [anon_sym_for] = ACTIONS(1305),
    [sym_yul_leave] = ACTIONS(1305),
    [anon_sym_break] = ACTIONS(1305),
    [anon_sym_continue] = ACTIONS(1305),
    [sym_yul_decimal_number] = ACTIONS(1305),
    [sym_yul_hex_number] = ACTIONS(1307),
    [anon_sym_true] = ACTIONS(1305),
    [anon_sym_false] = ACTIONS(1305),
    [anon_sym_hex] = ACTIONS(1305),
    [anon_sym_DQUOTE] = ACTIONS(1307),
    [anon_sym_SQUOTE] = ACTIONS(1307),
    [anon_sym_let] = ACTIONS(1305),
    [anon_sym_if] = ACTIONS(1305),
    [anon_sym_switch] = ACTIONS(1305),
    [anon_sym_function] = ACTIONS(1305),
    [anon_sym_stop] = ACTIONS(1305),
    [anon_sym_add] = ACTIONS(1305),
    [anon_sym_sub] = ACTIONS(1305),
    [anon_sym_mul] = ACTIONS(1305),
    [anon_sym_div] = ACTIONS(1305),
    [anon_sym_sdiv] = ACTIONS(1305),
    [anon_sym_mod] = ACTIONS(1305),
    [anon_sym_smod] = ACTIONS(1305),
    [anon_sym_exp] = ACTIONS(1305),
    [anon_sym_not] = ACTIONS(1305),
    [anon_sym_lt] = ACTIONS(1305),
    [anon_sym_gt] = ACTIONS(1305),
    [anon_sym_slt] = ACTIONS(1305),
    [anon_sym_sgt] = ACTIONS(1305),
    [anon_sym_eq] = ACTIONS(1305),
    [anon_sym_iszero] = ACTIONS(1305),
    [anon_sym_and] = ACTIONS(1305),
    [anon_sym_or] = ACTIONS(1305),
    [anon_sym_xor] = ACTIONS(1305),
    [anon_sym_byte] = ACTIONS(1305),
    [anon_sym_shl] = ACTIONS(1305),
    [anon_sym_shr] = ACTIONS(1305),
    [anon_sym_sar] = ACTIONS(1305),
    [anon_sym_addmod] = ACTIONS(1305),
    [anon_sym_mulmod] = ACTIONS(1305),
    [anon_sym_signextend] = ACTIONS(1305),
    [anon_sym_keccak256] = ACTIONS(1305),
    [anon_sym_pop] = ACTIONS(1305),
    [anon_sym_mload] = ACTIONS(1305),
    [anon_sym_mcopy] = ACTIONS(1305),
    [anon_sym_tload] = ACTIONS(1305),
    [anon_sym_tstore] = ACTIONS(1305),
    [anon_sym_mstore] = ACTIONS(1305),
    [anon_sym_mstore8] = ACTIONS(1305),
    [anon_sym_sload] = ACTIONS(1305),
    [anon_sym_sstore] = ACTIONS(1305),
    [anon_sym_msize] = ACTIONS(1305),
    [anon_sym_gas] = ACTIONS(1305),
    [anon_sym_address] = ACTIONS(1305),
    [anon_sym_balance] = ACTIONS(1305),
    [anon_sym_selfbalance] = ACTIONS(1305),
    [anon_sym_caller] = ACTIONS(1305),
    [anon_sym_callvalue] = ACTIONS(1305),
    [anon_sym_calldataload] = ACTIONS(1305),
    [anon_sym_calldatasize] = ACTIONS(1305),
    [anon_sym_calldatacopy] = ACTIONS(1305),
    [anon_sym_extcodesize] = ACTIONS(1305),
    [anon_sym_extcodecopy] = ACTIONS(1305),
    [anon_sym_returndatasize] = ACTIONS(1305),
    [anon_sym_returndatacopy] = ACTIONS(1305),
    [anon_sym_extcodehash] = ACTIONS(1305),
    [anon_sym_create] = ACTIONS(1305),
    [anon_sym_create2] = ACTIONS(1305),
    [anon_sym_call] = ACTIONS(1305),
    [anon_sym_callcode] = ACTIONS(1305),
    [anon_sym_delegatecall] = ACTIONS(1305),
    [anon_sym_staticcall] = ACTIONS(1305),
    [anon_sym_return] = ACTIONS(1305),
    [anon_sym_revert] = ACTIONS(1305),
    [anon_sym_selfdestruct] = ACTIONS(1305),
    [anon_sym_invalid] = ACTIONS(1305),
    [anon_sym_log0] = ACTIONS(1305),
    [anon_sym_log1] = ACTIONS(1305),
    [anon_sym_log2] = ACTIONS(1305),
    [anon_sym_log3] = ACTIONS(1305),
    [anon_sym_log4] = ACTIONS(1305),
    [anon_sym_chainid] = ACTIONS(1305),
    [anon_sym_origin] = ACTIONS(1305),
    [anon_sym_gasprice] = ACTIONS(1305),
    [anon_sym_blockhash] = ACTIONS(1305),
    [anon_sym_blobhash] = ACTIONS(1305),
    [anon_sym_basefee] = ACTIONS(1305),
    [anon_sym_blobfee] = ACTIONS(1305),
    [anon_sym_coinbase] = ACTIONS(1305),
    [anon_sym_timestamp] = ACTIONS(1305),
    [anon_sym_number] = ACTIONS(1305),
    [anon_sym_difficulty] = ACTIONS(1305),
    [anon_sym_gaslimit] = ACTIONS(1305),
    [anon_sym_prevrandao] = ACTIONS(1305),
    [anon_sym_blobbasefee] = ACTIONS(1305),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(347)] = {
    [sym_identifier] = ACTIONS(1309),
    [anon_sym_LBRACE] = ACTIONS(1311),
    [anon_sym_RBRACE] = ACTIONS(1311),
    [anon_sym_for] = ACTIONS(1309),
    [sym_yul_leave] = ACTIONS(1309),
    [anon_sym_break] = ACTIONS(1309),
    [anon_sym_continue] = ACTIONS(1309),
    [sym_yul_decimal_number] = ACTIONS(1309),
    [sym_yul_hex_number] = ACTIONS(1311),
    [anon_sym_true] = ACTIONS(1309),
    [anon_sym_false] = ACTIONS(1309),
    [anon_sym_hex] = ACTIONS(1309),
    [anon_sym_DQUOTE] = ACTIONS(1311),
    [anon_sym_SQUOTE] = ACTIONS(1311),
    [anon_sym_let] = ACTIONS(1309),
    [anon_sym_if] = ACTIONS(1309),
    [anon_sym_switch] = ACTIONS(1309),
    [anon_sym_function] = ACTIONS(1309),
    [anon_sym_stop] = ACTIONS(1309),
    [anon_sym_add] = ACTIONS(1309),
    [anon_sym_sub] = ACTIONS(1309),
    [anon_sym_mul] = ACTIONS(1309),
    [anon_sym_div] = ACTIONS(1309),
    [anon_sym_sdiv] = ACTIONS(1309),
    [anon_sym_mod] = ACTIONS(1309),
    [anon_sym_smod] = ACTIONS(1309),
    [anon_sym_exp] = ACTIONS(1309),
    [anon_sym_not] = ACTIONS(1309),
    [anon_sym_lt] = ACTIONS(1309),
    [anon_sym_gt] = ACTIONS(1309),
    [anon_sym_slt] = ACTIONS(1309),
    [anon_sym_sgt] = ACTIONS(1309),
    [anon_sym_eq] = ACTIONS(1309),
    [anon_sym_iszero] = ACTIONS(1309),
    [anon_sym_and] = ACTIONS(1309),
    [anon_sym_or] = ACTIONS(1309),
    [anon_sym_xor] = ACTIONS(1309),
    [anon_sym_byte] = ACTIONS(1309),
    [anon_sym_shl] = ACTIONS(1309),
    [anon_sym_shr] = ACTIONS(1309),
    [anon_sym_sar] = ACTIONS(1309),
    [anon_sym_addmod] = ACTIONS(1309),
    [anon_sym_mulmod] = ACTIONS(1309),
    [anon_sym_signextend] = ACTIONS(1309),
    [anon_sym_keccak256] = ACTIONS(1309),
    [anon_sym_pop] = ACTIONS(1309),
    [anon_sym_mload] = ACTIONS(1309),
    [anon_sym_mcopy] = ACTIONS(1309),
    [anon_sym_tload] = ACTIONS(1309),
    [anon_sym_tstore] = ACTIONS(1309),
    [anon_sym_mstore] = ACTIONS(1309),
    [anon_sym_mstore8] = ACTIONS(1309),
    [anon_sym_sload] = ACTIONS(1309),
    [anon_sym_sstore] = ACTIONS(1309),
    [anon_sym_msize] = ACTIONS(1309),
    [anon_sym_gas] = ACTIONS(1309),
    [anon_sym_address] = ACTIONS(1309),
    [anon_sym_balance] = ACTIONS(1309),
    [anon_sym_selfbalance] = ACTIONS(1309),
    [anon_sym_caller] = ACTIONS(1309),
    [anon_sym_callvalue] = ACTIONS(1309),
    [anon_sym_calldataload] = ACTIONS(1309),
    [anon_sym_calldatasize] = ACTIONS(1309),
    [anon_sym_calldatacopy] = ACTIONS(1309),
    [anon_sym_extcodesize] = ACTIONS(1309),
    [anon_sym_extcodecopy] = ACTIONS(1309),
    [anon_sym_returndatasize] = ACTIONS(1309),
    [anon_sym_returndatacopy] = ACTIONS(1309),
    [anon_sym_extcodehash] = ACTIONS(1309),
    [anon_sym_create] = ACTIONS(1309),
    [anon_sym_create2] = ACTIONS(1309),
    [anon_sym_call] = ACTIONS(1309),
    [anon_sym_callcode] = ACTIONS(1309),
    [anon_sym_delegatecall] = ACTIONS(1309),
    [anon_sym_staticcall] = ACTIONS(1309),
    [anon_sym_return] = ACTIONS(1309),
    [anon_sym_revert] = ACTIONS(1309),
    [anon_sym_selfdestruct] = ACTIONS(1309),
    [anon_sym_invalid] = ACTIONS(1309),
    [anon_sym_log0] = ACTIONS(1309),
    [anon_sym_log1] = ACTIONS(1309),
    [anon_sym_log2] = ACTIONS(1309),
    [anon_sym_log3] = ACTIONS(1309),
    [anon_sym_log4] = ACTIONS(1309),
    [anon_sym_chainid] = ACTIONS(1309),
    [anon_sym_origin] = ACTIONS(1309),
    [anon_sym_gasprice] = ACTIONS(1309),
    [anon_sym_blockhash] = ACTIONS(1309),
    [anon_sym_blobhash] = ACTIONS(1309),
    [anon_sym_basefee] = ACTIONS(1309),
    [anon_sym_blobfee] = ACTIONS(1309),
    [anon_sym_coinbase] = ACTIONS(1309),
    [anon_sym_timestamp] = ACTIONS(1309),
    [anon_sym_number] = ACTIONS(1309),
    [anon_sym_difficulty] = ACTIONS(1309),
    [anon_sym_gaslimit] = ACTIONS(1309),
    [anon_sym_prevrandao] = ACTIONS(1309),
    [anon_sym_blobbasefee] = ACTIONS(1309),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(348)] = {
    [sym_identifier] = ACTIONS(1313),
    [anon_sym_LBRACE] = ACTIONS(1315),
    [anon_sym_RBRACE] = ACTIONS(1315),
    [anon_sym_for] = ACTIONS(1313),
    [sym_yul_leave] = ACTIONS(1313),
    [anon_sym_break] = ACTIONS(1313),
    [anon_sym_continue] = ACTIONS(1313),
    [sym_yul_decimal_number] = ACTIONS(1313),
    [sym_yul_hex_number] = ACTIONS(1315),
    [anon_sym_true] = ACTIONS(1313),
    [anon_sym_false] = ACTIONS(1313),
    [anon_sym_hex] = ACTIONS(1313),
    [anon_sym_DQUOTE] = ACTIONS(1315),
    [anon_sym_SQUOTE] = ACTIONS(1315),
    [anon_sym_let] = ACTIONS(1313),
    [anon_sym_if] = ACTIONS(1313),
    [anon_sym_switch] = ACTIONS(1313),
    [anon_sym_function] = ACTIONS(1313),
    [anon_sym_stop] = ACTIONS(1313),
    [anon_sym_add] = ACTIONS(1313),
    [anon_sym_sub] = ACTIONS(1313),
    [anon_sym_mul] = ACTIONS(1313),
    [anon_sym_div] = ACTIONS(1313),
    [anon_sym_sdiv] = ACTIONS(1313),
    [anon_sym_mod] = ACTIONS(1313),
    [anon_sym_smod] = ACTIONS(1313),
    [anon_sym_exp] = ACTIONS(1313),
    [anon_sym_not] = ACTIONS(1313),
    [anon_sym_lt] = ACTIONS(1313),
    [anon_sym_gt] = ACTIONS(1313),
    [anon_sym_slt] = ACTIONS(1313),
    [anon_sym_sgt] = ACTIONS(1313),
    [anon_sym_eq] = ACTIONS(1313),
    [anon_sym_iszero] = ACTIONS(1313),
    [anon_sym_and] = ACTIONS(1313),
    [anon_sym_or] = ACTIONS(1313),
    [anon_sym_xor] = ACTIONS(1313),
    [anon_sym_byte] = ACTIONS(1313),
    [anon_sym_shl] = ACTIONS(1313),
    [anon_sym_shr] = ACTIONS(1313),
    [anon_sym_sar] = ACTIONS(1313),
    [anon_sym_addmod] = ACTIONS(1313),
    [anon_sym_mulmod] = ACTIONS(1313),
    [anon_sym_signextend] = ACTIONS(1313),
    [anon_sym_keccak256] = ACTIONS(1313),
    [anon_sym_pop] = ACTIONS(1313),
    [anon_sym_mload] = ACTIONS(1313),
    [anon_sym_mcopy] = ACTIONS(1313),
    [anon_sym_tload] = ACTIONS(1313),
    [anon_sym_tstore] = ACTIONS(1313),
    [anon_sym_mstore] = ACTIONS(1313),
    [anon_sym_mstore8] = ACTIONS(1313),
    [anon_sym_sload] = ACTIONS(1313),
    [anon_sym_sstore] = ACTIONS(1313),
    [anon_sym_msize] = ACTIONS(1313),
    [anon_sym_gas] = ACTIONS(1313),
    [anon_sym_address] = ACTIONS(1313),
    [anon_sym_balance] = ACTIONS(1313),
    [anon_sym_selfbalance] = ACTIONS(1313),
    [anon_sym_caller] = ACTIONS(1313),
    [anon_sym_callvalue] = ACTIONS(1313),
    [anon_sym_calldataload] = ACTIONS(1313),
    [anon_sym_calldatasize] = ACTIONS(1313),
    [anon_sym_calldatacopy] = ACTIONS(1313),
    [anon_sym_extcodesize] = ACTIONS(1313),
    [anon_sym_extcodecopy] = ACTIONS(1313),
    [anon_sym_returndatasize] = ACTIONS(1313),
    [anon_sym_returndatacopy] = ACTIONS(1313),
    [anon_sym_extcodehash] = ACTIONS(1313),
    [anon_sym_create] = ACTIONS(1313),
    [anon_sym_create2] = ACTIONS(1313),
    [anon_sym_call] = ACTIONS(1313),
    [anon_sym_callcode] = ACTIONS(1313),
    [anon_sym_delegatecall] = ACTIONS(1313),
    [anon_sym_staticcall] = ACTIONS(1313),
    [anon_sym_return] = ACTIONS(1313),
    [anon_sym_revert] = ACTIONS(1313),
    [anon_sym_selfdestruct] = ACTIONS(1313),
    [anon_sym_invalid] = ACTIONS(1313),
    [anon_sym_log0] = ACTIONS(1313),
    [anon_sym_log1] = ACTIONS(1313),
    [anon_sym_log2] = ACTIONS(1313),
    [anon_sym_log3] = ACTIONS(1313),
    [anon_sym_log4] = ACTIONS(1313),
    [anon_sym_chainid] = ACTIONS(1313),
    [anon_sym_origin] = ACTIONS(1313),
    [anon_sym_gasprice] = ACTIONS(1313),
    [anon_sym_blockhash] = ACTIONS(1313),
    [anon_sym_blobhash] = ACTIONS(1313),
    [anon_sym_basefee] = ACTIONS(1313),
    [anon_sym_blobfee] = ACTIONS(1313),
    [anon_sym_coinbase] = ACTIONS(1313),
    [anon_sym_timestamp] = ACTIONS(1313),
    [anon_sym_number] = ACTIONS(1313),
    [anon_sym_difficulty] = ACTIONS(1313),
    [anon_sym_gaslimit] = ACTIONS(1313),
    [anon_sym_prevrandao] = ACTIONS(1313),
    [anon_sym_blobbasefee] = ACTIONS(1313),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(349)] = {
    [sym_identifier] = ACTIONS(1317),
    [sym_yul_decimal_number] = ACTIONS(1317),
    [sym_yul_hex_number] = ACTIONS(1319),
    [anon_sym_true] = ACTIONS(1317),
    [anon_sym_false] = ACTIONS(1317),
    [anon_sym_hex] = ACTIONS(1317),
    [anon_sym_DQUOTE] = ACTIONS(1319),
    [anon_sym_SQUOTE] = ACTIONS(1319),
    [anon_sym_stop] = ACTIONS(1317),
    [anon_sym_add] = ACTIONS(1317),
    [anon_sym_sub] = ACTIONS(1317),
    [anon_sym_mul] = ACTIONS(1317),
    [anon_sym_div] = ACTIONS(1317),
    [anon_sym_sdiv] = ACTIONS(1317),
    [anon_sym_mod] = ACTIONS(1317),
    [anon_sym_smod] = ACTIONS(1317),
    [anon_sym_exp] = ACTIONS(1317),
    [anon_sym_not] = ACTIONS(1317),
    [anon_sym_lt] = ACTIONS(1317),
    [anon_sym_gt] = ACTIONS(1317),
    [anon_sym_slt] = ACTIONS(1317),
    [anon_sym_sgt] = ACTIONS(1317),
    [anon_sym_eq] = ACTIONS(1317),
    [anon_sym_iszero] = ACTIONS(1317),
    [anon_sym_and] = ACTIONS(1317),
    [anon_sym_or] = ACTIONS(1317),
    [anon_sym_xor] = ACTIONS(1317),
    [anon_sym_byte] = ACTIONS(1317),
    [anon_sym_shl] = ACTIONS(1317),
    [anon_sym_shr] = ACTIONS(1317),
    [anon_sym_sar] = ACTIONS(1317),
    [anon_sym_addmod] = ACTIONS(1317),
    [anon_sym_mulmod] = ACTIONS(1317),
    [anon_sym_signextend] = ACTIONS(1317),
    [anon_sym_keccak256] = ACTIONS(1317),
    [anon_sym_pop] = ACTIONS(1317),
    [anon_sym_mload] = ACTIONS(1317),
    [anon_sym_mcopy] = ACTIONS(1317),
    [anon_sym_tload] = ACTIONS(1317),
    [anon_sym_tstore] = ACTIONS(1317),
    [anon_sym_mstore] = ACTIONS(1317),
    [anon_sym_mstore8] = ACTIONS(1317),
    [anon_sym_sload] = ACTIONS(1317),
    [anon_sym_sstore] = ACTIONS(1317),
    [anon_sym_msize] = ACTIONS(1317),
    [anon_sym_gas] = ACTIONS(1317),
    [anon_sym_address] = ACTIONS(1317),
    [anon_sym_balance] = ACTIONS(1317),
    [anon_sym_selfbalance] = ACTIONS(1317),
    [anon_sym_caller] = ACTIONS(1317),
    [anon_sym_callvalue] = ACTIONS(1317),
    [anon_sym_calldataload] = ACTIONS(1317),
    [anon_sym_calldatasize] = ACTIONS(1317),
    [anon_sym_calldatacopy] = ACTIONS(1317),
    [anon_sym_extcodesize] = ACTIONS(1317),
    [anon_sym_extcodecopy] = ACTIONS(1317),
    [anon_sym_returndatasize] = ACTIONS(1317),
    [anon_sym_returndatacopy] = ACTIONS(1317),
    [anon_sym_extcodehash] = ACTIONS(1317),
    [anon_sym_create] = ACTIONS(1317),
    [anon_sym_create2] = ACTIONS(1317),
    [anon_sym_call] = ACTIONS(1317),
    [anon_sym_callcode] = ACTIONS(1317),
    [anon_sym_delegatecall] = ACTIONS(1317),
    [anon_sym_staticcall] = ACTIONS(1317),
    [anon_sym_return] = ACTIONS(1317),
    [anon_sym_revert] = ACTIONS(1317),
    [anon_sym_selfdestruct] = ACTIONS(1317),
    [anon_sym_invalid] = ACTIONS(1317),
    [anon_sym_log0] = ACTIONS(1317),
    [anon_sym_log1] = ACTIONS(1317),
    [anon_sym_log2] = ACTIONS(1317),
    [anon_sym_log3] = ACTIONS(1317),
    [anon_sym_log4] = ACTIONS(1317),
    [anon_sym_chainid] = ACTIONS(1317),
    [anon_sym_origin] = ACTIONS(1317),
    [anon_sym_gasprice] = ACTIONS(1317),
    [anon_sym_blockhash] = ACTIONS(1317),
    [anon_sym_blobhash] = ACTIONS(1317),
    [anon_sym_basefee] = ACTIONS(1317),
    [anon_sym_blobfee] = ACTIONS(1317),
    [anon_sym_coinbase] = ACTIONS(1317),
    [anon_sym_timestamp] = ACTIONS(1317),
    [anon_sym_number] = ACTIONS(1317),
    [anon_sym_difficulty] = ACTIONS(1317),
    [anon_sym_gaslimit] = ACTIONS(1317),
    [anon_sym_prevrandao] = ACTIONS(1317),
    [anon_sym_blobbasefee] = ACTIONS(1317),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(350)] = {
    [sym_yul_identifier] = STATE(959),
    [sym_yul_function_call] = STATE(334),
    [sym_yul_evm_builtin] = STATE(284),
    [sym_identifier] = ACTIONS(1167),
    [anon_sym_stop] = ACTIONS(924),
    [anon_sym_add] = ACTIONS(924),
    [anon_sym_sub] = ACTIONS(924),
    [anon_sym_mul] = ACTIONS(924),
    [anon_sym_div] = ACTIONS(924),
    [anon_sym_sdiv] = ACTIONS(924),
    [anon_sym_mod] = ACTIONS(924),
    [anon_sym_smod] = ACTIONS(924),
    [anon_sym_exp] = ACTIONS(924),
    [anon_sym_not] = ACTIONS(924),
    [anon_sym_lt] = ACTIONS(924),
    [anon_sym_gt] = ACTIONS(924),
    [anon_sym_slt] = ACTIONS(924),
    [anon_sym_sgt] = ACTIONS(924),
    [anon_sym_eq] = ACTIONS(924),
    [anon_sym_iszero] = ACTIONS(924),
    [anon_sym_and] = ACTIONS(924),
    [anon_sym_or] = ACTIONS(924),
    [anon_sym_xor] = ACTIONS(924),
    [anon_sym_byte] = ACTIONS(924),
    [anon_sym_shl] = ACTIONS(924),
    [anon_sym_shr] = ACTIONS(924),
    [anon_sym_sar] = ACTIONS(924),
    [anon_sym_addmod] = ACTIONS(924),
    [anon_sym_mulmod] = ACTIONS(924),
    [anon_sym_signextend] = ACTIONS(924),
    [anon_sym_keccak256] = ACTIONS(924),
    [anon_sym_pop] = ACTIONS(924),
    [anon_sym_mload] = ACTIONS(924),
    [anon_sym_mcopy] = ACTIONS(924),
    [anon_sym_tload] = ACTIONS(924),
    [anon_sym_tstore] = ACTIONS(924),
    [anon_sym_mstore] = ACTIONS(924),
    [anon_sym_mstore8] = ACTIONS(924),
    [anon_sym_sload] = ACTIONS(924),
    [anon_sym_sstore] = ACTIONS(924),
    [anon_sym_msize] = ACTIONS(924),
    [anon_sym_gas] = ACTIONS(924),
    [anon_sym_address] = ACTIONS(924),
    [anon_sym_balance] = ACTIONS(924),
    [anon_sym_selfbalance] = ACTIONS(924),
    [anon_sym_caller] = ACTIONS(924),
    [anon_sym_callvalue] = ACTIONS(924),
    [anon_sym_calldataload] = ACTIONS(924),
    [anon_sym_calldatasize] = ACTIONS(924),
    [anon_sym_calldatacopy] = ACTIONS(924),
    [anon_sym_extcodesize] = ACTIONS(924),
    [anon_sym_extcodecopy] = ACTIONS(924),
    [anon_sym_returndatasize] = ACTIONS(924),
    [anon_sym_returndatacopy] = ACTIONS(924),
    [anon_sym_extcodehash] = ACTIONS(924),
    [anon_sym_create] = ACTIONS(924),
    [anon_sym_create2] = ACTIONS(924),
    [anon_sym_call] = ACTIONS(924),
    [anon_sym_callcode] = ACTIONS(924),
    [anon_sym_delegatecall] = ACTIONS(924),
    [anon_sym_staticcall] = ACTIONS(924),
    [anon_sym_return] = ACTIONS(924),
    [anon_sym_revert] = ACTIONS(924),
    [anon_sym_selfdestruct] = ACTIONS(924),
    [anon_sym_invalid] = ACTIONS(924),
    [anon_sym_log0] = ACTIONS(924),
    [anon_sym_log1] = ACTIONS(924),
    [anon_sym_log2] = ACTIONS(924),
    [anon_sym_log3] = ACTIONS(924),
    [anon_sym_log4] = ACTIONS(924),
    [anon_sym_chainid] = ACTIONS(924),
    [anon_sym_origin] = ACTIONS(924),
    [anon_sym_gasprice] = ACTIONS(924),
    [anon_sym_blockhash] = ACTIONS(924),
    [anon_sym_blobhash] = ACTIONS(924),
    [anon_sym_basefee] = ACTIONS(924),
    [anon_sym_blobfee] = ACTIONS(924),
    [anon_sym_coinbase] = ACTIONS(924),
    [anon_sym_timestamp] = ACTIONS(924),
    [anon_sym_number] = ACTIONS(924),
    [anon_sym_difficulty] = ACTIONS(924),
    [anon_sym_gaslimit] = ACTIONS(924),
    [anon_sym_prevrandao] = ACTIONS(924),
    [anon_sym_blobbasefee] = ACTIONS(924),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(351)] = {
    [sym_yul_identifier] = STATE(959),
    [sym_yul_function_call] = STATE(335),
    [sym_yul_evm_builtin] = STATE(284),
    [sym_identifier] = ACTIONS(1167),
    [anon_sym_stop] = ACTIONS(924),
    [anon_sym_add] = ACTIONS(924),
    [anon_sym_sub] = ACTIONS(924),
    [anon_sym_mul] = ACTIONS(924),
    [anon_sym_div] = ACTIONS(924),
    [anon_sym_sdiv] = ACTIONS(924),
    [anon_sym_mod] = ACTIONS(924),
    [anon_sym_smod] = ACTIONS(924),
    [anon_sym_exp] = ACTIONS(924),
    [anon_sym_not] = ACTIONS(924),
    [anon_sym_lt] = ACTIONS(924),
    [anon_sym_gt] = ACTIONS(924),
    [anon_sym_slt] = ACTIONS(924),
    [anon_sym_sgt] = ACTIONS(924),
    [anon_sym_eq] = ACTIONS(924),
    [anon_sym_iszero] = ACTIONS(924),
    [anon_sym_and] = ACTIONS(924),
    [anon_sym_or] = ACTIONS(924),
    [anon_sym_xor] = ACTIONS(924),
    [anon_sym_byte] = ACTIONS(924),
    [anon_sym_shl] = ACTIONS(924),
    [anon_sym_shr] = ACTIONS(924),
    [anon_sym_sar] = ACTIONS(924),
    [anon_sym_addmod] = ACTIONS(924),
    [anon_sym_mulmod] = ACTIONS(924),
    [anon_sym_signextend] = ACTIONS(924),
    [anon_sym_keccak256] = ACTIONS(924),
    [anon_sym_pop] = ACTIONS(924),
    [anon_sym_mload] = ACTIONS(924),
    [anon_sym_mcopy] = ACTIONS(924),
    [anon_sym_tload] = ACTIONS(924),
    [anon_sym_tstore] = ACTIONS(924),
    [anon_sym_mstore] = ACTIONS(924),
    [anon_sym_mstore8] = ACTIONS(924),
    [anon_sym_sload] = ACTIONS(924),
    [anon_sym_sstore] = ACTIONS(924),
    [anon_sym_msize] = ACTIONS(924),
    [anon_sym_gas] = ACTIONS(924),
    [anon_sym_address] = ACTIONS(924),
    [anon_sym_balance] = ACTIONS(924),
    [anon_sym_selfbalance] = ACTIONS(924),
    [anon_sym_caller] = ACTIONS(924),
    [anon_sym_callvalue] = ACTIONS(924),
    [anon_sym_calldataload] = ACTIONS(924),
    [anon_sym_calldatasize] = ACTIONS(924),
    [anon_sym_calldatacopy] = ACTIONS(924),
    [anon_sym_extcodesize] = ACTIONS(924),
    [anon_sym_extcodecopy] = ACTIONS(924),
    [anon_sym_returndatasize] = ACTIONS(924),
    [anon_sym_returndatacopy] = ACTIONS(924),
    [anon_sym_extcodehash] = ACTIONS(924),
    [anon_sym_create] = ACTIONS(924),
    [anon_sym_create2] = ACTIONS(924),
    [anon_sym_call] = ACTIONS(924),
    [anon_sym_callcode] = ACTIONS(924),
    [anon_sym_delegatecall] = ACTIONS(924),
    [anon_sym_staticcall] = ACTIONS(924),
    [anon_sym_return] = ACTIONS(924),
    [anon_sym_revert] = ACTIONS(924),
    [anon_sym_selfdestruct] = ACTIONS(924),
    [anon_sym_invalid] = ACTIONS(924),
    [anon_sym_log0] = ACTIONS(924),
    [anon_sym_log1] = ACTIONS(924),
    [anon_sym_log2] = ACTIONS(924),
    [anon_sym_log3] = ACTIONS(924),
    [anon_sym_log4] = ACTIONS(924),
    [anon_sym_chainid] = ACTIONS(924),
    [anon_sym_origin] = ACTIONS(924),
    [anon_sym_gasprice] = ACTIONS(924),
    [anon_sym_blockhash] = ACTIONS(924),
    [anon_sym_blobhash] = ACTIONS(924),
    [anon_sym_basefee] = ACTIONS(924),
    [anon_sym_blobfee] = ACTIONS(924),
    [anon_sym_coinbase] = ACTIONS(924),
    [anon_sym_timestamp] = ACTIONS(924),
    [anon_sym_number] = ACTIONS(924),
    [anon_sym_difficulty] = ACTIONS(924),
    [anon_sym_gaslimit] = ACTIONS(924),
    [anon_sym_prevrandao] = ACTIONS(924),
    [anon_sym_blobbasefee] = ACTIONS(924),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(352)] = {
    [sym_yul_identifier] = STATE(959),
    [sym_yul_function_call] = STATE(338),
    [sym_yul_evm_builtin] = STATE(284),
    [sym_identifier] = ACTIONS(1167),
    [anon_sym_stop] = ACTIONS(924),
    [anon_sym_add] = ACTIONS(924),
    [anon_sym_sub] = ACTIONS(924),
    [anon_sym_mul] = ACTIONS(924),
    [anon_sym_div] = ACTIONS(924),
    [anon_sym_sdiv] = ACTIONS(924),
    [anon_sym_mod] = ACTIONS(924),
    [anon_sym_smod] = ACTIONS(924),
    [anon_sym_exp] = ACTIONS(924),
    [anon_sym_not] = ACTIONS(924),
    [anon_sym_lt] = ACTIONS(924),
    [anon_sym_gt] = ACTIONS(924),
    [anon_sym_slt] = ACTIONS(924),
    [anon_sym_sgt] = ACTIONS(924),
    [anon_sym_eq] = ACTIONS(924),
    [anon_sym_iszero] = ACTIONS(924),
    [anon_sym_and] = ACTIONS(924),
    [anon_sym_or] = ACTIONS(924),
    [anon_sym_xor] = ACTIONS(924),
    [anon_sym_byte] = ACTIONS(924),
    [anon_sym_shl] = ACTIONS(924),
    [anon_sym_shr] = ACTIONS(924),
    [anon_sym_sar] = ACTIONS(924),
    [anon_sym_addmod] = ACTIONS(924),
    [anon_sym_mulmod] = ACTIONS(924),
    [anon_sym_signextend] = ACTIONS(924),
    [anon_sym_keccak256] = ACTIONS(924),
    [anon_sym_pop] = ACTIONS(924),
    [anon_sym_mload] = ACTIONS(924),
    [anon_sym_mcopy] = ACTIONS(924),
    [anon_sym_tload] = ACTIONS(924),
    [anon_sym_tstore] = ACTIONS(924),
    [anon_sym_mstore] = ACTIONS(924),
    [anon_sym_mstore8] = ACTIONS(924),
    [anon_sym_sload] = ACTIONS(924),
    [anon_sym_sstore] = ACTIONS(924),
    [anon_sym_msize] = ACTIONS(924),
    [anon_sym_gas] = ACTIONS(924),
    [anon_sym_address] = ACTIONS(924),
    [anon_sym_balance] = ACTIONS(924),
    [anon_sym_selfbalance] = ACTIONS(924),
    [anon_sym_caller] = ACTIONS(924),
    [anon_sym_callvalue] = ACTIONS(924),
    [anon_sym_calldataload] = ACTIONS(924),
    [anon_sym_calldatasize] = ACTIONS(924),
    [anon_sym_calldatacopy] = ACTIONS(924),
    [anon_sym_extcodesize] = ACTIONS(924),
    [anon_sym_extcodecopy] = ACTIONS(924),
    [anon_sym_returndatasize] = ACTIONS(924),
    [anon_sym_returndatacopy] = ACTIONS(924),
    [anon_sym_extcodehash] = ACTIONS(924),
    [anon_sym_create] = ACTIONS(924),
    [anon_sym_create2] = ACTIONS(924),
    [anon_sym_call] = ACTIONS(924),
    [anon_sym_callcode] = ACTIONS(924),
    [anon_sym_delegatecall] = ACTIONS(924),
    [anon_sym_staticcall] = ACTIONS(924),
    [anon_sym_return] = ACTIONS(924),
    [anon_sym_revert] = ACTIONS(924),
    [anon_sym_selfdestruct] = ACTIONS(924),
    [anon_sym_invalid] = ACTIONS(924),
    [anon_sym_log0] = ACTIONS(924),
    [anon_sym_log1] = ACTIONS(924),
    [anon_sym_log2] = ACTIONS(924),
    [anon_sym_log3] = ACTIONS(924),
    [anon_sym_log4] = ACTIONS(924),
    [anon_sym_chainid] = ACTIONS(924),
    [anon_sym_origin] = ACTIONS(924),
    [anon_sym_gasprice] = ACTIONS(924),
    [anon_sym_blockhash] = ACTIONS(924),
    [anon_sym_blobhash] = ACTIONS(924),
    [anon_sym_basefee] = ACTIONS(924),
    [anon_sym_blobfee] = ACTIONS(924),
    [anon_sym_coinbase] = ACTIONS(924),
    [anon_sym_timestamp] = ACTIONS(924),
    [anon_sym_number] = ACTIONS(924),
    [anon_sym_difficulty] = ACTIONS(924),
    [anon_sym_gaslimit] = ACTIONS(924),
    [anon_sym_prevrandao] = ACTIONS(924),
    [anon_sym_blobbasefee] = ACTIONS(924),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(353)] = {
    [sym_yul_identifier] = STATE(959),
    [sym_yul_function_call] = STATE(330),
    [sym_yul_evm_builtin] = STATE(284),
    [sym_identifier] = ACTIONS(1167),
    [anon_sym_stop] = ACTIONS(924),
    [anon_sym_add] = ACTIONS(924),
    [anon_sym_sub] = ACTIONS(924),
    [anon_sym_mul] = ACTIONS(924),
    [anon_sym_div] = ACTIONS(924),
    [anon_sym_sdiv] = ACTIONS(924),
    [anon_sym_mod] = ACTIONS(924),
    [anon_sym_smod] = ACTIONS(924),
    [anon_sym_exp] = ACTIONS(924),
    [anon_sym_not] = ACTIONS(924),
    [anon_sym_lt] = ACTIONS(924),
    [anon_sym_gt] = ACTIONS(924),
    [anon_sym_slt] = ACTIONS(924),
    [anon_sym_sgt] = ACTIONS(924),
    [anon_sym_eq] = ACTIONS(924),
    [anon_sym_iszero] = ACTIONS(924),
    [anon_sym_and] = ACTIONS(924),
    [anon_sym_or] = ACTIONS(924),
    [anon_sym_xor] = ACTIONS(924),
    [anon_sym_byte] = ACTIONS(924),
    [anon_sym_shl] = ACTIONS(924),
    [anon_sym_shr] = ACTIONS(924),
    [anon_sym_sar] = ACTIONS(924),
    [anon_sym_addmod] = ACTIONS(924),
    [anon_sym_mulmod] = ACTIONS(924),
    [anon_sym_signextend] = ACTIONS(924),
    [anon_sym_keccak256] = ACTIONS(924),
    [anon_sym_pop] = ACTIONS(924),
    [anon_sym_mload] = ACTIONS(924),
    [anon_sym_mcopy] = ACTIONS(924),
    [anon_sym_tload] = ACTIONS(924),
    [anon_sym_tstore] = ACTIONS(924),
    [anon_sym_mstore] = ACTIONS(924),
    [anon_sym_mstore8] = ACTIONS(924),
    [anon_sym_sload] = ACTIONS(924),
    [anon_sym_sstore] = ACTIONS(924),
    [anon_sym_msize] = ACTIONS(924),
    [anon_sym_gas] = ACTIONS(924),
    [anon_sym_address] = ACTIONS(924),
    [anon_sym_balance] = ACTIONS(924),
    [anon_sym_selfbalance] = ACTIONS(924),
    [anon_sym_caller] = ACTIONS(924),
    [anon_sym_callvalue] = ACTIONS(924),
    [anon_sym_calldataload] = ACTIONS(924),
    [anon_sym_calldatasize] = ACTIONS(924),
    [anon_sym_calldatacopy] = ACTIONS(924),
    [anon_sym_extcodesize] = ACTIONS(924),
    [anon_sym_extcodecopy] = ACTIONS(924),
    [anon_sym_returndatasize] = ACTIONS(924),
    [anon_sym_returndatacopy] = ACTIONS(924),
    [anon_sym_extcodehash] = ACTIONS(924),
    [anon_sym_create] = ACTIONS(924),
    [anon_sym_create2] = ACTIONS(924),
    [anon_sym_call] = ACTIONS(924),
    [anon_sym_callcode] = ACTIONS(924),
    [anon_sym_delegatecall] = ACTIONS(924),
    [anon_sym_staticcall] = ACTIONS(924),
    [anon_sym_return] = ACTIONS(924),
    [anon_sym_revert] = ACTIONS(924),
    [anon_sym_selfdestruct] = ACTIONS(924),
    [anon_sym_invalid] = ACTIONS(924),
    [anon_sym_log0] = ACTIONS(924),
    [anon_sym_log1] = ACTIONS(924),
    [anon_sym_log2] = ACTIONS(924),
    [anon_sym_log3] = ACTIONS(924),
    [anon_sym_log4] = ACTIONS(924),
    [anon_sym_chainid] = ACTIONS(924),
    [anon_sym_origin] = ACTIONS(924),
    [anon_sym_gasprice] = ACTIONS(924),
    [anon_sym_blockhash] = ACTIONS(924),
    [anon_sym_blobhash] = ACTIONS(924),
    [anon_sym_basefee] = ACTIONS(924),
    [anon_sym_blobfee] = ACTIONS(924),
    [anon_sym_coinbase] = ACTIONS(924),
    [anon_sym_timestamp] = ACTIONS(924),
    [anon_sym_number] = ACTIONS(924),
    [anon_sym_difficulty] = ACTIONS(924),
    [anon_sym_gaslimit] = ACTIONS(924),
    [anon_sym_prevrandao] = ACTIONS(924),
    [anon_sym_blobbasefee] = ACTIONS(924),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(354)] = {
    [sym_yul_identifier] = STATE(959),
    [sym_yul_function_call] = STATE(331),
    [sym_yul_evm_builtin] = STATE(284),
    [sym_identifier] = ACTIONS(1167),
    [anon_sym_stop] = ACTIONS(924),
    [anon_sym_add] = ACTIONS(924),
    [anon_sym_sub] = ACTIONS(924),
    [anon_sym_mul] = ACTIONS(924),
    [anon_sym_div] = ACTIONS(924),
    [anon_sym_sdiv] = ACTIONS(924),
    [anon_sym_mod] = ACTIONS(924),
    [anon_sym_smod] = ACTIONS(924),
    [anon_sym_exp] = ACTIONS(924),
    [anon_sym_not] = ACTIONS(924),
    [anon_sym_lt] = ACTIONS(924),
    [anon_sym_gt] = ACTIONS(924),
    [anon_sym_slt] = ACTIONS(924),
    [anon_sym_sgt] = ACTIONS(924),
    [anon_sym_eq] = ACTIONS(924),
    [anon_sym_iszero] = ACTIONS(924),
    [anon_sym_and] = ACTIONS(924),
    [anon_sym_or] = ACTIONS(924),
    [anon_sym_xor] = ACTIONS(924),
    [anon_sym_byte] = ACTIONS(924),
    [anon_sym_shl] = ACTIONS(924),
    [anon_sym_shr] = ACTIONS(924),
    [anon_sym_sar] = ACTIONS(924),
    [anon_sym_addmod] = ACTIONS(924),
    [anon_sym_mulmod] = ACTIONS(924),
    [anon_sym_signextend] = ACTIONS(924),
    [anon_sym_keccak256] = ACTIONS(924),
    [anon_sym_pop] = ACTIONS(924),
    [anon_sym_mload] = ACTIONS(924),
    [anon_sym_mcopy] = ACTIONS(924),
    [anon_sym_tload] = ACTIONS(924),
    [anon_sym_tstore] = ACTIONS(924),
    [anon_sym_mstore] = ACTIONS(924),
    [anon_sym_mstore8] = ACTIONS(924),
    [anon_sym_sload] = ACTIONS(924),
    [anon_sym_sstore] = ACTIONS(924),
    [anon_sym_msize] = ACTIONS(924),
    [anon_sym_gas] = ACTIONS(924),
    [anon_sym_address] = ACTIONS(924),
    [anon_sym_balance] = ACTIONS(924),
    [anon_sym_selfbalance] = ACTIONS(924),
    [anon_sym_caller] = ACTIONS(924),
    [anon_sym_callvalue] = ACTIONS(924),
    [anon_sym_calldataload] = ACTIONS(924),
    [anon_sym_calldatasize] = ACTIONS(924),
    [anon_sym_calldatacopy] = ACTIONS(924),
    [anon_sym_extcodesize] = ACTIONS(924),
    [anon_sym_extcodecopy] = ACTIONS(924),
    [anon_sym_returndatasize] = ACTIONS(924),
    [anon_sym_returndatacopy] = ACTIONS(924),
    [anon_sym_extcodehash] = ACTIONS(924),
    [anon_sym_create] = ACTIONS(924),
    [anon_sym_create2] = ACTIONS(924),
    [anon_sym_call] = ACTIONS(924),
    [anon_sym_callcode] = ACTIONS(924),
    [anon_sym_delegatecall] = ACTIONS(924),
    [anon_sym_staticcall] = ACTIONS(924),
    [anon_sym_return] = ACTIONS(924),
    [anon_sym_revert] = ACTIONS(924),
    [anon_sym_selfdestruct] = ACTIONS(924),
    [anon_sym_invalid] = ACTIONS(924),
    [anon_sym_log0] = ACTIONS(924),
    [anon_sym_log1] = ACTIONS(924),
    [anon_sym_log2] = ACTIONS(924),
    [anon_sym_log3] = ACTIONS(924),
    [anon_sym_log4] = ACTIONS(924),
    [anon_sym_chainid] = ACTIONS(924),
    [anon_sym_origin] = ACTIONS(924),
    [anon_sym_gasprice] = ACTIONS(924),
    [anon_sym_blockhash] = ACTIONS(924),
    [anon_sym_blobhash] = ACTIONS(924),
    [anon_sym_basefee] = ACTIONS(924),
    [anon_sym_blobfee] = ACTIONS(924),
    [anon_sym_coinbase] = ACTIONS(924),
    [anon_sym_timestamp] = ACTIONS(924),
    [anon_sym_number] = ACTIONS(924),
    [anon_sym_difficulty] = ACTIONS(924),
    [anon_sym_gaslimit] = ACTIONS(924),
    [anon_sym_prevrandao] = ACTIONS(924),
    [anon_sym_blobbasefee] = ACTIONS(924),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(355)] = {
    [sym_yul_identifier] = STATE(959),
    [sym_yul_function_call] = STATE(340),
    [sym_yul_evm_builtin] = STATE(284),
    [sym_identifier] = ACTIONS(1167),
    [anon_sym_stop] = ACTIONS(924),
    [anon_sym_add] = ACTIONS(924),
    [anon_sym_sub] = ACTIONS(924),
    [anon_sym_mul] = ACTIONS(924),
    [anon_sym_div] = ACTIONS(924),
    [anon_sym_sdiv] = ACTIONS(924),
    [anon_sym_mod] = ACTIONS(924),
    [anon_sym_smod] = ACTIONS(924),
    [anon_sym_exp] = ACTIONS(924),
    [anon_sym_not] = ACTIONS(924),
    [anon_sym_lt] = ACTIONS(924),
    [anon_sym_gt] = ACTIONS(924),
    [anon_sym_slt] = ACTIONS(924),
    [anon_sym_sgt] = ACTIONS(924),
    [anon_sym_eq] = ACTIONS(924),
    [anon_sym_iszero] = ACTIONS(924),
    [anon_sym_and] = ACTIONS(924),
    [anon_sym_or] = ACTIONS(924),
    [anon_sym_xor] = ACTIONS(924),
    [anon_sym_byte] = ACTIONS(924),
    [anon_sym_shl] = ACTIONS(924),
    [anon_sym_shr] = ACTIONS(924),
    [anon_sym_sar] = ACTIONS(924),
    [anon_sym_addmod] = ACTIONS(924),
    [anon_sym_mulmod] = ACTIONS(924),
    [anon_sym_signextend] = ACTIONS(924),
    [anon_sym_keccak256] = ACTIONS(924),
    [anon_sym_pop] = ACTIONS(924),
    [anon_sym_mload] = ACTIONS(924),
    [anon_sym_mcopy] = ACTIONS(924),
    [anon_sym_tload] = ACTIONS(924),
    [anon_sym_tstore] = ACTIONS(924),
    [anon_sym_mstore] = ACTIONS(924),
    [anon_sym_mstore8] = ACTIONS(924),
    [anon_sym_sload] = ACTIONS(924),
    [anon_sym_sstore] = ACTIONS(924),
    [anon_sym_msize] = ACTIONS(924),
    [anon_sym_gas] = ACTIONS(924),
    [anon_sym_address] = ACTIONS(924),
    [anon_sym_balance] = ACTIONS(924),
    [anon_sym_selfbalance] = ACTIONS(924),
    [anon_sym_caller] = ACTIONS(924),
    [anon_sym_callvalue] = ACTIONS(924),
    [anon_sym_calldataload] = ACTIONS(924),
    [anon_sym_calldatasize] = ACTIONS(924),
    [anon_sym_calldatacopy] = ACTIONS(924),
    [anon_sym_extcodesize] = ACTIONS(924),
    [anon_sym_extcodecopy] = ACTIONS(924),
    [anon_sym_returndatasize] = ACTIONS(924),
    [anon_sym_returndatacopy] = ACTIONS(924),
    [anon_sym_extcodehash] = ACTIONS(924),
    [anon_sym_create] = ACTIONS(924),
    [anon_sym_create2] = ACTIONS(924),
    [anon_sym_call] = ACTIONS(924),
    [anon_sym_callcode] = ACTIONS(924),
    [anon_sym_delegatecall] = ACTIONS(924),
    [anon_sym_staticcall] = ACTIONS(924),
    [anon_sym_return] = ACTIONS(924),
    [anon_sym_revert] = ACTIONS(924),
    [anon_sym_selfdestruct] = ACTIONS(924),
    [anon_sym_invalid] = ACTIONS(924),
    [anon_sym_log0] = ACTIONS(924),
    [anon_sym_log1] = ACTIONS(924),
    [anon_sym_log2] = ACTIONS(924),
    [anon_sym_log3] = ACTIONS(924),
    [anon_sym_log4] = ACTIONS(924),
    [anon_sym_chainid] = ACTIONS(924),
    [anon_sym_origin] = ACTIONS(924),
    [anon_sym_gasprice] = ACTIONS(924),
    [anon_sym_blockhash] = ACTIONS(924),
    [anon_sym_blobhash] = ACTIONS(924),
    [anon_sym_basefee] = ACTIONS(924),
    [anon_sym_blobfee] = ACTIONS(924),
    [anon_sym_coinbase] = ACTIONS(924),
    [anon_sym_timestamp] = ACTIONS(924),
    [anon_sym_number] = ACTIONS(924),
    [anon_sym_difficulty] = ACTIONS(924),
    [anon_sym_gaslimit] = ACTIONS(924),
    [anon_sym_prevrandao] = ACTIONS(924),
    [anon_sym_blobbasefee] = ACTIONS(924),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(356)] = {
    [aux_sym__identifier_path_repeat1] = STATE(356),
    [sym_identifier] = ACTIONS(1321),
    [anon_sym_PIPE_PIPE] = ACTIONS(1323),
    [anon_sym_DASH] = ACTIONS(1321),
    [anon_sym_LT_EQ] = ACTIONS(1323),
    [anon_sym_LT] = ACTIONS(1321),
    [anon_sym_CARET] = ACTIONS(1321),
    [anon_sym_GT] = ACTIONS(1321),
    [anon_sym_GT_EQ] = ACTIONS(1323),
    [anon_sym_EQ] = ACTIONS(1321),
    [anon_sym_STAR] = ACTIONS(1321),
    [anon_sym_LBRACE] = ACTIONS(1323),
    [anon_sym_COMMA] = ACTIONS(1323),
    [anon_sym_RBRACE] = ACTIONS(1323),
    [anon_sym_as] = ACTIONS(1321),
    [anon_sym_is] = ACTIONS(1321),
    [anon_sym_constant] = ACTIONS(1321),
    [anon_sym_LPAREN] = ACTIONS(1323),
    [anon_sym_RPAREN] = ACTIONS(1323),
    [anon_sym_layout] = ACTIONS(1321),
    [anon_sym_indexed] = ACTIONS(1321),
    [anon_sym_AMP] = ACTIONS(1321),
    [anon_sym_PIPE] = ACTIONS(1321),
    [anon_sym_PLUS] = ACTIONS(1321),
    [anon_sym_SLASH] = ACTIONS(1321),
    [anon_sym_PERCENT] = ACTIONS(1321),
    [anon_sym_EQ_EQ] = ACTIONS(1323),
    [anon_sym_BANG_EQ] = ACTIONS(1323),
    [anon_sym_for] = ACTIONS(1321),
    [anon_sym_global] = ACTIONS(1321),
    [anon_sym_COLON] = ACTIONS(1323),
    [anon_sym_DOT] = ACTIONS(1325),
    [sym_unchecked] = ACTIONS(1321),
    [anon_sym_memory] = ACTIONS(1321),
    [anon_sym_storage] = ACTIONS(1321),
    [anon_sym_calldata] = ACTIONS(1321),
    [anon_sym_returns] = ACTIONS(1321),
    [anon_sym_public] = ACTIONS(1321),
    [anon_sym_internal] = ACTIONS(1321),
    [anon_sym_private] = ACTIONS(1321),
    [anon_sym_external] = ACTIONS(1321),
    [anon_sym_pure] = ACTIONS(1321),
    [anon_sym_view] = ACTIONS(1321),
    [anon_sym_payable] = ACTIONS(1321),
    [anon_sym_transient] = ACTIONS(1321),
    [sym_immutable] = ACTIONS(1321),
    [anon_sym_override] = ACTIONS(1321),
    [sym_virtual] = ACTIONS(1321),
    [anon_sym_QMARK] = ACTIONS(1323),
    [anon_sym_LBRACK] = ACTIONS(1323),
    [anon_sym_RBRACK] = ACTIONS(1323),
    [anon_sym_AMP_AMP] = ACTIONS(1323),
    [anon_sym_LT_LT] = ACTIONS(1321),
    [anon_sym_GT_GT] = ACTIONS(1321),
    [anon_sym_STAR_STAR] = ACTIONS(1323),
    [anon_sym_PLUS_PLUS] = ACTIONS(1323),
    [anon_sym_DASH_DASH] = ACTIONS(1323),
    [anon_sym_PLUS_EQ] = ACTIONS(1323),
    [anon_sym_DASH_EQ] = ACTIONS(1323),
    [anon_sym_STAR_EQ] = ACTIONS(1323),
    [anon_sym_SLASH_EQ] = ACTIONS(1323),
    [anon_sym_PERCENT_EQ] = ACTIONS(1323),
    [anon_sym_CARET_EQ] = ACTIONS(1323),
    [anon_sym_AMP_EQ] = ACTIONS(1323),
    [anon_sym_PIPE_EQ] = ACTIONS(1323),
    [anon_sym_GT_GT_EQ] = ACTIONS(1323),
    [anon_sym_LT_LT_EQ] = ACTIONS(1323),
    [anon_sym_EQ_GT] = ACTIONS(1323),
    [anon_sym_SEMI] = ACTIONS(1323),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(357)] = {
    [sym_visibility] = STATE(359),
    [sym_state_mutability] = STATE(359),
    [sym__return_parameters] = STATE(378),
    [aux_sym__function_type_repeat1] = STATE(359),
    [sym_identifier] = ACTIONS(1328),
    [anon_sym_PIPE_PIPE] = ACTIONS(1330),
    [anon_sym_DASH] = ACTIONS(1328),
    [anon_sym_LT_EQ] = ACTIONS(1330),
    [anon_sym_LT] = ACTIONS(1328),
    [anon_sym_CARET] = ACTIONS(1328),
    [anon_sym_GT] = ACTIONS(1328),
    [anon_sym_GT_EQ] = ACTIONS(1330),
    [anon_sym_EQ] = ACTIONS(1328),
    [anon_sym_STAR] = ACTIONS(1328),
    [anon_sym_LBRACE] = ACTIONS(1330),
    [anon_sym_COMMA] = ACTIONS(1330),
    [anon_sym_RBRACE] = ACTIONS(1330),
    [anon_sym_is] = ACTIONS(1328),
    [anon_sym_constant] = ACTIONS(1328),
    [anon_sym_LPAREN] = ACTIONS(1330),
    [anon_sym_RPAREN] = ACTIONS(1330),
    [anon_sym_layout] = ACTIONS(1328),
    [anon_sym_indexed] = ACTIONS(1328),
    [anon_sym_AMP] = ACTIONS(1328),
    [anon_sym_PIPE] = ACTIONS(1328),
    [anon_sym_PLUS] = ACTIONS(1328),
    [anon_sym_SLASH] = ACTIONS(1328),
    [anon_sym_PERCENT] = ACTIONS(1328),
    [anon_sym_EQ_EQ] = ACTIONS(1330),
    [anon_sym_BANG_EQ] = ACTIONS(1330),
    [anon_sym_global] = ACTIONS(1328),
    [anon_sym_COLON] = ACTIONS(1330),
    [anon_sym_DOT] = ACTIONS(1330),
    [sym_unchecked] = ACTIONS(1328),
    [anon_sym_memory] = ACTIONS(1328),
    [anon_sym_storage] = ACTIONS(1328),
    [anon_sym_calldata] = ACTIONS(1328),
    [anon_sym_returns] = ACTIONS(1332),
    [anon_sym_public] = ACTIONS(1334),
    [anon_sym_internal] = ACTIONS(1334),
    [anon_sym_private] = ACTIONS(1334),
    [anon_sym_external] = ACTIONS(1334),
    [anon_sym_pure] = ACTIONS(1336),
    [anon_sym_view] = ACTIONS(1336),
    [anon_sym_payable] = ACTIONS(1336),
    [anon_sym_transient] = ACTIONS(1328),
    [sym_immutable] = ACTIONS(1328),
    [anon_sym_override] = ACTIONS(1328),
    [anon_sym_QMARK] = ACTIONS(1330),
    [anon_sym_LBRACK] = ACTIONS(1330),
    [anon_sym_RBRACK] = ACTIONS(1330),
    [anon_sym_AMP_AMP] = ACTIONS(1330),
    [anon_sym_LT_LT] = ACTIONS(1328),
    [anon_sym_GT_GT] = ACTIONS(1328),
    [anon_sym_STAR_STAR] = ACTIONS(1330),
    [anon_sym_PLUS_PLUS] = ACTIONS(1330),
    [anon_sym_DASH_DASH] = ACTIONS(1330),
    [anon_sym_PLUS_EQ] = ACTIONS(1330),
    [anon_sym_DASH_EQ] = ACTIONS(1330),
    [anon_sym_STAR_EQ] = ACTIONS(1330),
    [anon_sym_SLASH_EQ] = ACTIONS(1330),
    [anon_sym_PERCENT_EQ] = ACTIONS(1330),
    [anon_sym_CARET_EQ] = ACTIONS(1330),
    [anon_sym_AMP_EQ] = ACTIONS(1330),
    [anon_sym_PIPE_EQ] = ACTIONS(1330),
    [anon_sym_GT_GT_EQ] = ACTIONS(1330),
    [anon_sym_LT_LT_EQ] = ACTIONS(1330),
    [anon_sym_SEMI] = ACTIONS(1330),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(358)] = {
    [sym_identifier] = ACTIONS(1321),
    [anon_sym_PIPE_PIPE] = ACTIONS(1323),
    [anon_sym_DASH] = ACTIONS(1321),
    [anon_sym_LT_EQ] = ACTIONS(1323),
    [anon_sym_LT] = ACTIONS(1321),
    [anon_sym_CARET] = ACTIONS(1321),
    [anon_sym_GT] = ACTIONS(1321),
    [anon_sym_GT_EQ] = ACTIONS(1323),
    [anon_sym_EQ] = ACTIONS(1321),
    [anon_sym_STAR] = ACTIONS(1321),
    [anon_sym_LBRACE] = ACTIONS(1323),
    [anon_sym_COMMA] = ACTIONS(1323),
    [anon_sym_RBRACE] = ACTIONS(1323),
    [anon_sym_as] = ACTIONS(1321),
    [anon_sym_is] = ACTIONS(1321),
    [anon_sym_constant] = ACTIONS(1321),
    [anon_sym_LPAREN] = ACTIONS(1323),
    [anon_sym_RPAREN] = ACTIONS(1323),
    [anon_sym_layout] = ACTIONS(1321),
    [anon_sym_indexed] = ACTIONS(1321),
    [anon_sym_AMP] = ACTIONS(1321),
    [anon_sym_PIPE] = ACTIONS(1321),
    [anon_sym_PLUS] = ACTIONS(1321),
    [anon_sym_SLASH] = ACTIONS(1321),
    [anon_sym_PERCENT] = ACTIONS(1321),
    [anon_sym_EQ_EQ] = ACTIONS(1323),
    [anon_sym_BANG_EQ] = ACTIONS(1323),
    [anon_sym_for] = ACTIONS(1321),
    [anon_sym_global] = ACTIONS(1321),
    [anon_sym_COLON] = ACTIONS(1323),
    [anon_sym_DOT] = ACTIONS(1323),
    [sym_unchecked] = ACTIONS(1321),
    [anon_sym_memory] = ACTIONS(1321),
    [anon_sym_storage] = ACTIONS(1321),
    [anon_sym_calldata] = ACTIONS(1321),
    [anon_sym_returns] = ACTIONS(1321),
    [anon_sym_public] = ACTIONS(1321),
    [anon_sym_internal] = ACTIONS(1321),
    [anon_sym_private] = ACTIONS(1321),
    [anon_sym_external] = ACTIONS(1321),
    [anon_sym_pure] = ACTIONS(1321),
    [anon_sym_view] = ACTIONS(1321),
    [anon_sym_payable] = ACTIONS(1321),
    [anon_sym_transient] = ACTIONS(1321),
    [sym_immutable] = ACTIONS(1321),
    [anon_sym_override] = ACTIONS(1321),
    [sym_virtual] = ACTIONS(1321),
    [anon_sym_QMARK] = ACTIONS(1323),
    [anon_sym_LBRACK] = ACTIONS(1323),
    [anon_sym_RBRACK] = ACTIONS(1323),
    [anon_sym_AMP_AMP] = ACTIONS(1323),
    [anon_sym_LT_LT] = ACTIONS(1321),
    [anon_sym_GT_GT] = ACTIONS(1321),
    [anon_sym_STAR_STAR] = ACTIONS(1323),
    [anon_sym_PLUS_PLUS] = ACTIONS(1323),
    [anon_sym_DASH_DASH] = ACTIONS(1323),
    [anon_sym_PLUS_EQ] = ACTIONS(1323),
    [anon_sym_DASH_EQ] = ACTIONS(1323),
    [anon_sym_STAR_EQ] = ACTIONS(1323),
    [anon_sym_SLASH_EQ] = ACTIONS(1323),
    [anon_sym_PERCENT_EQ] = ACTIONS(1323),
    [anon_sym_CARET_EQ] = ACTIONS(1323),
    [anon_sym_AMP_EQ] = ACTIONS(1323),
    [anon_sym_PIPE_EQ] = ACTIONS(1323),
    [anon_sym_GT_GT_EQ] = ACTIONS(1323),
    [anon_sym_LT_LT_EQ] = ACTIONS(1323),
    [anon_sym_EQ_GT] = ACTIONS(1323),
    [anon_sym_SEMI] = ACTIONS(1323),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(359)] = {
    [sym_visibility] = STATE(359),
    [sym_state_mutability] = STATE(359),
    [aux_sym__function_type_repeat1] = STATE(359),
    [sym_identifier] = ACTIONS(1338),
    [anon_sym_PIPE_PIPE] = ACTIONS(1340),
    [anon_sym_DASH] = ACTIONS(1338),
    [anon_sym_LT_EQ] = ACTIONS(1340),
    [anon_sym_LT] = ACTIONS(1338),
    [anon_sym_CARET] = ACTIONS(1338),
    [anon_sym_GT] = ACTIONS(1338),
    [anon_sym_GT_EQ] = ACTIONS(1340),
    [anon_sym_EQ] = ACTIONS(1338),
    [anon_sym_STAR] = ACTIONS(1338),
    [anon_sym_LBRACE] = ACTIONS(1340),
    [anon_sym_COMMA] = ACTIONS(1340),
    [anon_sym_RBRACE] = ACTIONS(1340),
    [anon_sym_is] = ACTIONS(1338),
    [anon_sym_constant] = ACTIONS(1338),
    [anon_sym_LPAREN] = ACTIONS(1340),
    [anon_sym_RPAREN] = ACTIONS(1340),
    [anon_sym_layout] = ACTIONS(1338),
    [anon_sym_indexed] = ACTIONS(1338),
    [anon_sym_AMP] = ACTIONS(1338),
    [anon_sym_PIPE] = ACTIONS(1338),
    [anon_sym_PLUS] = ACTIONS(1338),
    [anon_sym_SLASH] = ACTIONS(1338),
    [anon_sym_PERCENT] = ACTIONS(1338),
    [anon_sym_EQ_EQ] = ACTIONS(1340),
    [anon_sym_BANG_EQ] = ACTIONS(1340),
    [anon_sym_global] = ACTIONS(1338),
    [anon_sym_COLON] = ACTIONS(1340),
    [anon_sym_DOT] = ACTIONS(1340),
    [sym_unchecked] = ACTIONS(1338),
    [anon_sym_memory] = ACTIONS(1338),
    [anon_sym_storage] = ACTIONS(1338),
    [anon_sym_calldata] = ACTIONS(1338),
    [anon_sym_returns] = ACTIONS(1338),
    [anon_sym_public] = ACTIONS(1342),
    [anon_sym_internal] = ACTIONS(1342),
    [anon_sym_private] = ACTIONS(1342),
    [anon_sym_external] = ACTIONS(1342),
    [anon_sym_pure] = ACTIONS(1345),
    [anon_sym_view] = ACTIONS(1345),
    [anon_sym_payable] = ACTIONS(1345),
    [anon_sym_transient] = ACTIONS(1338),
    [sym_immutable] = ACTIONS(1338),
    [anon_sym_override] = ACTIONS(1338),
    [anon_sym_QMARK] = ACTIONS(1340),
    [anon_sym_LBRACK] = ACTIONS(1340),
    [anon_sym_RBRACK] = ACTIONS(1340),
    [anon_sym_AMP_AMP] = ACTIONS(1340),
    [anon_sym_LT_LT] = ACTIONS(1338),
    [anon_sym_GT_GT] = ACTIONS(1338),
    [anon_sym_STAR_STAR] = ACTIONS(1340),
    [anon_sym_PLUS_PLUS] = ACTIONS(1340),
    [anon_sym_DASH_DASH] = ACTIONS(1340),
    [anon_sym_PLUS_EQ] = ACTIONS(1340),
    [anon_sym_DASH_EQ] = ACTIONS(1340),
    [anon_sym_STAR_EQ] = ACTIONS(1340),
    [anon_sym_SLASH_EQ] = ACTIONS(1340),
    [anon_sym_PERCENT_EQ] = ACTIONS(1340),
    [anon_sym_CARET_EQ] = ACTIONS(1340),
    [anon_sym_AMP_EQ] = ACTIONS(1340),
    [anon_sym_PIPE_EQ] = ACTIONS(1340),
    [anon_sym_GT_GT_EQ] = ACTIONS(1340),
    [anon_sym_LT_LT_EQ] = ACTIONS(1340),
    [anon_sym_SEMI] = ACTIONS(1340),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(360)] = {
    [sym_identifier] = ACTIONS(1348),
    [anon_sym_PIPE_PIPE] = ACTIONS(1350),
    [anon_sym_DASH] = ACTIONS(1348),
    [anon_sym_LT_EQ] = ACTIONS(1350),
    [anon_sym_LT] = ACTIONS(1348),
    [anon_sym_CARET] = ACTIONS(1348),
    [anon_sym_GT] = ACTIONS(1348),
    [anon_sym_GT_EQ] = ACTIONS(1350),
    [anon_sym_EQ] = ACTIONS(1348),
    [anon_sym_STAR] = ACTIONS(1348),
    [anon_sym_LBRACE] = ACTIONS(1350),
    [anon_sym_COMMA] = ACTIONS(1350),
    [anon_sym_RBRACE] = ACTIONS(1350),
    [anon_sym_is] = ACTIONS(1348),
    [anon_sym_constant] = ACTIONS(1348),
    [anon_sym_LPAREN] = ACTIONS(1350),
    [anon_sym_RPAREN] = ACTIONS(1350),
    [anon_sym_layout] = ACTIONS(1348),
    [anon_sym_indexed] = ACTIONS(1348),
    [anon_sym_AMP] = ACTIONS(1348),
    [anon_sym_PIPE] = ACTIONS(1348),
    [anon_sym_PLUS] = ACTIONS(1348),
    [anon_sym_SLASH] = ACTIONS(1348),
    [anon_sym_PERCENT] = ACTIONS(1348),
    [anon_sym_EQ_EQ] = ACTIONS(1350),
    [anon_sym_BANG_EQ] = ACTIONS(1350),
    [anon_sym_global] = ACTIONS(1348),
    [anon_sym_COLON] = ACTIONS(1350),
    [anon_sym_DOT] = ACTIONS(1350),
    [sym_unchecked] = ACTIONS(1348),
    [anon_sym_memory] = ACTIONS(1348),
    [anon_sym_storage] = ACTIONS(1348),
    [anon_sym_calldata] = ACTIONS(1348),
    [anon_sym_returns] = ACTIONS(1348),
    [anon_sym_public] = ACTIONS(1348),
    [anon_sym_internal] = ACTIONS(1348),
    [anon_sym_private] = ACTIONS(1348),
    [anon_sym_external] = ACTIONS(1348),
    [anon_sym_pure] = ACTIONS(1348),
    [anon_sym_view] = ACTIONS(1348),
    [anon_sym_payable] = ACTIONS(1348),
    [anon_sym_transient] = ACTIONS(1348),
    [sym_immutable] = ACTIONS(1348),
    [anon_sym_override] = ACTIONS(1348),
    [sym_virtual] = ACTIONS(1348),
    [anon_sym_QMARK] = ACTIONS(1350),
    [anon_sym_LBRACK] = ACTIONS(1350),
    [anon_sym_RBRACK] = ACTIONS(1350),
    [anon_sym_AMP_AMP] = ACTIONS(1350),
    [anon_sym_LT_LT] = ACTIONS(1348),
    [anon_sym_GT_GT] = ACTIONS(1348),
    [anon_sym_STAR_STAR] = ACTIONS(1350),
    [anon_sym_PLUS_PLUS] = ACTIONS(1350),
    [anon_sym_DASH_DASH] = ACTIONS(1350),
    [anon_sym_PLUS_EQ] = ACTIONS(1350),
    [anon_sym_DASH_EQ] = ACTIONS(1350),
    [anon_sym_STAR_EQ] = ACTIONS(1350),
    [anon_sym_SLASH_EQ] = ACTIONS(1350),
    [anon_sym_PERCENT_EQ] = ACTIONS(1350),
    [anon_sym_CARET_EQ] = ACTIONS(1350),
    [anon_sym_AMP_EQ] = ACTIONS(1350),
    [anon_sym_PIPE_EQ] = ACTIONS(1350),
    [anon_sym_GT_GT_EQ] = ACTIONS(1350),
    [anon_sym_LT_LT_EQ] = ACTIONS(1350),
    [anon_sym_SEMI] = ACTIONS(1350),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(361)] = {
    [sym_identifier] = ACTIONS(1352),
    [anon_sym_PIPE_PIPE] = ACTIONS(1354),
    [anon_sym_DASH] = ACTIONS(1352),
    [anon_sym_LT_EQ] = ACTIONS(1354),
    [anon_sym_LT] = ACTIONS(1352),
    [anon_sym_CARET] = ACTIONS(1352),
    [anon_sym_GT] = ACTIONS(1352),
    [anon_sym_GT_EQ] = ACTIONS(1354),
    [anon_sym_EQ] = ACTIONS(1352),
    [anon_sym_STAR] = ACTIONS(1352),
    [anon_sym_LBRACE] = ACTIONS(1354),
    [anon_sym_COMMA] = ACTIONS(1354),
    [anon_sym_RBRACE] = ACTIONS(1354),
    [anon_sym_is] = ACTIONS(1352),
    [anon_sym_constant] = ACTIONS(1352),
    [anon_sym_LPAREN] = ACTIONS(1354),
    [anon_sym_RPAREN] = ACTIONS(1354),
    [anon_sym_layout] = ACTIONS(1352),
    [anon_sym_indexed] = ACTIONS(1352),
    [anon_sym_AMP] = ACTIONS(1352),
    [anon_sym_PIPE] = ACTIONS(1352),
    [anon_sym_PLUS] = ACTIONS(1352),
    [anon_sym_SLASH] = ACTIONS(1352),
    [anon_sym_PERCENT] = ACTIONS(1352),
    [anon_sym_EQ_EQ] = ACTIONS(1354),
    [anon_sym_BANG_EQ] = ACTIONS(1354),
    [anon_sym_global] = ACTIONS(1352),
    [anon_sym_COLON] = ACTIONS(1354),
    [anon_sym_DOT] = ACTIONS(1354),
    [sym_unchecked] = ACTIONS(1352),
    [anon_sym_memory] = ACTIONS(1352),
    [anon_sym_storage] = ACTIONS(1352),
    [anon_sym_calldata] = ACTIONS(1352),
    [anon_sym_returns] = ACTIONS(1352),
    [anon_sym_public] = ACTIONS(1352),
    [anon_sym_internal] = ACTIONS(1352),
    [anon_sym_private] = ACTIONS(1352),
    [anon_sym_external] = ACTIONS(1352),
    [anon_sym_pure] = ACTIONS(1352),
    [anon_sym_view] = ACTIONS(1352),
    [anon_sym_payable] = ACTIONS(1352),
    [anon_sym_transient] = ACTIONS(1352),
    [sym_immutable] = ACTIONS(1352),
    [anon_sym_override] = ACTIONS(1352),
    [sym_virtual] = ACTIONS(1352),
    [anon_sym_QMARK] = ACTIONS(1354),
    [anon_sym_LBRACK] = ACTIONS(1354),
    [anon_sym_RBRACK] = ACTIONS(1354),
    [anon_sym_AMP_AMP] = ACTIONS(1354),
    [anon_sym_LT_LT] = ACTIONS(1352),
    [anon_sym_GT_GT] = ACTIONS(1352),
    [anon_sym_STAR_STAR] = ACTIONS(1354),
    [anon_sym_PLUS_PLUS] = ACTIONS(1354),
    [anon_sym_DASH_DASH] = ACTIONS(1354),
    [anon_sym_PLUS_EQ] = ACTIONS(1354),
    [anon_sym_DASH_EQ] = ACTIONS(1354),
    [anon_sym_STAR_EQ] = ACTIONS(1354),
    [anon_sym_SLASH_EQ] = ACTIONS(1354),
    [anon_sym_PERCENT_EQ] = ACTIONS(1354),
    [anon_sym_CARET_EQ] = ACTIONS(1354),
    [anon_sym_AMP_EQ] = ACTIONS(1354),
    [anon_sym_PIPE_EQ] = ACTIONS(1354),
    [anon_sym_GT_GT_EQ] = ACTIONS(1354),
    [anon_sym_LT_LT_EQ] = ACTIONS(1354),
    [anon_sym_SEMI] = ACTIONS(1354),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(362)] = {
    [sym_identifier] = ACTIONS(1356),
    [anon_sym_PIPE_PIPE] = ACTIONS(1358),
    [anon_sym_DASH] = ACTIONS(1356),
    [anon_sym_LT_EQ] = ACTIONS(1358),
    [anon_sym_LT] = ACTIONS(1356),
    [anon_sym_CARET] = ACTIONS(1356),
    [anon_sym_GT] = ACTIONS(1356),
    [anon_sym_GT_EQ] = ACTIONS(1358),
    [anon_sym_EQ] = ACTIONS(1356),
    [anon_sym_STAR] = ACTIONS(1356),
    [anon_sym_LBRACE] = ACTIONS(1358),
    [anon_sym_COMMA] = ACTIONS(1358),
    [anon_sym_RBRACE] = ACTIONS(1358),
    [anon_sym_is] = ACTIONS(1356),
    [anon_sym_constant] = ACTIONS(1356),
    [anon_sym_LPAREN] = ACTIONS(1358),
    [anon_sym_RPAREN] = ACTIONS(1358),
    [anon_sym_layout] = ACTIONS(1356),
    [anon_sym_indexed] = ACTIONS(1356),
    [anon_sym_AMP] = ACTIONS(1356),
    [anon_sym_PIPE] = ACTIONS(1356),
    [anon_sym_PLUS] = ACTIONS(1356),
    [anon_sym_SLASH] = ACTIONS(1356),
    [anon_sym_PERCENT] = ACTIONS(1356),
    [anon_sym_EQ_EQ] = ACTIONS(1358),
    [anon_sym_BANG_EQ] = ACTIONS(1358),
    [anon_sym_global] = ACTIONS(1356),
    [anon_sym_COLON] = ACTIONS(1358),
    [anon_sym_DOT] = ACTIONS(1358),
    [sym_unchecked] = ACTIONS(1356),
    [anon_sym_memory] = ACTIONS(1356),
    [anon_sym_storage] = ACTIONS(1356),
    [anon_sym_calldata] = ACTIONS(1356),
    [anon_sym_returns] = ACTIONS(1356),
    [anon_sym_public] = ACTIONS(1356),
    [anon_sym_internal] = ACTIONS(1356),
    [anon_sym_private] = ACTIONS(1356),
    [anon_sym_external] = ACTIONS(1356),
    [anon_sym_pure] = ACTIONS(1356),
    [anon_sym_view] = ACTIONS(1356),
    [anon_sym_payable] = ACTIONS(1356),
    [anon_sym_transient] = ACTIONS(1356),
    [sym_immutable] = ACTIONS(1356),
    [anon_sym_override] = ACTIONS(1356),
    [sym_virtual] = ACTIONS(1356),
    [anon_sym_QMARK] = ACTIONS(1358),
    [anon_sym_LBRACK] = ACTIONS(1358),
    [anon_sym_RBRACK] = ACTIONS(1358),
    [anon_sym_AMP_AMP] = ACTIONS(1358),
    [anon_sym_LT_LT] = ACTIONS(1356),
    [anon_sym_GT_GT] = ACTIONS(1356),
    [anon_sym_STAR_STAR] = ACTIONS(1358),
    [anon_sym_PLUS_PLUS] = ACTIONS(1358),
    [anon_sym_DASH_DASH] = ACTIONS(1358),
    [anon_sym_PLUS_EQ] = ACTIONS(1358),
    [anon_sym_DASH_EQ] = ACTIONS(1358),
    [anon_sym_STAR_EQ] = ACTIONS(1358),
    [anon_sym_SLASH_EQ] = ACTIONS(1358),
    [anon_sym_PERCENT_EQ] = ACTIONS(1358),
    [anon_sym_CARET_EQ] = ACTIONS(1358),
    [anon_sym_AMP_EQ] = ACTIONS(1358),
    [anon_sym_PIPE_EQ] = ACTIONS(1358),
    [anon_sym_GT_GT_EQ] = ACTIONS(1358),
    [anon_sym_LT_LT_EQ] = ACTIONS(1358),
    [anon_sym_SEMI] = ACTIONS(1358),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(363)] = {
    [sym_visibility] = STATE(357),
    [sym_state_mutability] = STATE(357),
    [sym__return_parameters] = STATE(375),
    [aux_sym__function_type_repeat1] = STATE(357),
    [sym_identifier] = ACTIONS(1360),
    [anon_sym_PIPE_PIPE] = ACTIONS(1362),
    [anon_sym_DASH] = ACTIONS(1360),
    [anon_sym_LT_EQ] = ACTIONS(1362),
    [anon_sym_LT] = ACTIONS(1360),
    [anon_sym_CARET] = ACTIONS(1360),
    [anon_sym_GT] = ACTIONS(1360),
    [anon_sym_GT_EQ] = ACTIONS(1362),
    [anon_sym_EQ] = ACTIONS(1360),
    [anon_sym_STAR] = ACTIONS(1360),
    [anon_sym_LBRACE] = ACTIONS(1362),
    [anon_sym_COMMA] = ACTIONS(1362),
    [anon_sym_RBRACE] = ACTIONS(1362),
    [anon_sym_is] = ACTIONS(1360),
    [anon_sym_constant] = ACTIONS(1360),
    [anon_sym_LPAREN] = ACTIONS(1362),
    [anon_sym_RPAREN] = ACTIONS(1362),
    [anon_sym_layout] = ACTIONS(1360),
    [anon_sym_indexed] = ACTIONS(1360),
    [anon_sym_AMP] = ACTIONS(1360),
    [anon_sym_PIPE] = ACTIONS(1360),
    [anon_sym_PLUS] = ACTIONS(1360),
    [anon_sym_SLASH] = ACTIONS(1360),
    [anon_sym_PERCENT] = ACTIONS(1360),
    [anon_sym_EQ_EQ] = ACTIONS(1362),
    [anon_sym_BANG_EQ] = ACTIONS(1362),
    [anon_sym_global] = ACTIONS(1360),
    [anon_sym_COLON] = ACTIONS(1362),
    [anon_sym_DOT] = ACTIONS(1362),
    [sym_unchecked] = ACTIONS(1360),
    [anon_sym_memory] = ACTIONS(1360),
    [anon_sym_storage] = ACTIONS(1360),
    [anon_sym_calldata] = ACTIONS(1360),
    [anon_sym_returns] = ACTIONS(1332),
    [anon_sym_public] = ACTIONS(1334),
    [anon_sym_internal] = ACTIONS(1334),
    [anon_sym_private] = ACTIONS(1334),
    [anon_sym_external] = ACTIONS(1334),
    [anon_sym_pure] = ACTIONS(1336),
    [anon_sym_view] = ACTIONS(1336),
    [anon_sym_payable] = ACTIONS(1336),
    [anon_sym_QMARK] = ACTIONS(1362),
    [anon_sym_LBRACK] = ACTIONS(1362),
    [anon_sym_RBRACK] = ACTIONS(1362),
    [anon_sym_AMP_AMP] = ACTIONS(1362),
    [anon_sym_LT_LT] = ACTIONS(1360),
    [anon_sym_GT_GT] = ACTIONS(1360),
    [anon_sym_STAR_STAR] = ACTIONS(1362),
    [anon_sym_PLUS_PLUS] = ACTIONS(1362),
    [anon_sym_DASH_DASH] = ACTIONS(1362),
    [anon_sym_PLUS_EQ] = ACTIONS(1362),
    [anon_sym_DASH_EQ] = ACTIONS(1362),
    [anon_sym_STAR_EQ] = ACTIONS(1362),
    [anon_sym_SLASH_EQ] = ACTIONS(1362),
    [anon_sym_PERCENT_EQ] = ACTIONS(1362),
    [anon_sym_CARET_EQ] = ACTIONS(1362),
    [anon_sym_AMP_EQ] = ACTIONS(1362),
    [anon_sym_PIPE_EQ] = ACTIONS(1362),
    [anon_sym_GT_GT_EQ] = ACTIONS(1362),
    [anon_sym_LT_LT_EQ] = ACTIONS(1362),
    [anon_sym_SEMI] = ACTIONS(1362),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(364)] = {
    [sym_identifier] = ACTIONS(1364),
    [anon_sym_PIPE_PIPE] = ACTIONS(1366),
    [anon_sym_DASH] = ACTIONS(1364),
    [anon_sym_LT_EQ] = ACTIONS(1366),
    [anon_sym_LT] = ACTIONS(1364),
    [anon_sym_CARET] = ACTIONS(1364),
    [anon_sym_GT] = ACTIONS(1364),
    [anon_sym_GT_EQ] = ACTIONS(1366),
    [anon_sym_EQ] = ACTIONS(1364),
    [anon_sym_STAR] = ACTIONS(1364),
    [anon_sym_LBRACE] = ACTIONS(1366),
    [anon_sym_COMMA] = ACTIONS(1366),
    [anon_sym_RBRACE] = ACTIONS(1366),
    [anon_sym_is] = ACTIONS(1364),
    [anon_sym_constant] = ACTIONS(1364),
    [anon_sym_LPAREN] = ACTIONS(1366),
    [anon_sym_RPAREN] = ACTIONS(1366),
    [anon_sym_layout] = ACTIONS(1364),
    [anon_sym_indexed] = ACTIONS(1364),
    [anon_sym_AMP] = ACTIONS(1364),
    [anon_sym_PIPE] = ACTIONS(1364),
    [anon_sym_PLUS] = ACTIONS(1364),
    [anon_sym_SLASH] = ACTIONS(1364),
    [anon_sym_PERCENT] = ACTIONS(1364),
    [anon_sym_EQ_EQ] = ACTIONS(1366),
    [anon_sym_BANG_EQ] = ACTIONS(1366),
    [anon_sym_global] = ACTIONS(1364),
    [anon_sym_COLON] = ACTIONS(1366),
    [anon_sym_DOT] = ACTIONS(1366),
    [sym_unchecked] = ACTIONS(1364),
    [anon_sym_memory] = ACTIONS(1364),
    [anon_sym_storage] = ACTIONS(1364),
    [anon_sym_calldata] = ACTIONS(1364),
    [anon_sym_returns] = ACTIONS(1364),
    [anon_sym_public] = ACTIONS(1364),
    [anon_sym_internal] = ACTIONS(1364),
    [anon_sym_private] = ACTIONS(1364),
    [anon_sym_external] = ACTIONS(1364),
    [anon_sym_pure] = ACTIONS(1364),
    [anon_sym_view] = ACTIONS(1364),
    [anon_sym_payable] = ACTIONS(1364),
    [anon_sym_transient] = ACTIONS(1364),
    [sym_immutable] = ACTIONS(1364),
    [anon_sym_override] = ACTIONS(1364),
    [sym_virtual] = ACTIONS(1364),
    [anon_sym_QMARK] = ACTIONS(1366),
    [anon_sym_LBRACK] = ACTIONS(1366),
    [anon_sym_RBRACK] = ACTIONS(1366),
    [anon_sym_AMP_AMP] = ACTIONS(1366),
    [anon_sym_LT_LT] = ACTIONS(1364),
    [anon_sym_GT_GT] = ACTIONS(1364),
    [anon_sym_STAR_STAR] = ACTIONS(1366),
    [anon_sym_PLUS_PLUS] = ACTIONS(1366),
    [anon_sym_DASH_DASH] = ACTIONS(1366),
    [anon_sym_PLUS_EQ] = ACTIONS(1366),
    [anon_sym_DASH_EQ] = ACTIONS(1366),
    [anon_sym_STAR_EQ] = ACTIONS(1366),
    [anon_sym_SLASH_EQ] = ACTIONS(1366),
    [anon_sym_PERCENT_EQ] = ACTIONS(1366),
    [anon_sym_CARET_EQ] = ACTIONS(1366),
    [anon_sym_AMP_EQ] = ACTIONS(1366),
    [anon_sym_PIPE_EQ] = ACTIONS(1366),
    [anon_sym_GT_GT_EQ] = ACTIONS(1366),
    [anon_sym_LT_LT_EQ] = ACTIONS(1366),
    [anon_sym_SEMI] = ACTIONS(1366),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(365)] = {
    [sym_identifier] = ACTIONS(1368),
    [anon_sym_PIPE_PIPE] = ACTIONS(1370),
    [anon_sym_DASH] = ACTIONS(1368),
    [anon_sym_LT_EQ] = ACTIONS(1370),
    [anon_sym_LT] = ACTIONS(1368),
    [anon_sym_CARET] = ACTIONS(1368),
    [anon_sym_GT] = ACTIONS(1368),
    [anon_sym_GT_EQ] = ACTIONS(1370),
    [anon_sym_EQ] = ACTIONS(1368),
    [anon_sym_STAR] = ACTIONS(1368),
    [anon_sym_LBRACE] = ACTIONS(1370),
    [anon_sym_COMMA] = ACTIONS(1370),
    [anon_sym_RBRACE] = ACTIONS(1370),
    [anon_sym_is] = ACTIONS(1368),
    [anon_sym_constant] = ACTIONS(1368),
    [anon_sym_LPAREN] = ACTIONS(1370),
    [anon_sym_RPAREN] = ACTIONS(1370),
    [anon_sym_layout] = ACTIONS(1368),
    [anon_sym_indexed] = ACTIONS(1368),
    [anon_sym_AMP] = ACTIONS(1368),
    [anon_sym_PIPE] = ACTIONS(1368),
    [anon_sym_PLUS] = ACTIONS(1368),
    [anon_sym_SLASH] = ACTIONS(1368),
    [anon_sym_PERCENT] = ACTIONS(1368),
    [anon_sym_EQ_EQ] = ACTIONS(1370),
    [anon_sym_BANG_EQ] = ACTIONS(1370),
    [anon_sym_global] = ACTIONS(1368),
    [anon_sym_COLON] = ACTIONS(1370),
    [anon_sym_DOT] = ACTIONS(1370),
    [sym_unchecked] = ACTIONS(1368),
    [anon_sym_memory] = ACTIONS(1368),
    [anon_sym_storage] = ACTIONS(1368),
    [anon_sym_calldata] = ACTIONS(1368),
    [anon_sym_returns] = ACTIONS(1368),
    [anon_sym_public] = ACTIONS(1368),
    [anon_sym_internal] = ACTIONS(1368),
    [anon_sym_private] = ACTIONS(1368),
    [anon_sym_external] = ACTIONS(1368),
    [anon_sym_pure] = ACTIONS(1368),
    [anon_sym_view] = ACTIONS(1368),
    [anon_sym_payable] = ACTIONS(1368),
    [anon_sym_transient] = ACTIONS(1368),
    [sym_immutable] = ACTIONS(1368),
    [anon_sym_override] = ACTIONS(1368),
    [sym_virtual] = ACTIONS(1368),
    [anon_sym_QMARK] = ACTIONS(1370),
    [anon_sym_LBRACK] = ACTIONS(1370),
    [anon_sym_RBRACK] = ACTIONS(1370),
    [anon_sym_AMP_AMP] = ACTIONS(1370),
    [anon_sym_LT_LT] = ACTIONS(1368),
    [anon_sym_GT_GT] = ACTIONS(1368),
    [anon_sym_STAR_STAR] = ACTIONS(1370),
    [anon_sym_PLUS_PLUS] = ACTIONS(1370),
    [anon_sym_DASH_DASH] = ACTIONS(1370),
    [anon_sym_PLUS_EQ] = ACTIONS(1370),
    [anon_sym_DASH_EQ] = ACTIONS(1370),
    [anon_sym_STAR_EQ] = ACTIONS(1370),
    [anon_sym_SLASH_EQ] = ACTIONS(1370),
    [anon_sym_PERCENT_EQ] = ACTIONS(1370),
    [anon_sym_CARET_EQ] = ACTIONS(1370),
    [anon_sym_AMP_EQ] = ACTIONS(1370),
    [anon_sym_PIPE_EQ] = ACTIONS(1370),
    [anon_sym_GT_GT_EQ] = ACTIONS(1370),
    [anon_sym_LT_LT_EQ] = ACTIONS(1370),
    [anon_sym_SEMI] = ACTIONS(1370),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(366)] = {
    [sym_identifier] = ACTIONS(1372),
    [anon_sym_PIPE_PIPE] = ACTIONS(1374),
    [anon_sym_DASH] = ACTIONS(1372),
    [anon_sym_LT_EQ] = ACTIONS(1374),
    [anon_sym_LT] = ACTIONS(1372),
    [anon_sym_CARET] = ACTIONS(1372),
    [anon_sym_GT] = ACTIONS(1372),
    [anon_sym_GT_EQ] = ACTIONS(1374),
    [anon_sym_EQ] = ACTIONS(1372),
    [anon_sym_STAR] = ACTIONS(1372),
    [anon_sym_LBRACE] = ACTIONS(1374),
    [anon_sym_COMMA] = ACTIONS(1374),
    [anon_sym_RBRACE] = ACTIONS(1374),
    [anon_sym_is] = ACTIONS(1372),
    [anon_sym_constant] = ACTIONS(1372),
    [anon_sym_LPAREN] = ACTIONS(1374),
    [anon_sym_RPAREN] = ACTIONS(1374),
    [anon_sym_layout] = ACTIONS(1372),
    [anon_sym_indexed] = ACTIONS(1372),
    [anon_sym_AMP] = ACTIONS(1372),
    [anon_sym_PIPE] = ACTIONS(1372),
    [anon_sym_PLUS] = ACTIONS(1372),
    [anon_sym_SLASH] = ACTIONS(1372),
    [anon_sym_PERCENT] = ACTIONS(1372),
    [anon_sym_EQ_EQ] = ACTIONS(1374),
    [anon_sym_BANG_EQ] = ACTIONS(1374),
    [anon_sym_global] = ACTIONS(1372),
    [anon_sym_COLON] = ACTIONS(1374),
    [anon_sym_DOT] = ACTIONS(1374),
    [sym_unchecked] = ACTIONS(1372),
    [anon_sym_memory] = ACTIONS(1372),
    [anon_sym_storage] = ACTIONS(1372),
    [anon_sym_calldata] = ACTIONS(1372),
    [anon_sym_returns] = ACTIONS(1372),
    [anon_sym_public] = ACTIONS(1372),
    [anon_sym_internal] = ACTIONS(1372),
    [anon_sym_private] = ACTIONS(1372),
    [anon_sym_external] = ACTIONS(1372),
    [anon_sym_pure] = ACTIONS(1372),
    [anon_sym_view] = ACTIONS(1372),
    [anon_sym_payable] = ACTIONS(1372),
    [anon_sym_transient] = ACTIONS(1372),
    [sym_immutable] = ACTIONS(1372),
    [anon_sym_override] = ACTIONS(1372),
    [sym_virtual] = ACTIONS(1372),
    [anon_sym_QMARK] = ACTIONS(1374),
    [anon_sym_LBRACK] = ACTIONS(1374),
    [anon_sym_RBRACK] = ACTIONS(1374),
    [anon_sym_AMP_AMP] = ACTIONS(1374),
    [anon_sym_LT_LT] = ACTIONS(1372),
    [anon_sym_GT_GT] = ACTIONS(1372),
    [anon_sym_STAR_STAR] = ACTIONS(1374),
    [anon_sym_PLUS_PLUS] = ACTIONS(1374),
    [anon_sym_DASH_DASH] = ACTIONS(1374),
    [anon_sym_PLUS_EQ] = ACTIONS(1374),
    [anon_sym_DASH_EQ] = ACTIONS(1374),
    [anon_sym_STAR_EQ] = ACTIONS(1374),
    [anon_sym_SLASH_EQ] = ACTIONS(1374),
    [anon_sym_PERCENT_EQ] = ACTIONS(1374),
    [anon_sym_CARET_EQ] = ACTIONS(1374),
    [anon_sym_AMP_EQ] = ACTIONS(1374),
    [anon_sym_PIPE_EQ] = ACTIONS(1374),
    [anon_sym_GT_GT_EQ] = ACTIONS(1374),
    [anon_sym_LT_LT_EQ] = ACTIONS(1374),
    [anon_sym_SEMI] = ACTIONS(1374),
    [sym_comment] = ACTIONS(3),
  },
  [STATE(367)] = {
    [sym_identifier] = ACTIONS(1376),
    [anon_sym_PIPE_PIPE] = ACTIONS(1378),
    [anon_sym_DASH] = ACTIONS(1376),
    [anon_sym_LT_EQ] = ACTIONS(1378),
    [anon_sym_LT] = ACTIONS(1376),
    [anon_sym_CARET] = ACTIONS(1376),
    [anon_sym_GT] = ACTIONS(1376),
    [anon_sym_GT_EQ] = ACTIONS(1378),
    [anon_sym_EQ] = ACTIONS(1376),
    [anon_sym_STAR] = ACTIONS(1376),
    [anon_sym_LBRACE] = ACTIONS(1378),
    [anon_sym_COMMA] = ACTIONS(1378),
    [anon_sym_RBRACE] = ACTIONS(1378),
    [anon_sym_as] = ACTIONS(1376),
    [anon_sym_is] = ACTIONS(1376),
    [anon_sym_constant] = ACTIONS(1376),
    [anon_sym_LPAREN] = ACTIONS(1378),
    [anon_sym_RPAREN] = ACTIONS(1378),
    [anon_sym_layout] = ACTIONS(1376),
    [anon_sym_indexed] = ACTIONS(1376),
    [anon_sym_AMP] = ACTIONS(1376),
    [anon_sym_PIPE] = ACTIONS(1376),
    [anon_sym_PLUS] = ACTIONS(1376),
    [anon_sym_SLASH] = ACTIONS(1376),
    [anon_sym_PERCENT] = ACTIONS(1376),
    [anon_sym_EQ_EQ] = ACTIONS(1378),
    [anon_sym_BANG_EQ] = ACTIONS(1378),
    [anon_sym_for] = ACTIONS(1376),
    [anon_sym_global] = ACTIONS(1376),
    [anon_sym_COLON] = ACTIONS(1378),
    [anon_sym_DOT] = ACTIONS(1378),
    [sym_unchecked] = ACTIONS(1376),
    [anon_sym_memory] = ACTIONS(1376),
    [anon_sym_storage] = ACTIONS(1376),
    [anon_sym_calldata] = ACTIONS(1376),
    [anon_sym_returns] = ACTIONS(1376),
    [anon_sym_public] = ACTIONS(1376),
    [anon_sym_internal] = ACTIONS(1376),
    [anon_sym_private] = ACTIONS(1376),
    [anon_sym_external] = ACTIONS(1376),
    [anon_sym_transient] = ACTIONS(1376),
    [sym_immutable] = ACTIONS(1376),
    [anon_sym_override] = ACTIONS(1376),
    [anon_sym_QMARK] = ACTIONS(1378),
    [anon_sym_LBRACK] = ACTIONS(1378),
    [anon_sym_RBRACK] = ACTIONS(1378),
    [anon_sym_AMP_AMP] = ACTIONS(1378),
    [anon_sym_LT_LT] = ACTIONS(1376),
    [anon_sym_GT_GT] = ACTIONS(1376),
    [anon_sym_STAR_STAR] = ACTIONS(1378),
    [anon_sym_PLUS_PLUS] = ACTIONS(1378),
    [anon_sym_DASH_DASH] = ACTIONS(1378),
    [anon_sym_PLUS_EQ] = ACTIONS(1378),
    [anon_sym_DASH_EQ] = ACTIONS(1378),
    [anon_sym_STAR_EQ] = ACTIONS(1378),
    [anon_sym_SLASH_EQ] = ACTIONS(1378),
    [anon_sym_PERCENT_EQ] = ACTIONS(1378),
    [anon_sym_CARET_EQ] = ACTIONS(1378),
    [anon_sym_AMP_EQ] = ACTIONS(1378),
    [anon_sym_PIPE_EQ] = ACTIONS(1378),
    [anon_sym_GT_GT_EQ] = ACTIONS(1378),
    [anon_sym_LT_LT_EQ] = ACTIONS(1378),
    [anon_sym_EQ_GT] = ACTIONS(1378),
    [anon_sym_SEMI] = ACTIONS(1378),
    [sym_comment] = ACTIONS(3),
  },
};

static const uint16_t ts_small_parse_table[] = {
  [0] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1384), 1,
      anon_sym_payable,
    ACTIONS(1380), 31,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_is,
      anon_sym_constant,
      anon_sym_layout,
      anon_sym_indexed,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_global,
      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,
      anon_sym_transient,
      sym_immutable,
      anon_sym_override,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
      sym_identifier,
    ACTIONS(1382), 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_EQ_EQ,
      anon_sym_BANG_EQ,
      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_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_LT_LT_EQ,
      anon_sym_EQ_GT,
      anon_sym_SEMI,
  [73] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1386), 31,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_is,
      anon_sym_constant,
      anon_sym_layout,
      anon_sym_indexed,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_global,
      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,
      anon_sym_transient,
      sym_immutable,
      anon_sym_override,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
      sym_identifier,
    ACTIONS(1388), 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_EQ_EQ,
      anon_sym_BANG_EQ,
      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_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_LT_LT_EQ,
      anon_sym_EQ_GT,
      anon_sym_SEMI,
  [143] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1380), 31,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_is,
      anon_sym_constant,
      anon_sym_layout,
      anon_sym_indexed,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_global,
      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,
      anon_sym_transient,
      sym_immutable,
      anon_sym_override,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
      sym_identifier,
    ACTIONS(1382), 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_EQ_EQ,
      anon_sym_BANG_EQ,
      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_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_LT_LT_EQ,
      anon_sym_EQ_GT,
      anon_sym_SEMI,
  [213] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1392), 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_EQ_EQ,
      anon_sym_BANG_EQ,
      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_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_LT_LT_EQ,
      anon_sym_SEMI,
    ACTIONS(1390), 31,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_is,
      anon_sym_constant,
      anon_sym_layout,
      anon_sym_indexed,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_global,
      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,
      anon_sym_transient,
      sym_immutable,
      anon_sym_override,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
      sym_identifier,
  [282] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1396), 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_EQ_EQ,
      anon_sym_BANG_EQ,
      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_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_LT_LT_EQ,
      anon_sym_SEMI,
    ACTIONS(1394), 31,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_is,
      anon_sym_constant,
      anon_sym_layout,
      anon_sym_indexed,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_global,
      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,
      anon_sym_transient,
      sym_immutable,
      anon_sym_override,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
      sym_identifier,
  [351] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1400), 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_EQ_EQ,
      anon_sym_BANG_EQ,
      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_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_LT_LT_EQ,
      anon_sym_SEMI,
    ACTIONS(1398), 31,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_is,
      anon_sym_constant,
      anon_sym_layout,
      anon_sym_indexed,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_global,
      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,
      anon_sym_transient,
      sym_immutable,
      anon_sym_override,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
      sym_identifier,
  [420] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1404), 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_EQ_EQ,
      anon_sym_BANG_EQ,
      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_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_LT_LT_EQ,
      anon_sym_SEMI,
    ACTIONS(1402), 31,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_is,
      anon_sym_constant,
      anon_sym_layout,
      anon_sym_indexed,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_global,
      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,
      anon_sym_transient,
      sym_immutable,
      anon_sym_override,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
      sym_identifier,
  [489] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1330), 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_EQ_EQ,
      anon_sym_BANG_EQ,
      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_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_LT_LT_EQ,
      anon_sym_SEMI,
    ACTIONS(1328), 31,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_is,
      anon_sym_constant,
      anon_sym_layout,
      anon_sym_indexed,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_global,
      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,
      anon_sym_transient,
      sym_immutable,
      anon_sym_override,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
      sym_identifier,
  [558] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1408), 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_EQ_EQ,
      anon_sym_BANG_EQ,
      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_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_LT_LT_EQ,
      anon_sym_SEMI,
    ACTIONS(1406), 31,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_is,
      anon_sym_constant,
      anon_sym_layout,
      anon_sym_indexed,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_global,
      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,
      anon_sym_transient,
      sym_immutable,
      anon_sym_override,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
      sym_identifier,
  [627] = 3,
    ACTIONS(3), 1,
      sym_comment,
    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_EQ_EQ,
      anon_sym_BANG_EQ,
      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_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_LT_LT_EQ,
      anon_sym_SEMI,
    ACTIONS(1410), 31,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_is,
      anon_sym_constant,
      anon_sym_layout,
      anon_sym_indexed,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_global,
      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,
      anon_sym_transient,
      sym_immutable,
      anon_sym_override,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
      sym_identifier,
  [696] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1416), 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_EQ_EQ,
      anon_sym_BANG_EQ,
      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_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_LT_LT_EQ,
      anon_sym_SEMI,
    ACTIONS(1414), 31,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_is,
      anon_sym_constant,
      anon_sym_layout,
      anon_sym_indexed,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_global,
      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,
      anon_sym_transient,
      sym_immutable,
      anon_sym_override,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
      sym_identifier,
  [765] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1420), 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_EQ_EQ,
      anon_sym_BANG_EQ,
      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_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_LT_LT_EQ,
      anon_sym_SEMI,
    ACTIONS(1418), 31,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_is,
      anon_sym_constant,
      anon_sym_layout,
      anon_sym_indexed,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_global,
      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,
      anon_sym_transient,
      sym_immutable,
      anon_sym_override,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
      sym_identifier,
  [834] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1424), 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_EQ_EQ,
      anon_sym_BANG_EQ,
      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_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_LT_LT_EQ,
      anon_sym_SEMI,
    ACTIONS(1422), 31,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_is,
      anon_sym_constant,
      anon_sym_layout,
      anon_sym_indexed,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_global,
      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,
      anon_sym_transient,
      sym_immutable,
      anon_sym_override,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
      sym_identifier,
  [903] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1428), 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_EQ_EQ,
      anon_sym_BANG_EQ,
      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_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_LT_LT_EQ,
      anon_sym_SEMI,
    ACTIONS(1426), 31,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_is,
      anon_sym_constant,
      anon_sym_layout,
      anon_sym_indexed,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_global,
      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,
      anon_sym_transient,
      sym_immutable,
      anon_sym_override,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
      sym_identifier,
  [972] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1432), 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_EQ_EQ,
      anon_sym_BANG_EQ,
      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_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_LT_LT_EQ,
      anon_sym_SEMI,
    ACTIONS(1430), 31,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_is,
      anon_sym_constant,
      anon_sym_layout,
      anon_sym_indexed,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_global,
      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,
      anon_sym_transient,
      sym_immutable,
      anon_sym_override,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
      sym_identifier,
  [1041] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1392), 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_EQ_EQ,
      anon_sym_BANG_EQ,
      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_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_LT_LT_EQ,
      anon_sym_SEMI,
    ACTIONS(1390), 31,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_is,
      anon_sym_constant,
      anon_sym_layout,
      anon_sym_indexed,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_global,
      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,
      anon_sym_transient,
      sym_immutable,
      anon_sym_override,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
      sym_identifier,
  [1110] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1436), 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_EQ_EQ,
      anon_sym_BANG_EQ,
      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_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_LT_LT_EQ,
      anon_sym_SEMI,
    ACTIONS(1434), 31,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_is,
      anon_sym_constant,
      anon_sym_layout,
      anon_sym_indexed,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_global,
      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,
      anon_sym_transient,
      sym_immutable,
      anon_sym_override,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
      sym_identifier,
  [1179] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1440), 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_EQ_EQ,
      anon_sym_BANG_EQ,
      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_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_LT_LT_EQ,
      anon_sym_SEMI,
    ACTIONS(1438), 31,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_is,
      anon_sym_constant,
      anon_sym_layout,
      anon_sym_indexed,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_global,
      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,
      anon_sym_transient,
      sym_immutable,
      anon_sym_override,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
      sym_identifier,
  [1248] = 5,
    ACTIONS(3), 1,
      sym_comment,
    STATE(444), 1,
      sym_number_unit,
    ACTIONS(1446), 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(1444), 13,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1442), 34,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_is,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_layout,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
      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_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_LT_LT_EQ,
      anon_sym_SEMI,
  [1319] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1448), 27,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_is,
      anon_sym_layout,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      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_LT_LT,
      anon_sym_GT_GT,
      sym_identifier,
    ACTIONS(1450), 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_EQ_EQ,
      anon_sym_BANG_EQ,
      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_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_LT_LT_EQ,
      anon_sym_SEMI,
  [1384] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1452), 27,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_is,
      anon_sym_layout,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      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_LT_LT,
      anon_sym_GT_GT,
      sym_identifier,
    ACTIONS(1454), 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_EQ_EQ,
      anon_sym_BANG_EQ,
      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_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_LT_LT_EQ,
      anon_sym_SEMI,
  [1449] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1456), 27,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_is,
      anon_sym_layout,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      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_LT_LT,
      anon_sym_GT_GT,
      sym_identifier,
    ACTIONS(1458), 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_EQ_EQ,
      anon_sym_BANG_EQ,
      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_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_LT_LT_EQ,
      anon_sym_SEMI,
  [1514] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1460), 27,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_is,
      anon_sym_layout,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      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_LT_LT,
      anon_sym_GT_GT,
      sym_identifier,
    ACTIONS(1462), 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_EQ_EQ,
      anon_sym_BANG_EQ,
      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_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_LT_LT_EQ,
      anon_sym_SEMI,
  [1579] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1309), 13,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1311), 39,
      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_is,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_layout,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
      anon_sym_COLON,
      anon_sym_DOT,
      anon_sym_DQUOTE,
      anon_sym_SQUOTE,
      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_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_LT_LT_EQ,
      anon_sym_SEMI,
  [1639] = 4,
    ACTIONS(3), 1,
      sym_comment,
    STATE(356), 1,
      aux_sym__identifier_path_repeat1,
    ACTIONS(1464), 21,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_is,
      anon_sym_layout,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      sym_unchecked,
      anon_sym_memory,
      anon_sym_storage,
      anon_sym_calldata,
      anon_sym_returns,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
      sym_identifier,
    ACTIONS(1466), 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_EQ_EQ,
      anon_sym_BANG_EQ,
      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_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_LT_LT_EQ,
      anon_sym_SEMI,
  [1701] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1305), 13,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1307), 39,
      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_is,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_layout,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
      anon_sym_COLON,
      anon_sym_DOT,
      anon_sym_DQUOTE,
      anon_sym_SQUOTE,
      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_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_LT_LT_EQ,
      anon_sym_SEMI,
  [1761] = 6,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1476), 1,
      anon_sym_DOT,
    STATE(392), 1,
      aux_sym__identifier_path_repeat1,
    ACTIONS(1468), 4,
      anon_sym_memory,
      anon_sym_storage,
      anon_sym_calldata,
      sym_identifier,
    ACTIONS(1473), 17,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_is,
      anon_sym_layout,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      sym_unchecked,
      anon_sym_returns,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1470), 29,
      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_EQ_EQ,
      anon_sym_BANG_EQ,
      anon_sym_COLON,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      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_LT_LT_EQ,
      anon_sym_SEMI,
  [1827] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1321), 4,
      anon_sym_memory,
      anon_sym_storage,
      anon_sym_calldata,
      sym_identifier,
    ACTIONS(1483), 17,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_is,
      anon_sym_layout,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      sym_unchecked,
      anon_sym_returns,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1480), 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_EQ_EQ,
      anon_sym_BANG_EQ,
      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_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_LT_LT_EQ,
      anon_sym_SEMI,
  [1888] = 6,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1490), 1,
      anon_sym_DQUOTE,
    ACTIONS(1493), 1,
      anon_sym_SQUOTE,
    STATE(396), 2,
      sym_string,
      aux_sym_string_literal_repeat1,
    ACTIONS(1488), 13,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1486), 34,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_is,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_layout,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
      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_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_LT_LT_EQ,
      anon_sym_SEMI,
  [1953] = 6,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(69), 1,
      anon_sym_DQUOTE,
    ACTIONS(71), 1,
      anon_sym_SQUOTE,
    STATE(396), 2,
      sym_string,
      aux_sym_string_literal_repeat1,
    ACTIONS(1498), 13,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1496), 34,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_is,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_layout,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
      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_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_LT_LT_EQ,
      anon_sym_SEMI,
  [2018] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1504), 1,
      anon_sym_unicode,
    STATE(400), 1,
      aux_sym_unicode_string_literal_repeat3,
    ACTIONS(1502), 13,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1500), 34,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_is,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_layout,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
      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_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_LT_LT_EQ,
      anon_sym_SEMI,
  [2079] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1510), 1,
      anon_sym_hex,
    STATE(399), 1,
      aux_sym_hex_string_literal_repeat1,
    ACTIONS(1508), 13,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1506), 34,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_is,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_layout,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
      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_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_LT_LT_EQ,
      anon_sym_SEMI,
  [2140] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1517), 1,
      anon_sym_unicode,
    STATE(400), 1,
      aux_sym_unicode_string_literal_repeat3,
    ACTIONS(1515), 13,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1513), 34,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_is,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_layout,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
      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_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_LT_LT_EQ,
      anon_sym_SEMI,
  [2201] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1524), 1,
      anon_sym_hex,
    STATE(399), 1,
      aux_sym_hex_string_literal_repeat1,
    ACTIONS(1522), 13,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1520), 34,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_is,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_layout,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
      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_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_LT_LT_EQ,
      anon_sym_SEMI,
  [2262] = 18,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1526), 1,
      anon_sym_PIPE_PIPE,
    ACTIONS(1534), 1,
      anon_sym_CARET,
    ACTIONS(1536), 1,
      anon_sym_EQ,
    ACTIONS(1542), 1,
      anon_sym_LPAREN,
    ACTIONS(1544), 1,
      anon_sym_AMP,
    ACTIONS(1546), 1,
      anon_sym_PIPE,
    ACTIONS(1550), 1,
      anon_sym_AMP_AMP,
    ACTIONS(1554), 1,
      anon_sym_STAR_STAR,
    STATE(441), 1,
      sym__call_arguments,
    ACTIONS(1528), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1530), 2,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
    ACTIONS(1532), 2,
      anon_sym_LT,
      anon_sym_GT,
    ACTIONS(1548), 2,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
    ACTIONS(1552), 2,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1556), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1538), 3,
      anon_sym_STAR,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1540), 24,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_is,
      anon_sym_RPAREN,
      anon_sym_layout,
      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_LT_LT_EQ,
      anon_sym_SEMI,
  [2348] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1560), 13,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1558), 35,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_is,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_layout,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
      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_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_LT_LT_EQ,
      anon_sym_SEMI,
      anon_sym_unicode,
  [2404] = 8,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1542), 1,
      anon_sym_LPAREN,
    ACTIONS(1554), 1,
      anon_sym_STAR_STAR,
    STATE(441), 1,
      sym__call_arguments,
    ACTIONS(1556), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1538), 3,
      anon_sym_STAR,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1564), 10,
      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_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1562), 30,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_is,
      anon_sym_RPAREN,
      anon_sym_layout,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
      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_LT_LT_EQ,
      anon_sym_SEMI,
  [2470] = 13,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1534), 1,
      anon_sym_CARET,
    ACTIONS(1542), 1,
      anon_sym_LPAREN,
    ACTIONS(1544), 1,
      anon_sym_AMP,
    ACTIONS(1546), 1,
      anon_sym_PIPE,
    ACTIONS(1554), 1,
      anon_sym_STAR_STAR,
    STATE(441), 1,
      sym__call_arguments,
    ACTIONS(1528), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1552), 2,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1556), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1538), 3,
      anon_sym_STAR,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1564), 3,
      anon_sym_LT,
      anon_sym_GT,
      anon_sym_EQ,
    ACTIONS(1562), 30,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_is,
      anon_sym_RPAREN,
      anon_sym_layout,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
      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_LT_LT_EQ,
      anon_sym_SEMI,
  [2546] = 11,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1542), 1,
      anon_sym_LPAREN,
    ACTIONS(1544), 1,
      anon_sym_AMP,
    ACTIONS(1554), 1,
      anon_sym_STAR_STAR,
    STATE(441), 1,
      sym__call_arguments,
    ACTIONS(1528), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1552), 2,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1556), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1538), 3,
      anon_sym_STAR,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1564), 5,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_PIPE,
    ACTIONS(1562), 30,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_is,
      anon_sym_RPAREN,
      anon_sym_layout,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
      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_LT_LT_EQ,
      anon_sym_SEMI,
  [2618] = 23,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1526), 1,
      anon_sym_PIPE_PIPE,
    ACTIONS(1534), 1,
      anon_sym_CARET,
    ACTIONS(1542), 1,
      anon_sym_LPAREN,
    ACTIONS(1544), 1,
      anon_sym_AMP,
    ACTIONS(1546), 1,
      anon_sym_PIPE,
    ACTIONS(1550), 1,
      anon_sym_AMP_AMP,
    ACTIONS(1554), 1,
      anon_sym_STAR_STAR,
    ACTIONS(1566), 1,
      anon_sym_EQ,
    ACTIONS(1568), 1,
      anon_sym_LBRACE,
    ACTIONS(1572), 1,
      anon_sym_DOT,
    ACTIONS(1574), 1,
      anon_sym_QMARK,
    ACTIONS(1576), 1,
      anon_sym_LBRACK,
    STATE(441), 1,
      sym__call_arguments,
    ACTIONS(1528), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1530), 2,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
    ACTIONS(1532), 2,
      anon_sym_LT,
      anon_sym_GT,
    ACTIONS(1548), 2,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
    ACTIONS(1552), 2,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1556), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1538), 3,
      anon_sym_STAR,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1570), 10,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_is,
      anon_sym_RPAREN,
      anon_sym_layout,
      anon_sym_COLON,
      sym_unchecked,
      anon_sym_returns,
      anon_sym_RBRACK,
      anon_sym_SEMI,
    ACTIONS(1578), 10,
      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_LT_LT_EQ,
  [2714] = 16,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1534), 1,
      anon_sym_CARET,
    ACTIONS(1542), 1,
      anon_sym_LPAREN,
    ACTIONS(1544), 1,
      anon_sym_AMP,
    ACTIONS(1546), 1,
      anon_sym_PIPE,
    ACTIONS(1554), 1,
      anon_sym_STAR_STAR,
    ACTIONS(1564), 1,
      anon_sym_EQ,
    STATE(441), 1,
      sym__call_arguments,
    ACTIONS(1528), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1530), 2,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
    ACTIONS(1532), 2,
      anon_sym_LT,
      anon_sym_GT,
    ACTIONS(1548), 2,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
    ACTIONS(1552), 2,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1556), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1538), 3,
      anon_sym_STAR,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1562), 26,
      anon_sym_PIPE_PIPE,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_is,
      anon_sym_RPAREN,
      anon_sym_layout,
      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_LT_LT_EQ,
      anon_sym_SEMI,
  [2796] = 9,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1542), 1,
      anon_sym_LPAREN,
    ACTIONS(1554), 1,
      anon_sym_STAR_STAR,
    STATE(441), 1,
      sym__call_arguments,
    ACTIONS(1528), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1556), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1538), 3,
      anon_sym_STAR,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1564), 8,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1562), 30,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_is,
      anon_sym_RPAREN,
      anon_sym_layout,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
      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_LT_LT_EQ,
      anon_sym_SEMI,
  [2864] = 6,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1542), 1,
      anon_sym_LPAREN,
    STATE(441), 1,
      sym__call_arguments,
    ACTIONS(1556), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1564), 13,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1562), 31,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_is,
      anon_sym_RPAREN,
      anon_sym_layout,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
      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_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_LT_LT_EQ,
      anon_sym_SEMI,
  [2926] = 23,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1526), 1,
      anon_sym_PIPE_PIPE,
    ACTIONS(1534), 1,
      anon_sym_CARET,
    ACTIONS(1542), 1,
      anon_sym_LPAREN,
    ACTIONS(1544), 1,
      anon_sym_AMP,
    ACTIONS(1546), 1,
      anon_sym_PIPE,
    ACTIONS(1550), 1,
      anon_sym_AMP_AMP,
    ACTIONS(1554), 1,
      anon_sym_STAR_STAR,
    ACTIONS(1566), 1,
      anon_sym_EQ,
    ACTIONS(1568), 1,
      anon_sym_LBRACE,
    ACTIONS(1572), 1,
      anon_sym_DOT,
    ACTIONS(1574), 1,
      anon_sym_QMARK,
    ACTIONS(1576), 1,
      anon_sym_LBRACK,
    STATE(441), 1,
      sym__call_arguments,
    ACTIONS(1528), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1530), 2,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
    ACTIONS(1532), 2,
      anon_sym_LT,
      anon_sym_GT,
    ACTIONS(1548), 2,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
    ACTIONS(1552), 2,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1556), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1538), 3,
      anon_sym_STAR,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1578), 10,
      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_LT_LT_EQ,
    ACTIONS(1580), 10,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_is,
      anon_sym_RPAREN,
      anon_sym_layout,
      anon_sym_COLON,
      sym_unchecked,
      anon_sym_returns,
      anon_sym_RBRACK,
      anon_sym_SEMI,
  [3022] = 7,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1542), 1,
      anon_sym_LPAREN,
    ACTIONS(1554), 1,
      anon_sym_STAR_STAR,
    STATE(441), 1,
      sym__call_arguments,
    ACTIONS(1556), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1564), 13,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1562), 30,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_is,
      anon_sym_RPAREN,
      anon_sym_layout,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
      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_LT_LT_EQ,
      anon_sym_SEMI,
  [3086] = 10,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1542), 1,
      anon_sym_LPAREN,
    ACTIONS(1554), 1,
      anon_sym_STAR_STAR,
    STATE(441), 1,
      sym__call_arguments,
    ACTIONS(1528), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1552), 2,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1556), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1538), 3,
      anon_sym_STAR,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1564), 6,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_AMP,
      anon_sym_PIPE,
    ACTIONS(1562), 30,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_is,
      anon_sym_RPAREN,
      anon_sym_layout,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
      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_LT_LT_EQ,
      anon_sym_SEMI,
  [3156] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1586), 1,
      anon_sym_LBRACK,
    STATE(427), 1,
      sym__call_arguments,
    ACTIONS(1584), 13,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1582), 33,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_is,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_layout,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
      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_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_LT_LT_EQ,
      anon_sym_SEMI,
  [3216] = 6,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1542), 1,
      anon_sym_LPAREN,
    STATE(441), 1,
      sym__call_arguments,
    ACTIONS(1556), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1590), 13,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1588), 31,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_is,
      anon_sym_RPAREN,
      anon_sym_layout,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
      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_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_LT_LT_EQ,
      anon_sym_SEMI,
  [3278] = 12,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1534), 1,
      anon_sym_CARET,
    ACTIONS(1542), 1,
      anon_sym_LPAREN,
    ACTIONS(1544), 1,
      anon_sym_AMP,
    ACTIONS(1554), 1,
      anon_sym_STAR_STAR,
    STATE(441), 1,
      sym__call_arguments,
    ACTIONS(1528), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1552), 2,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1556), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1538), 3,
      anon_sym_STAR,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1564), 4,
      anon_sym_LT,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_PIPE,
    ACTIONS(1562), 30,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_is,
      anon_sym_RPAREN,
      anon_sym_layout,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
      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_LT_LT_EQ,
      anon_sym_SEMI,
  [3352] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1594), 13,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1592), 35,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_is,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_layout,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
      anon_sym_COLON,
      anon_sym_DOT,
      anon_sym_hex,
      sym_unchecked,
      anon_sym_returns,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      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_LT_LT_EQ,
      anon_sym_SEMI,
  [3408] = 15,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1534), 1,
      anon_sym_CARET,
    ACTIONS(1542), 1,
      anon_sym_LPAREN,
    ACTIONS(1544), 1,
      anon_sym_AMP,
    ACTIONS(1546), 1,
      anon_sym_PIPE,
    ACTIONS(1554), 1,
      anon_sym_STAR_STAR,
    ACTIONS(1564), 1,
      anon_sym_EQ,
    STATE(441), 1,
      sym__call_arguments,
    ACTIONS(1528), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1530), 2,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
    ACTIONS(1532), 2,
      anon_sym_LT,
      anon_sym_GT,
    ACTIONS(1552), 2,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1556), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1538), 3,
      anon_sym_STAR,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1562), 28,
      anon_sym_PIPE_PIPE,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_is,
      anon_sym_RPAREN,
      anon_sym_layout,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
      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_LT_LT_EQ,
      anon_sym_SEMI,
  [3488] = 6,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1542), 1,
      anon_sym_LPAREN,
    STATE(441), 1,
      sym__call_arguments,
    ACTIONS(1556), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1598), 13,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1596), 31,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_is,
      anon_sym_RPAREN,
      anon_sym_layout,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
      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_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_LT_LT_EQ,
      anon_sym_SEMI,
  [3550] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1604), 1,
      anon_sym_LPAREN,
    STATE(442), 1,
      sym__call_arguments,
    ACTIONS(1602), 13,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1600), 33,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_is,
      anon_sym_RPAREN,
      anon_sym_layout,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
      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_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_LT_LT_EQ,
      anon_sym_SEMI,
  [3610] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1609), 13,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1607), 35,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_is,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_layout,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
      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_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_LT_LT_EQ,
      anon_sym_SEMI,
      anon_sym_unicode,
  [3666] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1613), 13,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1611), 35,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_is,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_layout,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
      anon_sym_COLON,
      anon_sym_DOT,
      anon_sym_hex,
      sym_unchecked,
      anon_sym_returns,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      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_LT_LT_EQ,
      anon_sym_SEMI,
  [3722] = 17,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1534), 1,
      anon_sym_CARET,
    ACTIONS(1542), 1,
      anon_sym_LPAREN,
    ACTIONS(1544), 1,
      anon_sym_AMP,
    ACTIONS(1546), 1,
      anon_sym_PIPE,
    ACTIONS(1550), 1,
      anon_sym_AMP_AMP,
    ACTIONS(1554), 1,
      anon_sym_STAR_STAR,
    ACTIONS(1564), 1,
      anon_sym_EQ,
    STATE(441), 1,
      sym__call_arguments,
    ACTIONS(1528), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1530), 2,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
    ACTIONS(1532), 2,
      anon_sym_LT,
      anon_sym_GT,
    ACTIONS(1548), 2,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
    ACTIONS(1552), 2,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1556), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1538), 3,
      anon_sym_STAR,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1562), 25,
      anon_sym_PIPE_PIPE,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_is,
      anon_sym_RPAREN,
      anon_sym_layout,
      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_LT_LT_EQ,
      anon_sym_SEMI,
  [3806] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1617), 13,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1615), 35,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_is,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_layout,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
      anon_sym_COLON,
      anon_sym_DOT,
      anon_sym_hex,
      sym_unchecked,
      anon_sym_returns,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_RBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      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_LT_LT_EQ,
      anon_sym_SEMI,
  [3862] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1621), 13,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1619), 34,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_is,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_layout,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
      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_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_LT_LT_EQ,
      anon_sym_SEMI,
  [3917] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1625), 13,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1623), 34,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_is,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_layout,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
      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_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_LT_LT_EQ,
      anon_sym_SEMI,
  [3972] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1629), 13,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1627), 34,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_is,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_layout,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
      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_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_LT_LT_EQ,
      anon_sym_SEMI,
  [4027] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1633), 13,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1631), 34,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_is,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_layout,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
      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_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_LT_LT_EQ,
      anon_sym_SEMI,
  [4082] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1637), 13,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1635), 34,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_is,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_layout,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
      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_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_LT_LT_EQ,
      anon_sym_SEMI,
  [4137] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1641), 13,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1639), 34,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_is,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_layout,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
      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_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_LT_LT_EQ,
      anon_sym_SEMI,
  [4192] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1645), 13,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1643), 34,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_is,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_layout,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
      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_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_LT_LT_EQ,
      anon_sym_SEMI,
  [4247] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1649), 13,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1647), 34,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_is,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_layout,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
      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_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_LT_LT_EQ,
      anon_sym_SEMI,
  [4302] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1653), 13,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1651), 34,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_is,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_layout,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
      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_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_LT_LT_EQ,
      anon_sym_SEMI,
  [4357] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1657), 13,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1655), 34,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_is,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_layout,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
      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_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_LT_LT_EQ,
      anon_sym_SEMI,
  [4412] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1661), 13,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1659), 34,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_is,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_layout,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
      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_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_LT_LT_EQ,
      anon_sym_SEMI,
  [4467] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1665), 13,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1663), 34,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_is,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_layout,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
      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_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_LT_LT_EQ,
      anon_sym_SEMI,
  [4522] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1669), 13,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1667), 34,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_is,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_layout,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
      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_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_LT_LT_EQ,
      anon_sym_SEMI,
  [4577] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1673), 13,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1671), 34,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_is,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_layout,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
      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_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_LT_LT_EQ,
      anon_sym_SEMI,
  [4632] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1677), 13,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1675), 34,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_is,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_layout,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
      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_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_LT_LT_EQ,
      anon_sym_SEMI,
  [4687] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1681), 13,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1679), 34,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_is,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_layout,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
      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_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_LT_LT_EQ,
      anon_sym_SEMI,
  [4742] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1685), 13,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1683), 34,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_is,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_layout,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
      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_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_LT_LT_EQ,
      anon_sym_SEMI,
  [4797] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1689), 13,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1687), 34,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_is,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_layout,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
      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_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_LT_LT_EQ,
      anon_sym_SEMI,
  [4852] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1693), 13,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1691), 34,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_is,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_layout,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
      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_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_LT_LT_EQ,
      anon_sym_SEMI,
  [4907] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1697), 13,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1695), 34,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_is,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_layout,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
      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_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_LT_LT_EQ,
      anon_sym_SEMI,
  [4962] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1701), 13,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1699), 34,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_is,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_layout,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
      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_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_LT_LT_EQ,
      anon_sym_SEMI,
  [5017] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1705), 13,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1703), 34,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_is,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_layout,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
      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_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_LT_LT_EQ,
      anon_sym_SEMI,
  [5072] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1709), 13,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1707), 34,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_is,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_layout,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
      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_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_LT_LT_EQ,
      anon_sym_SEMI,
  [5127] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1713), 13,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1711), 34,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_is,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_layout,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
      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_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_LT_LT_EQ,
      anon_sym_SEMI,
  [5182] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1717), 13,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1715), 34,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_is,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_layout,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
      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_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_LT_LT_EQ,
      anon_sym_SEMI,
  [5237] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1721), 13,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1719), 34,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_is,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_layout,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
      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_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_LT_LT_EQ,
      anon_sym_SEMI,
  [5292] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1725), 13,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1723), 34,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_is,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_layout,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
      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_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_LT_LT_EQ,
      anon_sym_SEMI,
  [5347] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1729), 13,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1727), 34,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_is,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_layout,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
      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_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_LT_LT_EQ,
      anon_sym_SEMI,
  [5402] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1733), 13,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1731), 34,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_is,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_layout,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
      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_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_LT_LT_EQ,
      anon_sym_SEMI,
  [5457] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1737), 13,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1735), 34,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_is,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_layout,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
      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_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_LT_LT_EQ,
      anon_sym_SEMI,
  [5512] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1741), 13,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1739), 34,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_is,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_layout,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
      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_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_LT_LT_EQ,
      anon_sym_SEMI,
  [5567] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1745), 13,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1743), 34,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_is,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_layout,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
      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_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_LT_LT_EQ,
      anon_sym_SEMI,
  [5622] = 7,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1604), 1,
      anon_sym_LPAREN,
    ACTIONS(1747), 1,
      anon_sym_LBRACK,
    STATE(442), 1,
      sym__call_arguments,
    ACTIONS(1422), 4,
      anon_sym_memory,
      anon_sym_storage,
      anon_sym_calldata,
      sym_identifier,
    ACTIONS(1602), 13,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1600), 25,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RPAREN,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
      anon_sym_DOT,
      anon_sym_QMARK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      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_LT_LT_EQ,
      anon_sym_SEMI,
  [5683] = 7,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1476), 1,
      anon_sym_DOT,
    ACTIONS(1750), 1,
      anon_sym_COLON,
    STATE(392), 1,
      aux_sym__identifier_path_repeat1,
    ACTIONS(1468), 4,
      anon_sym_memory,
      anon_sym_storage,
      anon_sym_calldata,
      sym_identifier,
    ACTIONS(1473), 13,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1470), 24,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_LPAREN,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      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_LT_LT_EQ,
      anon_sym_SEMI,
  [5743] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1747), 1,
      anon_sym_LBRACK,
    ACTIONS(1422), 4,
      anon_sym_memory,
      anon_sym_storage,
      anon_sym_calldata,
      sym_identifier,
    ACTIONS(1602), 13,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1600), 26,
      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_EQ_EQ,
      anon_sym_BANG_EQ,
      anon_sym_DOT,
      anon_sym_QMARK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      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_LT_LT_EQ,
      anon_sym_SEMI,
  [5799] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1752), 1,
      anon_sym_LPAREN,
    ACTIONS(1380), 17,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_memory,
      anon_sym_storage,
      anon_sym_calldata,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
      sym_identifier,
    ACTIONS(1382), 24,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
      anon_sym_DOT,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      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_LT_LT_EQ,
      anon_sym_SEMI,
  [5851] = 25,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1526), 1,
      anon_sym_PIPE_PIPE,
    ACTIONS(1534), 1,
      anon_sym_CARET,
    ACTIONS(1542), 1,
      anon_sym_LPAREN,
    ACTIONS(1544), 1,
      anon_sym_AMP,
    ACTIONS(1546), 1,
      anon_sym_PIPE,
    ACTIONS(1550), 1,
      anon_sym_AMP_AMP,
    ACTIONS(1554), 1,
      anon_sym_STAR_STAR,
    ACTIONS(1566), 1,
      anon_sym_EQ,
    ACTIONS(1568), 1,
      anon_sym_LBRACE,
    ACTIONS(1572), 1,
      anon_sym_DOT,
    ACTIONS(1574), 1,
      anon_sym_QMARK,
    ACTIONS(1576), 1,
      anon_sym_LBRACK,
    ACTIONS(1754), 1,
      anon_sym_COMMA,
    ACTIONS(1756), 1,
      anon_sym_RPAREN,
    STATE(441), 1,
      sym__call_arguments,
    STATE(726), 1,
      aux_sym_tuple_expression_repeat1,
    ACTIONS(1528), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1530), 2,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
    ACTIONS(1532), 2,
      anon_sym_LT,
      anon_sym_GT,
    ACTIONS(1548), 2,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
    ACTIONS(1552), 2,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1556), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1538), 3,
      anon_sym_STAR,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1578), 10,
      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_LT_LT_EQ,
  [5944] = 25,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1526), 1,
      anon_sym_PIPE_PIPE,
    ACTIONS(1534), 1,
      anon_sym_CARET,
    ACTIONS(1542), 1,
      anon_sym_LPAREN,
    ACTIONS(1544), 1,
      anon_sym_AMP,
    ACTIONS(1546), 1,
      anon_sym_PIPE,
    ACTIONS(1550), 1,
      anon_sym_AMP_AMP,
    ACTIONS(1554), 1,
      anon_sym_STAR_STAR,
    ACTIONS(1566), 1,
      anon_sym_EQ,
    ACTIONS(1568), 1,
      anon_sym_LBRACE,
    ACTIONS(1572), 1,
      anon_sym_DOT,
    ACTIONS(1574), 1,
      anon_sym_QMARK,
    ACTIONS(1576), 1,
      anon_sym_LBRACK,
    ACTIONS(1754), 1,
      anon_sym_COMMA,
    ACTIONS(1756), 1,
      anon_sym_RPAREN,
    STATE(441), 1,
      sym__call_arguments,
    STATE(726), 1,
      aux_sym_tuple_expression_repeat1,
    ACTIONS(1528), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1530), 2,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
    ACTIONS(1532), 2,
      anon_sym_LT,
      anon_sym_GT,
    ACTIONS(1548), 2,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
    ACTIONS(1552), 2,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1556), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1538), 3,
      anon_sym_STAR,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1578), 10,
      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_LT_LT_EQ,
  [6037] = 25,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1526), 1,
      anon_sym_PIPE_PIPE,
    ACTIONS(1534), 1,
      anon_sym_CARET,
    ACTIONS(1542), 1,
      anon_sym_LPAREN,
    ACTIONS(1544), 1,
      anon_sym_AMP,
    ACTIONS(1546), 1,
      anon_sym_PIPE,
    ACTIONS(1550), 1,
      anon_sym_AMP_AMP,
    ACTIONS(1554), 1,
      anon_sym_STAR_STAR,
    ACTIONS(1566), 1,
      anon_sym_EQ,
    ACTIONS(1572), 1,
      anon_sym_DOT,
    ACTIONS(1574), 1,
      anon_sym_QMARK,
    ACTIONS(1576), 1,
      anon_sym_LBRACK,
    ACTIONS(1758), 1,
      anon_sym_LBRACE,
    ACTIONS(1760), 1,
      sym_unchecked,
    ACTIONS(1762), 1,
      anon_sym_returns,
    STATE(441), 1,
      sym__call_arguments,
    STATE(684), 1,
      sym_block_statement,
    ACTIONS(1528), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1530), 2,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
    ACTIONS(1532), 2,
      anon_sym_LT,
      anon_sym_GT,
    ACTIONS(1548), 2,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
    ACTIONS(1552), 2,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1556), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1538), 3,
      anon_sym_STAR,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1578), 10,
      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_LT_LT_EQ,
  [6130] = 25,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1526), 1,
      anon_sym_PIPE_PIPE,
    ACTIONS(1534), 1,
      anon_sym_CARET,
    ACTIONS(1542), 1,
      anon_sym_LPAREN,
    ACTIONS(1544), 1,
      anon_sym_AMP,
    ACTIONS(1546), 1,
      anon_sym_PIPE,
    ACTIONS(1550), 1,
      anon_sym_AMP_AMP,
    ACTIONS(1554), 1,
      anon_sym_STAR_STAR,
    ACTIONS(1566), 1,
      anon_sym_EQ,
    ACTIONS(1568), 1,
      anon_sym_LBRACE,
    ACTIONS(1572), 1,
      anon_sym_DOT,
    ACTIONS(1574), 1,
      anon_sym_QMARK,
    ACTIONS(1576), 1,
      anon_sym_LBRACK,
    ACTIONS(1764), 1,
      anon_sym_COMMA,
    ACTIONS(1766), 1,
      anon_sym_RBRACK,
    STATE(441), 1,
      sym__call_arguments,
    STATE(657), 1,
      aux_sym_inline_array_expression_repeat1,
    ACTIONS(1528), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1530), 2,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
    ACTIONS(1532), 2,
      anon_sym_LT,
      anon_sym_GT,
    ACTIONS(1548), 2,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
    ACTIONS(1552), 2,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1556), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1538), 3,
      anon_sym_STAR,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1578), 10,
      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_LT_LT_EQ,
  [6223] = 24,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1526), 1,
      anon_sym_PIPE_PIPE,
    ACTIONS(1534), 1,
      anon_sym_CARET,
    ACTIONS(1542), 1,
      anon_sym_LPAREN,
    ACTIONS(1544), 1,
      anon_sym_AMP,
    ACTIONS(1546), 1,
      anon_sym_PIPE,
    ACTIONS(1550), 1,
      anon_sym_AMP_AMP,
    ACTIONS(1554), 1,
      anon_sym_STAR_STAR,
    ACTIONS(1566), 1,
      anon_sym_EQ,
    ACTIONS(1568), 1,
      anon_sym_LBRACE,
    ACTIONS(1572), 1,
      anon_sym_DOT,
    ACTIONS(1574), 1,
      anon_sym_QMARK,
    ACTIONS(1576), 1,
      anon_sym_LBRACK,
    ACTIONS(1768), 1,
      anon_sym_SEMI,
    STATE(94), 1,
      sym__semicolon,
    STATE(441), 1,
      sym__call_arguments,
    ACTIONS(1528), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1530), 2,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
    ACTIONS(1532), 2,
      anon_sym_LT,
      anon_sym_GT,
    ACTIONS(1548), 2,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
    ACTIONS(1552), 2,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1556), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1538), 3,
      anon_sym_STAR,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1578), 10,
      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_LT_LT_EQ,
  [6313] = 24,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1526), 1,
      anon_sym_PIPE_PIPE,
    ACTIONS(1534), 1,
      anon_sym_CARET,
    ACTIONS(1542), 1,
      anon_sym_LPAREN,
    ACTIONS(1544), 1,
      anon_sym_AMP,
    ACTIONS(1546), 1,
      anon_sym_PIPE,
    ACTIONS(1550), 1,
      anon_sym_AMP_AMP,
    ACTIONS(1554), 1,
      anon_sym_STAR_STAR,
    ACTIONS(1566), 1,
      anon_sym_EQ,
    ACTIONS(1568), 1,
      anon_sym_LBRACE,
    ACTIONS(1572), 1,
      anon_sym_DOT,
    ACTIONS(1574), 1,
      anon_sym_QMARK,
    ACTIONS(1576), 1,
      anon_sym_LBRACK,
    ACTIONS(1770), 1,
      anon_sym_SEMI,
    STATE(253), 1,
      sym__semicolon,
    STATE(441), 1,
      sym__call_arguments,
    ACTIONS(1528), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1530), 2,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
    ACTIONS(1532), 2,
      anon_sym_LT,
      anon_sym_GT,
    ACTIONS(1548), 2,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
    ACTIONS(1552), 2,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1556), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1538), 3,
      anon_sym_STAR,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1578), 10,
      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_LT_LT_EQ,
  [6403] = 24,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1526), 1,
      anon_sym_PIPE_PIPE,
    ACTIONS(1534), 1,
      anon_sym_CARET,
    ACTIONS(1542), 1,
      anon_sym_LPAREN,
    ACTIONS(1544), 1,
      anon_sym_AMP,
    ACTIONS(1546), 1,
      anon_sym_PIPE,
    ACTIONS(1550), 1,
      anon_sym_AMP_AMP,
    ACTIONS(1554), 1,
      anon_sym_STAR_STAR,
    ACTIONS(1566), 1,
      anon_sym_EQ,
    ACTIONS(1568), 1,
      anon_sym_LBRACE,
    ACTIONS(1572), 1,
      anon_sym_DOT,
    ACTIONS(1574), 1,
      anon_sym_QMARK,
    ACTIONS(1576), 1,
      anon_sym_LBRACK,
    ACTIONS(1772), 1,
      anon_sym_SEMI,
    STATE(202), 1,
      sym__semicolon,
    STATE(441), 1,
      sym__call_arguments,
    ACTIONS(1528), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1530), 2,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
    ACTIONS(1532), 2,
      anon_sym_LT,
      anon_sym_GT,
    ACTIONS(1548), 2,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
    ACTIONS(1552), 2,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1556), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1538), 3,
      anon_sym_STAR,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1578), 10,
      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_LT_LT_EQ,
  [6493] = 23,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1526), 1,
      anon_sym_PIPE_PIPE,
    ACTIONS(1534), 1,
      anon_sym_CARET,
    ACTIONS(1542), 1,
      anon_sym_LPAREN,
    ACTIONS(1544), 1,
      anon_sym_AMP,
    ACTIONS(1546), 1,
      anon_sym_PIPE,
    ACTIONS(1550), 1,
      anon_sym_AMP_AMP,
    ACTIONS(1554), 1,
      anon_sym_STAR_STAR,
    ACTIONS(1566), 1,
      anon_sym_EQ,
    ACTIONS(1568), 1,
      anon_sym_LBRACE,
    ACTIONS(1572), 1,
      anon_sym_DOT,
    ACTIONS(1574), 1,
      anon_sym_QMARK,
    ACTIONS(1576), 1,
      anon_sym_LBRACK,
    STATE(441), 1,
      sym__call_arguments,
    ACTIONS(1528), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1530), 2,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
    ACTIONS(1532), 2,
      anon_sym_LT,
      anon_sym_GT,
    ACTIONS(1548), 2,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
    ACTIONS(1552), 2,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1556), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1774), 2,
      anon_sym_COMMA,
      anon_sym_RPAREN,
    ACTIONS(1538), 3,
      anon_sym_STAR,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1578), 10,
      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_LT_LT_EQ,
  [6581] = 24,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1526), 1,
      anon_sym_PIPE_PIPE,
    ACTIONS(1534), 1,
      anon_sym_CARET,
    ACTIONS(1542), 1,
      anon_sym_LPAREN,
    ACTIONS(1544), 1,
      anon_sym_AMP,
    ACTIONS(1546), 1,
      anon_sym_PIPE,
    ACTIONS(1550), 1,
      anon_sym_AMP_AMP,
    ACTIONS(1554), 1,
      anon_sym_STAR_STAR,
    ACTIONS(1566), 1,
      anon_sym_EQ,
    ACTIONS(1568), 1,
      anon_sym_LBRACE,
    ACTIONS(1572), 1,
      anon_sym_DOT,
    ACTIONS(1574), 1,
      anon_sym_QMARK,
    ACTIONS(1576), 1,
      anon_sym_LBRACK,
    ACTIONS(1776), 1,
      anon_sym_COLON,
    ACTIONS(1778), 1,
      anon_sym_RBRACK,
    STATE(441), 1,
      sym__call_arguments,
    ACTIONS(1528), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1530), 2,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
    ACTIONS(1532), 2,
      anon_sym_LT,
      anon_sym_GT,
    ACTIONS(1548), 2,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
    ACTIONS(1552), 2,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1556), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1538), 3,
      anon_sym_STAR,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1578), 10,
      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_LT_LT_EQ,
  [6671] = 24,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1526), 1,
      anon_sym_PIPE_PIPE,
    ACTIONS(1534), 1,
      anon_sym_CARET,
    ACTIONS(1542), 1,
      anon_sym_LPAREN,
    ACTIONS(1544), 1,
      anon_sym_AMP,
    ACTIONS(1546), 1,
      anon_sym_PIPE,
    ACTIONS(1550), 1,
      anon_sym_AMP_AMP,
    ACTIONS(1554), 1,
      anon_sym_STAR_STAR,
    ACTIONS(1566), 1,
      anon_sym_EQ,
    ACTIONS(1568), 1,
      anon_sym_LBRACE,
    ACTIONS(1572), 1,
      anon_sym_DOT,
    ACTIONS(1574), 1,
      anon_sym_QMARK,
    ACTIONS(1576), 1,
      anon_sym_LBRACK,
    ACTIONS(1768), 1,
      anon_sym_SEMI,
    STATE(94), 1,
      sym__semicolon,
    STATE(441), 1,
      sym__call_arguments,
    ACTIONS(1528), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1530), 2,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
    ACTIONS(1532), 2,
      anon_sym_LT,
      anon_sym_GT,
    ACTIONS(1548), 2,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
    ACTIONS(1552), 2,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1556), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1538), 3,
      anon_sym_STAR,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1578), 10,
      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_LT_LT_EQ,
  [6761] = 23,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1526), 1,
      anon_sym_PIPE_PIPE,
    ACTIONS(1534), 1,
      anon_sym_CARET,
    ACTIONS(1542), 1,
      anon_sym_LPAREN,
    ACTIONS(1544), 1,
      anon_sym_AMP,
    ACTIONS(1546), 1,
      anon_sym_PIPE,
    ACTIONS(1550), 1,
      anon_sym_AMP_AMP,
    ACTIONS(1554), 1,
      anon_sym_STAR_STAR,
    ACTIONS(1566), 1,
      anon_sym_EQ,
    ACTIONS(1568), 1,
      anon_sym_LBRACE,
    ACTIONS(1572), 1,
      anon_sym_DOT,
    ACTIONS(1574), 1,
      anon_sym_QMARK,
    ACTIONS(1576), 1,
      anon_sym_LBRACK,
    STATE(441), 1,
      sym__call_arguments,
    ACTIONS(1528), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1530), 2,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
    ACTIONS(1532), 2,
      anon_sym_LT,
      anon_sym_GT,
    ACTIONS(1548), 2,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
    ACTIONS(1552), 2,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1556), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1780), 2,
      anon_sym_COMMA,
      anon_sym_RPAREN,
    ACTIONS(1538), 3,
      anon_sym_STAR,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1578), 10,
      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_LT_LT_EQ,
  [6849] = 24,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1526), 1,
      anon_sym_PIPE_PIPE,
    ACTIONS(1534), 1,
      anon_sym_CARET,
    ACTIONS(1542), 1,
      anon_sym_LPAREN,
    ACTIONS(1544), 1,
      anon_sym_AMP,
    ACTIONS(1546), 1,
      anon_sym_PIPE,
    ACTIONS(1550), 1,
      anon_sym_AMP_AMP,
    ACTIONS(1554), 1,
      anon_sym_STAR_STAR,
    ACTIONS(1566), 1,
      anon_sym_EQ,
    ACTIONS(1568), 1,
      anon_sym_LBRACE,
    ACTIONS(1572), 1,
      anon_sym_DOT,
    ACTIONS(1574), 1,
      anon_sym_QMARK,
    ACTIONS(1576), 1,
      anon_sym_LBRACK,
    ACTIONS(1782), 1,
      anon_sym_SEMI,
    STATE(93), 1,
      sym__semicolon,
    STATE(441), 1,
      sym__call_arguments,
    ACTIONS(1528), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1530), 2,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
    ACTIONS(1532), 2,
      anon_sym_LT,
      anon_sym_GT,
    ACTIONS(1548), 2,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
    ACTIONS(1552), 2,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1556), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1538), 3,
      anon_sym_STAR,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1578), 10,
      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_LT_LT_EQ,
  [6939] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(485), 1,
      anon_sym_catch,
    ACTIONS(1669), 13,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1667), 26,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_LPAREN,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
      anon_sym_DOT,
      sym_unchecked,
      anon_sym_returns,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      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_LT_LT_EQ,
  [6989] = 24,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1526), 1,
      anon_sym_PIPE_PIPE,
    ACTIONS(1534), 1,
      anon_sym_CARET,
    ACTIONS(1542), 1,
      anon_sym_LPAREN,
    ACTIONS(1544), 1,
      anon_sym_AMP,
    ACTIONS(1546), 1,
      anon_sym_PIPE,
    ACTIONS(1550), 1,
      anon_sym_AMP_AMP,
    ACTIONS(1554), 1,
      anon_sym_STAR_STAR,
    ACTIONS(1566), 1,
      anon_sym_EQ,
    ACTIONS(1568), 1,
      anon_sym_LBRACE,
    ACTIONS(1572), 1,
      anon_sym_DOT,
    ACTIONS(1574), 1,
      anon_sym_QMARK,
    ACTIONS(1576), 1,
      anon_sym_LBRACK,
    ACTIONS(1784), 1,
      anon_sym_SEMI,
    STATE(116), 1,
      sym__semicolon,
    STATE(441), 1,
      sym__call_arguments,
    ACTIONS(1528), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1530), 2,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
    ACTIONS(1532), 2,
      anon_sym_LT,
      anon_sym_GT,
    ACTIONS(1548), 2,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
    ACTIONS(1552), 2,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1556), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1538), 3,
      anon_sym_STAR,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1578), 10,
      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_LT_LT_EQ,
  [7079] = 24,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1526), 1,
      anon_sym_PIPE_PIPE,
    ACTIONS(1534), 1,
      anon_sym_CARET,
    ACTIONS(1542), 1,
      anon_sym_LPAREN,
    ACTIONS(1544), 1,
      anon_sym_AMP,
    ACTIONS(1546), 1,
      anon_sym_PIPE,
    ACTIONS(1550), 1,
      anon_sym_AMP_AMP,
    ACTIONS(1554), 1,
      anon_sym_STAR_STAR,
    ACTIONS(1566), 1,
      anon_sym_EQ,
    ACTIONS(1568), 1,
      anon_sym_LBRACE,
    ACTIONS(1572), 1,
      anon_sym_DOT,
    ACTIONS(1574), 1,
      anon_sym_QMARK,
    ACTIONS(1576), 1,
      anon_sym_LBRACK,
    ACTIONS(1786), 1,
      anon_sym_SEMI,
    STATE(254), 1,
      sym__semicolon,
    STATE(441), 1,
      sym__call_arguments,
    ACTIONS(1528), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1530), 2,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
    ACTIONS(1532), 2,
      anon_sym_LT,
      anon_sym_GT,
    ACTIONS(1548), 2,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
    ACTIONS(1552), 2,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1556), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1538), 3,
      anon_sym_STAR,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1578), 10,
      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_LT_LT_EQ,
  [7169] = 24,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1526), 1,
      anon_sym_PIPE_PIPE,
    ACTIONS(1534), 1,
      anon_sym_CARET,
    ACTIONS(1542), 1,
      anon_sym_LPAREN,
    ACTIONS(1544), 1,
      anon_sym_AMP,
    ACTIONS(1546), 1,
      anon_sym_PIPE,
    ACTIONS(1550), 1,
      anon_sym_AMP_AMP,
    ACTIONS(1554), 1,
      anon_sym_STAR_STAR,
    ACTIONS(1566), 1,
      anon_sym_EQ,
    ACTIONS(1568), 1,
      anon_sym_LBRACE,
    ACTIONS(1572), 1,
      anon_sym_DOT,
    ACTIONS(1574), 1,
      anon_sym_QMARK,
    ACTIONS(1576), 1,
      anon_sym_LBRACK,
    ACTIONS(1784), 1,
      anon_sym_SEMI,
    STATE(116), 1,
      sym__semicolon,
    STATE(441), 1,
      sym__call_arguments,
    ACTIONS(1528), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1530), 2,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
    ACTIONS(1532), 2,
      anon_sym_LT,
      anon_sym_GT,
    ACTIONS(1548), 2,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
    ACTIONS(1552), 2,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1556), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1538), 3,
      anon_sym_STAR,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1578), 10,
      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_LT_LT_EQ,
  [7259] = 24,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1526), 1,
      anon_sym_PIPE_PIPE,
    ACTIONS(1534), 1,
      anon_sym_CARET,
    ACTIONS(1542), 1,
      anon_sym_LPAREN,
    ACTIONS(1544), 1,
      anon_sym_AMP,
    ACTIONS(1546), 1,
      anon_sym_PIPE,
    ACTIONS(1550), 1,
      anon_sym_AMP_AMP,
    ACTIONS(1554), 1,
      anon_sym_STAR_STAR,
    ACTIONS(1566), 1,
      anon_sym_EQ,
    ACTIONS(1568), 1,
      anon_sym_LBRACE,
    ACTIONS(1572), 1,
      anon_sym_DOT,
    ACTIONS(1574), 1,
      anon_sym_QMARK,
    ACTIONS(1576), 1,
      anon_sym_LBRACK,
    ACTIONS(1788), 1,
      anon_sym_SEMI,
    STATE(106), 1,
      sym__semicolon,
    STATE(489), 1,
      sym__call_arguments,
    ACTIONS(1528), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1530), 2,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
    ACTIONS(1532), 2,
      anon_sym_LT,
      anon_sym_GT,
    ACTIONS(1548), 2,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
    ACTIONS(1552), 2,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1556), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1538), 3,
      anon_sym_STAR,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1578), 10,
      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_LT_LT_EQ,
  [7349] = 24,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1526), 1,
      anon_sym_PIPE_PIPE,
    ACTIONS(1534), 1,
      anon_sym_CARET,
    ACTIONS(1542), 1,
      anon_sym_LPAREN,
    ACTIONS(1544), 1,
      anon_sym_AMP,
    ACTIONS(1546), 1,
      anon_sym_PIPE,
    ACTIONS(1550), 1,
      anon_sym_AMP_AMP,
    ACTIONS(1554), 1,
      anon_sym_STAR_STAR,
    ACTIONS(1566), 1,
      anon_sym_EQ,
    ACTIONS(1568), 1,
      anon_sym_LBRACE,
    ACTIONS(1572), 1,
      anon_sym_DOT,
    ACTIONS(1574), 1,
      anon_sym_QMARK,
    ACTIONS(1576), 1,
      anon_sym_LBRACK,
    ACTIONS(1788), 1,
      anon_sym_SEMI,
    STATE(106), 1,
      sym__semicolon,
    STATE(484), 1,
      sym__call_arguments,
    ACTIONS(1528), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1530), 2,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
    ACTIONS(1532), 2,
      anon_sym_LT,
      anon_sym_GT,
    ACTIONS(1548), 2,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
    ACTIONS(1552), 2,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1556), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1538), 3,
      anon_sym_STAR,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1578), 10,
      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_LT_LT_EQ,
  [7439] = 24,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1526), 1,
      anon_sym_PIPE_PIPE,
    ACTIONS(1534), 1,
      anon_sym_CARET,
    ACTIONS(1542), 1,
      anon_sym_LPAREN,
    ACTIONS(1544), 1,
      anon_sym_AMP,
    ACTIONS(1546), 1,
      anon_sym_PIPE,
    ACTIONS(1550), 1,
      anon_sym_AMP_AMP,
    ACTIONS(1554), 1,
      anon_sym_STAR_STAR,
    ACTIONS(1566), 1,
      anon_sym_EQ,
    ACTIONS(1568), 1,
      anon_sym_LBRACE,
    ACTIONS(1572), 1,
      anon_sym_DOT,
    ACTIONS(1574), 1,
      anon_sym_QMARK,
    ACTIONS(1576), 1,
      anon_sym_LBRACK,
    ACTIONS(1782), 1,
      anon_sym_SEMI,
    STATE(93), 1,
      sym__semicolon,
    STATE(441), 1,
      sym__call_arguments,
    ACTIONS(1528), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1530), 2,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
    ACTIONS(1532), 2,
      anon_sym_LT,
      anon_sym_GT,
    ACTIONS(1548), 2,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
    ACTIONS(1552), 2,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1556), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1538), 3,
      anon_sym_STAR,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1578), 10,
      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_LT_LT_EQ,
  [7529] = 23,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1526), 1,
      anon_sym_PIPE_PIPE,
    ACTIONS(1534), 1,
      anon_sym_CARET,
    ACTIONS(1542), 1,
      anon_sym_LPAREN,
    ACTIONS(1544), 1,
      anon_sym_AMP,
    ACTIONS(1546), 1,
      anon_sym_PIPE,
    ACTIONS(1550), 1,
      anon_sym_AMP_AMP,
    ACTIONS(1554), 1,
      anon_sym_STAR_STAR,
    ACTIONS(1566), 1,
      anon_sym_EQ,
    ACTIONS(1572), 1,
      anon_sym_DOT,
    ACTIONS(1574), 1,
      anon_sym_QMARK,
    ACTIONS(1576), 1,
      anon_sym_LBRACK,
    ACTIONS(1790), 1,
      anon_sym_LBRACE,
    STATE(441), 1,
      sym__call_arguments,
    ACTIONS(1528), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1530), 2,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
    ACTIONS(1532), 2,
      anon_sym_LT,
      anon_sym_GT,
    ACTIONS(1548), 2,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
    ACTIONS(1552), 2,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1556), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1793), 2,
      anon_sym_is,
      anon_sym_layout,
    ACTIONS(1538), 3,
      anon_sym_STAR,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1578), 10,
      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_LT_LT_EQ,
  [7617] = 23,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1526), 1,
      anon_sym_PIPE_PIPE,
    ACTIONS(1534), 1,
      anon_sym_CARET,
    ACTIONS(1542), 1,
      anon_sym_LPAREN,
    ACTIONS(1544), 1,
      anon_sym_AMP,
    ACTIONS(1546), 1,
      anon_sym_PIPE,
    ACTIONS(1550), 1,
      anon_sym_AMP_AMP,
    ACTIONS(1554), 1,
      anon_sym_STAR_STAR,
    ACTIONS(1566), 1,
      anon_sym_EQ,
    ACTIONS(1568), 1,
      anon_sym_LBRACE,
    ACTIONS(1572), 1,
      anon_sym_DOT,
    ACTIONS(1574), 1,
      anon_sym_QMARK,
    ACTIONS(1576), 1,
      anon_sym_LBRACK,
    STATE(441), 1,
      sym__call_arguments,
    ACTIONS(1528), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1530), 2,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
    ACTIONS(1532), 2,
      anon_sym_LT,
      anon_sym_GT,
    ACTIONS(1548), 2,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
    ACTIONS(1552), 2,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1556), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1795), 2,
      anon_sym_COMMA,
      anon_sym_RBRACE,
    ACTIONS(1538), 3,
      anon_sym_STAR,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1578), 10,
      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_LT_LT_EQ,
  [7705] = 23,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1526), 1,
      anon_sym_PIPE_PIPE,
    ACTIONS(1534), 1,
      anon_sym_CARET,
    ACTIONS(1542), 1,
      anon_sym_LPAREN,
    ACTIONS(1544), 1,
      anon_sym_AMP,
    ACTIONS(1546), 1,
      anon_sym_PIPE,
    ACTIONS(1550), 1,
      anon_sym_AMP_AMP,
    ACTIONS(1554), 1,
      anon_sym_STAR_STAR,
    ACTIONS(1566), 1,
      anon_sym_EQ,
    ACTIONS(1568), 1,
      anon_sym_LBRACE,
    ACTIONS(1572), 1,
      anon_sym_DOT,
    ACTIONS(1574), 1,
      anon_sym_QMARK,
    ACTIONS(1576), 1,
      anon_sym_LBRACK,
    STATE(441), 1,
      sym__call_arguments,
    ACTIONS(1528), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1530), 2,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
    ACTIONS(1532), 2,
      anon_sym_LT,
      anon_sym_GT,
    ACTIONS(1548), 2,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
    ACTIONS(1552), 2,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1556), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1797), 2,
      anon_sym_COMMA,
      anon_sym_RBRACE,
    ACTIONS(1538), 3,
      anon_sym_STAR,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1578), 10,
      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_LT_LT_EQ,
  [7793] = 23,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1526), 1,
      anon_sym_PIPE_PIPE,
    ACTIONS(1534), 1,
      anon_sym_CARET,
    ACTIONS(1542), 1,
      anon_sym_LPAREN,
    ACTIONS(1544), 1,
      anon_sym_AMP,
    ACTIONS(1546), 1,
      anon_sym_PIPE,
    ACTIONS(1550), 1,
      anon_sym_AMP_AMP,
    ACTIONS(1554), 1,
      anon_sym_STAR_STAR,
    ACTIONS(1566), 1,
      anon_sym_EQ,
    ACTIONS(1568), 1,
      anon_sym_LBRACE,
    ACTIONS(1572), 1,
      anon_sym_DOT,
    ACTIONS(1574), 1,
      anon_sym_QMARK,
    ACTIONS(1576), 1,
      anon_sym_LBRACK,
    STATE(441), 1,
      sym__call_arguments,
    ACTIONS(1528), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1530), 2,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
    ACTIONS(1532), 2,
      anon_sym_LT,
      anon_sym_GT,
    ACTIONS(1548), 2,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
    ACTIONS(1552), 2,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1556), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1799), 2,
      anon_sym_COMMA,
      anon_sym_RBRACK,
    ACTIONS(1538), 3,
      anon_sym_STAR,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1578), 10,
      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_LT_LT_EQ,
  [7881] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1801), 1,
      anon_sym_SEMI,
    STATE(105), 1,
      sym__semicolon,
    ACTIONS(1685), 13,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1683), 24,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_LPAREN,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
      anon_sym_DOT,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      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_LT_LT_EQ,
  [7932] = 23,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1526), 1,
      anon_sym_PIPE_PIPE,
    ACTIONS(1534), 1,
      anon_sym_CARET,
    ACTIONS(1542), 1,
      anon_sym_LPAREN,
    ACTIONS(1544), 1,
      anon_sym_AMP,
    ACTIONS(1546), 1,
      anon_sym_PIPE,
    ACTIONS(1550), 1,
      anon_sym_AMP_AMP,
    ACTIONS(1554), 1,
      anon_sym_STAR_STAR,
    ACTIONS(1566), 1,
      anon_sym_EQ,
    ACTIONS(1568), 1,
      anon_sym_LBRACE,
    ACTIONS(1572), 1,
      anon_sym_DOT,
    ACTIONS(1574), 1,
      anon_sym_QMARK,
    ACTIONS(1576), 1,
      anon_sym_LBRACK,
    ACTIONS(1803), 1,
      anon_sym_RBRACK,
    STATE(441), 1,
      sym__call_arguments,
    ACTIONS(1528), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1530), 2,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
    ACTIONS(1532), 2,
      anon_sym_LT,
      anon_sym_GT,
    ACTIONS(1548), 2,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
    ACTIONS(1552), 2,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1556), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1538), 3,
      anon_sym_STAR,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1578), 10,
      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_LT_LT_EQ,
  [8019] = 23,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1526), 1,
      anon_sym_PIPE_PIPE,
    ACTIONS(1534), 1,
      anon_sym_CARET,
    ACTIONS(1542), 1,
      anon_sym_LPAREN,
    ACTIONS(1544), 1,
      anon_sym_AMP,
    ACTIONS(1546), 1,
      anon_sym_PIPE,
    ACTIONS(1550), 1,
      anon_sym_AMP_AMP,
    ACTIONS(1554), 1,
      anon_sym_STAR_STAR,
    ACTIONS(1566), 1,
      anon_sym_EQ,
    ACTIONS(1568), 1,
      anon_sym_LBRACE,
    ACTIONS(1572), 1,
      anon_sym_DOT,
    ACTIONS(1574), 1,
      anon_sym_QMARK,
    ACTIONS(1576), 1,
      anon_sym_LBRACK,
    ACTIONS(1805), 1,
      anon_sym_RPAREN,
    STATE(441), 1,
      sym__call_arguments,
    ACTIONS(1528), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1530), 2,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
    ACTIONS(1532), 2,
      anon_sym_LT,
      anon_sym_GT,
    ACTIONS(1548), 2,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
    ACTIONS(1552), 2,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1556), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1538), 3,
      anon_sym_STAR,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1578), 10,
      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_LT_LT_EQ,
  [8106] = 23,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1526), 1,
      anon_sym_PIPE_PIPE,
    ACTIONS(1534), 1,
      anon_sym_CARET,
    ACTIONS(1542), 1,
      anon_sym_LPAREN,
    ACTIONS(1544), 1,
      anon_sym_AMP,
    ACTIONS(1546), 1,
      anon_sym_PIPE,
    ACTIONS(1550), 1,
      anon_sym_AMP_AMP,
    ACTIONS(1554), 1,
      anon_sym_STAR_STAR,
    ACTIONS(1566), 1,
      anon_sym_EQ,
    ACTIONS(1568), 1,
      anon_sym_LBRACE,
    ACTIONS(1572), 1,
      anon_sym_DOT,
    ACTIONS(1574), 1,
      anon_sym_QMARK,
    ACTIONS(1576), 1,
      anon_sym_LBRACK,
    ACTIONS(1807), 1,
      anon_sym_RBRACK,
    STATE(441), 1,
      sym__call_arguments,
    ACTIONS(1528), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1530), 2,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
    ACTIONS(1532), 2,
      anon_sym_LT,
      anon_sym_GT,
    ACTIONS(1548), 2,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
    ACTIONS(1552), 2,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1556), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1538), 3,
      anon_sym_STAR,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1578), 10,
      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_LT_LT_EQ,
  [8193] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1809), 1,
      anon_sym_SEMI,
    STATE(115), 1,
      sym__semicolon,
    ACTIONS(1685), 13,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1683), 24,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_LPAREN,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
      anon_sym_DOT,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      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_LT_LT_EQ,
  [8244] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1801), 1,
      anon_sym_SEMI,
    STATE(105), 1,
      sym__semicolon,
    ACTIONS(1685), 13,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1683), 24,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_LPAREN,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
      anon_sym_DOT,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      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_LT_LT_EQ,
  [8295] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1809), 1,
      anon_sym_SEMI,
    STATE(115), 1,
      sym__semicolon,
    ACTIONS(1685), 13,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1683), 24,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_LPAREN,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
      anon_sym_DOT,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      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_LT_LT_EQ,
  [8346] = 23,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1526), 1,
      anon_sym_PIPE_PIPE,
    ACTIONS(1534), 1,
      anon_sym_CARET,
    ACTIONS(1542), 1,
      anon_sym_LPAREN,
    ACTIONS(1544), 1,
      anon_sym_AMP,
    ACTIONS(1546), 1,
      anon_sym_PIPE,
    ACTIONS(1550), 1,
      anon_sym_AMP_AMP,
    ACTIONS(1554), 1,
      anon_sym_STAR_STAR,
    ACTIONS(1566), 1,
      anon_sym_EQ,
    ACTIONS(1568), 1,
      anon_sym_LBRACE,
    ACTIONS(1572), 1,
      anon_sym_DOT,
    ACTIONS(1574), 1,
      anon_sym_QMARK,
    ACTIONS(1576), 1,
      anon_sym_LBRACK,
    ACTIONS(1811), 1,
      anon_sym_RBRACK,
    STATE(441), 1,
      sym__call_arguments,
    ACTIONS(1528), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1530), 2,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
    ACTIONS(1532), 2,
      anon_sym_LT,
      anon_sym_GT,
    ACTIONS(1548), 2,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
    ACTIONS(1552), 2,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1556), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1538), 3,
      anon_sym_STAR,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1578), 10,
      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_LT_LT_EQ,
  [8433] = 23,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1526), 1,
      anon_sym_PIPE_PIPE,
    ACTIONS(1534), 1,
      anon_sym_CARET,
    ACTIONS(1542), 1,
      anon_sym_LPAREN,
    ACTIONS(1544), 1,
      anon_sym_AMP,
    ACTIONS(1546), 1,
      anon_sym_PIPE,
    ACTIONS(1550), 1,
      anon_sym_AMP_AMP,
    ACTIONS(1554), 1,
      anon_sym_STAR_STAR,
    ACTIONS(1566), 1,
      anon_sym_EQ,
    ACTIONS(1568), 1,
      anon_sym_LBRACE,
    ACTIONS(1572), 1,
      anon_sym_DOT,
    ACTIONS(1574), 1,
      anon_sym_QMARK,
    ACTIONS(1576), 1,
      anon_sym_LBRACK,
    ACTIONS(1813), 1,
      anon_sym_RPAREN,
    STATE(441), 1,
      sym__call_arguments,
    ACTIONS(1528), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1530), 2,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
    ACTIONS(1532), 2,
      anon_sym_LT,
      anon_sym_GT,
    ACTIONS(1548), 2,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
    ACTIONS(1552), 2,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1556), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1538), 3,
      anon_sym_STAR,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1578), 10,
      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_LT_LT_EQ,
  [8520] = 23,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1526), 1,
      anon_sym_PIPE_PIPE,
    ACTIONS(1534), 1,
      anon_sym_CARET,
    ACTIONS(1542), 1,
      anon_sym_LPAREN,
    ACTIONS(1544), 1,
      anon_sym_AMP,
    ACTIONS(1546), 1,
      anon_sym_PIPE,
    ACTIONS(1550), 1,
      anon_sym_AMP_AMP,
    ACTIONS(1554), 1,
      anon_sym_STAR_STAR,
    ACTIONS(1566), 1,
      anon_sym_EQ,
    ACTIONS(1568), 1,
      anon_sym_LBRACE,
    ACTIONS(1572), 1,
      anon_sym_DOT,
    ACTIONS(1574), 1,
      anon_sym_QMARK,
    ACTIONS(1576), 1,
      anon_sym_LBRACK,
    ACTIONS(1815), 1,
      anon_sym_COLON,
    STATE(441), 1,
      sym__call_arguments,
    ACTIONS(1528), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1530), 2,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
    ACTIONS(1532), 2,
      anon_sym_LT,
      anon_sym_GT,
    ACTIONS(1548), 2,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
    ACTIONS(1552), 2,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1556), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1538), 3,
      anon_sym_STAR,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1578), 10,
      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_LT_LT_EQ,
  [8607] = 23,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1526), 1,
      anon_sym_PIPE_PIPE,
    ACTIONS(1534), 1,
      anon_sym_CARET,
    ACTIONS(1542), 1,
      anon_sym_LPAREN,
    ACTIONS(1544), 1,
      anon_sym_AMP,
    ACTIONS(1546), 1,
      anon_sym_PIPE,
    ACTIONS(1550), 1,
      anon_sym_AMP_AMP,
    ACTIONS(1554), 1,
      anon_sym_STAR_STAR,
    ACTIONS(1566), 1,
      anon_sym_EQ,
    ACTIONS(1568), 1,
      anon_sym_LBRACE,
    ACTIONS(1572), 1,
      anon_sym_DOT,
    ACTIONS(1574), 1,
      anon_sym_QMARK,
    ACTIONS(1576), 1,
      anon_sym_LBRACK,
    ACTIONS(1817), 1,
      anon_sym_RPAREN,
    STATE(441), 1,
      sym__call_arguments,
    ACTIONS(1528), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1530), 2,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
    ACTIONS(1532), 2,
      anon_sym_LT,
      anon_sym_GT,
    ACTIONS(1548), 2,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
    ACTIONS(1552), 2,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1556), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1538), 3,
      anon_sym_STAR,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1578), 10,
      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_LT_LT_EQ,
  [8694] = 23,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1526), 1,
      anon_sym_PIPE_PIPE,
    ACTIONS(1534), 1,
      anon_sym_CARET,
    ACTIONS(1542), 1,
      anon_sym_LPAREN,
    ACTIONS(1544), 1,
      anon_sym_AMP,
    ACTIONS(1546), 1,
      anon_sym_PIPE,
    ACTIONS(1550), 1,
      anon_sym_AMP_AMP,
    ACTIONS(1554), 1,
      anon_sym_STAR_STAR,
    ACTIONS(1566), 1,
      anon_sym_EQ,
    ACTIONS(1568), 1,
      anon_sym_LBRACE,
    ACTIONS(1572), 1,
      anon_sym_DOT,
    ACTIONS(1574), 1,
      anon_sym_QMARK,
    ACTIONS(1576), 1,
      anon_sym_LBRACK,
    ACTIONS(1819), 1,
      anon_sym_RPAREN,
    STATE(441), 1,
      sym__call_arguments,
    ACTIONS(1528), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1530), 2,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
    ACTIONS(1532), 2,
      anon_sym_LT,
      anon_sym_GT,
    ACTIONS(1548), 2,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
    ACTIONS(1552), 2,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1556), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1538), 3,
      anon_sym_STAR,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1578), 10,
      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_LT_LT_EQ,
  [8781] = 23,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1526), 1,
      anon_sym_PIPE_PIPE,
    ACTIONS(1534), 1,
      anon_sym_CARET,
    ACTIONS(1542), 1,
      anon_sym_LPAREN,
    ACTIONS(1544), 1,
      anon_sym_AMP,
    ACTIONS(1546), 1,
      anon_sym_PIPE,
    ACTIONS(1550), 1,
      anon_sym_AMP_AMP,
    ACTIONS(1554), 1,
      anon_sym_STAR_STAR,
    ACTIONS(1566), 1,
      anon_sym_EQ,
    ACTIONS(1568), 1,
      anon_sym_LBRACE,
    ACTIONS(1572), 1,
      anon_sym_DOT,
    ACTIONS(1574), 1,
      anon_sym_QMARK,
    ACTIONS(1576), 1,
      anon_sym_LBRACK,
    ACTIONS(1821), 1,
      anon_sym_RPAREN,
    STATE(441), 1,
      sym__call_arguments,
    ACTIONS(1528), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1530), 2,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
    ACTIONS(1532), 2,
      anon_sym_LT,
      anon_sym_GT,
    ACTIONS(1548), 2,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
    ACTIONS(1552), 2,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1556), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1538), 3,
      anon_sym_STAR,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1578), 10,
      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_LT_LT_EQ,
  [8868] = 23,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1526), 1,
      anon_sym_PIPE_PIPE,
    ACTIONS(1534), 1,
      anon_sym_CARET,
    ACTIONS(1542), 1,
      anon_sym_LPAREN,
    ACTIONS(1544), 1,
      anon_sym_AMP,
    ACTIONS(1546), 1,
      anon_sym_PIPE,
    ACTIONS(1550), 1,
      anon_sym_AMP_AMP,
    ACTIONS(1554), 1,
      anon_sym_STAR_STAR,
    ACTIONS(1566), 1,
      anon_sym_EQ,
    ACTIONS(1568), 1,
      anon_sym_LBRACE,
    ACTIONS(1572), 1,
      anon_sym_DOT,
    ACTIONS(1574), 1,
      anon_sym_QMARK,
    ACTIONS(1576), 1,
      anon_sym_LBRACK,
    ACTIONS(1823), 1,
      anon_sym_RPAREN,
    STATE(441), 1,
      sym__call_arguments,
    ACTIONS(1528), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1530), 2,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
    ACTIONS(1532), 2,
      anon_sym_LT,
      anon_sym_GT,
    ACTIONS(1548), 2,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
    ACTIONS(1552), 2,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1556), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1538), 3,
      anon_sym_STAR,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1578), 10,
      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_LT_LT_EQ,
  [8955] = 23,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1526), 1,
      anon_sym_PIPE_PIPE,
    ACTIONS(1534), 1,
      anon_sym_CARET,
    ACTIONS(1542), 1,
      anon_sym_LPAREN,
    ACTIONS(1544), 1,
      anon_sym_AMP,
    ACTIONS(1546), 1,
      anon_sym_PIPE,
    ACTIONS(1550), 1,
      anon_sym_AMP_AMP,
    ACTIONS(1554), 1,
      anon_sym_STAR_STAR,
    ACTIONS(1566), 1,
      anon_sym_EQ,
    ACTIONS(1568), 1,
      anon_sym_LBRACE,
    ACTIONS(1572), 1,
      anon_sym_DOT,
    ACTIONS(1574), 1,
      anon_sym_QMARK,
    ACTIONS(1576), 1,
      anon_sym_LBRACK,
    ACTIONS(1825), 1,
      anon_sym_RPAREN,
    STATE(441), 1,
      sym__call_arguments,
    ACTIONS(1528), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1530), 2,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
    ACTIONS(1532), 2,
      anon_sym_LT,
      anon_sym_GT,
    ACTIONS(1548), 2,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
    ACTIONS(1552), 2,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1556), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1538), 3,
      anon_sym_STAR,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1578), 10,
      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_LT_LT_EQ,
  [9042] = 23,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1526), 1,
      anon_sym_PIPE_PIPE,
    ACTIONS(1534), 1,
      anon_sym_CARET,
    ACTIONS(1542), 1,
      anon_sym_LPAREN,
    ACTIONS(1544), 1,
      anon_sym_AMP,
    ACTIONS(1546), 1,
      anon_sym_PIPE,
    ACTIONS(1550), 1,
      anon_sym_AMP_AMP,
    ACTIONS(1554), 1,
      anon_sym_STAR_STAR,
    ACTIONS(1566), 1,
      anon_sym_EQ,
    ACTIONS(1568), 1,
      anon_sym_LBRACE,
    ACTIONS(1572), 1,
      anon_sym_DOT,
    ACTIONS(1574), 1,
      anon_sym_QMARK,
    ACTIONS(1576), 1,
      anon_sym_LBRACK,
    ACTIONS(1827), 1,
      anon_sym_RPAREN,
    STATE(441), 1,
      sym__call_arguments,
    ACTIONS(1528), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1530), 2,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
    ACTIONS(1532), 2,
      anon_sym_LT,
      anon_sym_GT,
    ACTIONS(1548), 2,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
    ACTIONS(1552), 2,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1556), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1538), 3,
      anon_sym_STAR,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1578), 10,
      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_LT_LT_EQ,
  [9129] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1829), 1,
      anon_sym_EQ,
    ACTIONS(1645), 12,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_STAR,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1643), 25,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_LPAREN,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
      anon_sym_DOT,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      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_LT_LT_EQ,
      anon_sym_SEMI,
  [9177] = 22,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1526), 1,
      anon_sym_PIPE_PIPE,
    ACTIONS(1534), 1,
      anon_sym_CARET,
    ACTIONS(1542), 1,
      anon_sym_LPAREN,
    ACTIONS(1544), 1,
      anon_sym_AMP,
    ACTIONS(1546), 1,
      anon_sym_PIPE,
    ACTIONS(1550), 1,
      anon_sym_AMP_AMP,
    ACTIONS(1554), 1,
      anon_sym_STAR_STAR,
    ACTIONS(1566), 1,
      anon_sym_EQ,
    ACTIONS(1568), 1,
      anon_sym_LBRACE,
    ACTIONS(1572), 1,
      anon_sym_DOT,
    ACTIONS(1574), 1,
      anon_sym_QMARK,
    ACTIONS(1576), 1,
      anon_sym_LBRACK,
    STATE(488), 1,
      sym__call_arguments,
    ACTIONS(1528), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1530), 2,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
    ACTIONS(1532), 2,
      anon_sym_LT,
      anon_sym_GT,
    ACTIONS(1548), 2,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
    ACTIONS(1552), 2,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1556), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1538), 3,
      anon_sym_STAR,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1578), 10,
      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_LT_LT_EQ,
  [9261] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1454), 1,
      anon_sym_SEMI,
    ACTIONS(1681), 13,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_EQ,
      anon_sym_STAR,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1679), 24,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_LPAREN,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
      anon_sym_DOT,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      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_LT_LT_EQ,
  [9309] = 22,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1526), 1,
      anon_sym_PIPE_PIPE,
    ACTIONS(1534), 1,
      anon_sym_CARET,
    ACTIONS(1542), 1,
      anon_sym_LPAREN,
    ACTIONS(1544), 1,
      anon_sym_AMP,
    ACTIONS(1546), 1,
      anon_sym_PIPE,
    ACTIONS(1550), 1,
      anon_sym_AMP_AMP,
    ACTIONS(1554), 1,
      anon_sym_STAR_STAR,
    ACTIONS(1566), 1,
      anon_sym_EQ,
    ACTIONS(1568), 1,
      anon_sym_LBRACE,
    ACTIONS(1572), 1,
      anon_sym_DOT,
    ACTIONS(1574), 1,
      anon_sym_QMARK,
    ACTIONS(1576), 1,
      anon_sym_LBRACK,
    STATE(490), 1,
      sym__call_arguments,
    ACTIONS(1528), 2,
      anon_sym_DASH,
      anon_sym_PLUS,
    ACTIONS(1530), 2,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
    ACTIONS(1532), 2,
      anon_sym_LT,
      anon_sym_GT,
    ACTIONS(1548), 2,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
    ACTIONS(1552), 2,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1556), 2,
      anon_sym_PLUS_PLUS,
      anon_sym_DASH_DASH,
    ACTIONS(1538), 3,
      anon_sym_STAR,
      anon_sym_SLASH,
      anon_sym_PERCENT,
    ACTIONS(1578), 10,
      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_LT_LT_EQ,
  [9393] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1831), 1,
      anon_sym_EQ,
    ACTIONS(1681), 12,
      anon_sym_DASH,
      anon_sym_LT,
      anon_sym_CARET,
      anon_sym_GT,
      anon_sym_STAR,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_SLASH,
      anon_sym_PERCENT,
      anon_sym_LT_LT,
      anon_sym_GT_GT,
    ACTIONS(1679), 25,
      anon_sym_PIPE_PIPE,
      anon_sym_LT_EQ,
      anon_sym_GT_EQ,
      anon_sym_LBRACE,
      anon_sym_LPAREN,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
      anon_sym_DOT,
      anon_sym_QMARK,
      anon_sym_LBRACK,
      anon_sym_AMP_AMP,
      anon_sym_STAR_STAR,
      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_LT_LT_EQ,
      anon_sym_SEMI,
  [9441] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1833), 1,
      anon_sym_DOT,
    STATE(356), 1,
      aux_sym__identifier_path_repeat1,
    ACTIONS(1466), 8,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_LBRACK,
      anon_sym_EQ_GT,
      anon_sym_SEMI,
    ACTIONS(1464), 23,
      anon_sym_as,
      anon_sym_is,
      anon_sym_constant,
      anon_sym_layout,
      anon_sym_indexed,
      anon_sym_for,
      anon_sym_global,
      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,
      anon_sym_transient,
      sym_immutable,
      anon_sym_override,
      sym_virtual,
      sym_identifier,
  [9486] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1833), 1,
      anon_sym_DOT,
    STATE(505), 1,
      aux_sym__identifier_path_repeat1,
    ACTIONS(1835), 8,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_LPAREN,
      anon_sym_RPAREN,
      anon_sym_LBRACK,
      anon_sym_EQ_GT,
      anon_sym_SEMI,
    ACTIONS(1468), 23,
      anon_sym_as,
      anon_sym_is,
      anon_sym_constant,
      anon_sym_layout,
      anon_sym_indexed,
      anon_sym_for,
      anon_sym_global,
      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,
      anon_sym_transient,
      sym_immutable,
      anon_sym_override,
      sym_virtual,
      sym_identifier,
  [9531] = 18,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(7), 1,
      sym_identifier,
    ACTIONS(1362), 1,
      anon_sym_LBRACK,
    ACTIONS(1837), 1,
      anon_sym_LBRACE,
    ACTIONS(1839), 1,
      anon_sym_returns,
    ACTIONS(1841), 1,
      anon_sym_override,
    ACTIONS(1843), 1,
      sym_virtual,
    ACTIONS(1845), 1,
      anon_sym_SEMI,
    STATE(213), 1,
      sym_function_body,
    STATE(214), 1,
      sym__semicolon,
    STATE(357), 1,
      aux_sym__function_type_repeat1,
    STATE(375), 1,
      sym__return_parameters,
    STATE(522), 1,
      sym__identifier_path,
    STATE(516), 2,
      sym_visibility,
      sym_state_mutability,
    ACTIONS(1336), 3,
      anon_sym_pure,
      anon_sym_view,
      anon_sym_payable,
    ACTIONS(1360), 3,
      anon_sym_constant,
      anon_sym_transient,
      sym_immutable,
    STATE(513), 3,
      sym_override_specifier,
      sym_modifier_invocation,
      aux_sym_fallback_receive_definition_repeat1,
    ACTIONS(1334), 4,
      anon_sym_public,
      anon_sym_internal,
      anon_sym_private,
      anon_sym_external,
  [9596] = 14,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(7), 1,
      sym_identifier,
    ACTIONS(1841), 1,
      anon_sym_override,
    ACTIONS(1847), 1,
      anon_sym_LBRACE,
    ACTIONS(1849), 1,
      anon_sym_returns,
    ACTIONS(1851), 1,
      sym_virtual,
    ACTIONS(1853), 1,
      anon_sym_SEMI,
    STATE(166), 1,
      sym_function_body,
    STATE(167), 1,
      sym__semicolon,
    STATE(522), 1,
      sym__identifier_path,
    STATE(607), 1,
      sym_return_type_definition,
    ACTIONS(1336), 3,
      anon_sym_pure,
      anon_sym_view,
      anon_sym_payable,
    ACTIONS(1334), 4,
      anon_sym_public,
      anon_sym_internal,
      anon_sym_private,
      anon_sym_external,
    STATE(514), 5,
      sym_visibility,
      sym_state_mutability,
      sym_override_specifier,
      sym_modifier_invocation,
      aux_sym_function_definition_repeat1,
  [9648] = 14,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(7), 1,
      sym_identifier,
    ACTIONS(1837), 1,
      anon_sym_LBRACE,
    ACTIONS(1841), 1,
      anon_sym_override,
    ACTIONS(1849), 1,
      anon_sym_returns,
    ACTIONS(1855), 1,
      sym_virtual,
    ACTIONS(1857), 1,
      anon_sym_SEMI,
    STATE(218), 1,
      sym_function_body,
    STATE(219), 1,
      sym__semicolon,
    STATE(522), 1,
      sym__identifier_path,
    STATE(620), 1,
      sym_return_type_definition,
    ACTIONS(1336), 3,
      anon_sym_pure,
      anon_sym_view,
      anon_sym_payable,
    ACTIONS(1334), 4,
      anon_sym_public,
      anon_sym_internal,
      anon_sym_private,
      anon_sym_external,
    STATE(510), 5,
      sym_visibility,
      sym_state_mutability,
      sym_override_specifier,
      sym_modifier_invocation,
      aux_sym_function_definition_repeat1,
  [9700] = 14,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(7), 1,
      sym_identifier,
    ACTIONS(1837), 1,
      anon_sym_LBRACE,
    ACTIONS(1841), 1,
      anon_sym_override,
    ACTIONS(1849), 1,
      anon_sym_returns,
    ACTIONS(1851), 1,
      sym_virtual,
    ACTIONS(1859), 1,
      anon_sym_SEMI,
    STATE(231), 1,
      sym_function_body,
    STATE(232), 1,
      sym__semicolon,
    STATE(522), 1,
      sym__identifier_path,
    STATE(623), 1,
      sym_return_type_definition,
    ACTIONS(1336), 3,
      anon_sym_pure,
      anon_sym_view,
      anon_sym_payable,
    ACTIONS(1334), 4,
      anon_sym_public,
      anon_sym_internal,
      anon_sym_private,
      anon_sym_external,
    STATE(514), 5,
      sym_visibility,
      sym_state_mutability,
      sym_override_specifier,
      sym_modifier_invocation,
      aux_sym_function_definition_repeat1,
  [9752] = 14,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(7), 1,
      sym_identifier,
    ACTIONS(1841), 1,
      anon_sym_override,
    ACTIONS(1847), 1,
      anon_sym_LBRACE,
    ACTIONS(1849), 1,
      anon_sym_returns,
    ACTIONS(1861), 1,
      sym_virtual,
    ACTIONS(1863), 1,
      anon_sym_SEMI,
    STATE(157), 1,
      sym_function_body,
    STATE(158), 1,
      sym__semicolon,
    STATE(522), 1,
      sym__identifier_path,
    STATE(632), 1,
      sym_return_type_definition,
    ACTIONS(1336), 3,
      anon_sym_pure,
      anon_sym_view,
      anon_sym_payable,
    ACTIONS(1334), 4,
      anon_sym_public,
      anon_sym_internal,
      anon_sym_private,
      anon_sym_external,
    STATE(508), 5,
      sym_visibility,
      sym_state_mutability,
      sym_override_specifier,
      sym_modifier_invocation,
      aux_sym_function_definition_repeat1,
  [9804] = 13,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(7), 1,
      sym_identifier,
    ACTIONS(1837), 1,
      anon_sym_LBRACE,
    ACTIONS(1841), 1,
      anon_sym_override,
    ACTIONS(1843), 1,
      sym_virtual,
    ACTIONS(1845), 1,
      anon_sym_SEMI,
    ACTIONS(1865), 1,
      anon_sym_returns,
    STATE(213), 1,
      sym_function_body,
    STATE(214), 1,
      sym__semicolon,
    STATE(522), 1,
      sym__identifier_path,
    ACTIONS(1336), 3,
      anon_sym_pure,
      anon_sym_view,
      anon_sym_payable,
    ACTIONS(1334), 4,
      anon_sym_public,
      anon_sym_internal,
      anon_sym_private,
      anon_sym_external,
    STATE(513), 5,
      sym_visibility,
      sym_state_mutability,
      sym_override_specifier,
      sym_modifier_invocation,
      aux_sym_fallback_receive_definition_repeat1,
  [9853] = 13,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(7), 1,
      sym_identifier,
    ACTIONS(1837), 1,
      anon_sym_LBRACE,
    ACTIONS(1841), 1,
      anon_sym_override,
    ACTIONS(1867), 1,
      anon_sym_returns,
    ACTIONS(1869), 1,
      sym_virtual,
    ACTIONS(1871), 1,
      anon_sym_SEMI,
    STATE(256), 1,
      sym_function_body,
    STATE(257), 1,
      sym__semicolon,
    STATE(522), 1,
      sym__identifier_path,
    ACTIONS(1336), 3,
      anon_sym_pure,
      anon_sym_view,
      anon_sym_payable,
    ACTIONS(1334), 4,
      anon_sym_public,
      anon_sym_internal,
      anon_sym_private,
      anon_sym_external,
    STATE(515), 5,
      sym_visibility,
      sym_state_mutability,
      sym_override_specifier,
      sym_modifier_invocation,
      aux_sym_fallback_receive_definition_repeat1,
  [9902] = 10,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1873), 1,
      sym_identifier,
    ACTIONS(1878), 1,
      anon_sym_returns,
    ACTIONS(1886), 1,
      anon_sym_override,
    ACTIONS(1889), 1,
      sym_virtual,
    STATE(522), 1,
      sym__identifier_path,
    ACTIONS(1876), 2,
      anon_sym_LBRACE,
      anon_sym_SEMI,
    ACTIONS(1883), 3,
      anon_sym_pure,
      anon_sym_view,
      anon_sym_payable,
    ACTIONS(1880), 4,
      anon_sym_public,
      anon_sym_internal,
      anon_sym_private,
      anon_sym_external,
    STATE(514), 5,
      sym_visibility,
      sym_state_mutability,
      sym_override_specifier,
      sym_modifier_invocation,
      aux_sym_function_definition_repeat1,
  [9943] = 10,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1892), 1,
      sym_identifier,
    ACTIONS(1897), 1,
      anon_sym_returns,
    ACTIONS(1905), 1,
      anon_sym_override,
    ACTIONS(1908), 1,
      sym_virtual,
    STATE(522), 1,
      sym__identifier_path,
    ACTIONS(1895), 2,
      anon_sym_LBRACE,
      anon_sym_SEMI,
    ACTIONS(1902), 3,
      anon_sym_pure,
      anon_sym_view,
      anon_sym_payable,
    ACTIONS(1899), 4,
      anon_sym_public,
      anon_sym_internal,
      anon_sym_private,
      anon_sym_external,
    STATE(515), 5,
      sym_visibility,
      sym_state_mutability,
      sym_override_specifier,
      sym_modifier_invocation,
      aux_sym_fallback_receive_definition_repeat1,
  [9984] = 6,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1918), 1,
      sym_virtual,
    ACTIONS(1920), 1,
      anon_sym_LBRACK,
    ACTIONS(1914), 2,
      anon_sym_LBRACE,
      anon_sym_SEMI,
    ACTIONS(1916), 3,
      anon_sym_constant,
      anon_sym_transient,
      sym_immutable,
    ACTIONS(1911), 10,
      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_identifier,
  [10015] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1926), 1,
      anon_sym_LPAREN,
    ACTIONS(1924), 2,
      anon_sym_LBRACE,
      anon_sym_SEMI,
    ACTIONS(1922), 14,
      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,
      anon_sym_transient,
      sym_immutable,
      anon_sym_override,
      sym_virtual,
      sym_identifier,
  [10042] = 4,
    ACTIONS(3), 1,
      sym_comment,
    STATE(837), 1,
      sym_user_definable_operator,
    ACTIONS(1930), 3,
      anon_sym_LT,
      anon_sym_GT,
      anon_sym_SLASH,
    ACTIONS(1928), 12,
      anon_sym_DASH,
      anon_sym_LT_EQ,
      anon_sym_CARET,
      anon_sym_GT_EQ,
      anon_sym_TILDE,
      anon_sym_STAR,
      anon_sym_AMP,
      anon_sym_PIPE,
      anon_sym_PLUS,
      anon_sym_PERCENT,
      anon_sym_EQ_EQ,
      anon_sym_BANG_EQ,
  [10068] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1934), 2,
      anon_sym_LBRACE,
      anon_sym_SEMI,
    ACTIONS(1932), 14,
      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,
      anon_sym_transient,
      sym_immutable,
      anon_sym_override,
      sym_virtual,
      sym_identifier,
  [10092] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1938), 2,
      anon_sym_LBRACE,
      anon_sym_SEMI,
    ACTIONS(1936), 14,
      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,
      anon_sym_transient,
      sym_immutable,
      anon_sym_override,
      sym_virtual,
      sym_identifier,
  [10116] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1942), 2,
      anon_sym_LBRACE,
      anon_sym_SEMI,
    ACTIONS(1940), 14,
      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,
      anon_sym_transient,
      sym_immutable,
      anon_sym_override,
      sym_virtual,
      sym_identifier,
  [10140] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1542), 1,
      anon_sym_LPAREN,
    STATE(525), 1,
      sym__call_arguments,
    ACTIONS(1946), 2,
      anon_sym_LBRACE,
      anon_sym_SEMI,
    ACTIONS(1944), 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,
  [10167] = 10,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1586), 1,
      anon_sym_LBRACK,
    ACTIONS(1841), 1,
      anon_sym_override,
    ACTIONS(1948), 1,
      sym_identifier,
    ACTIONS(1952), 1,
      anon_sym_transient,
    STATE(539), 1,
      sym_visibility,
    STATE(540), 1,
      sym_state_location,
    ACTIONS(1950), 2,
      anon_sym_constant,
      sym_immutable,
    STATE(524), 2,
      sym_override_specifier,
      aux_sym_state_variable_declaration_repeat1,
    ACTIONS(1334), 4,
      anon_sym_public,
      anon_sym_internal,
      anon_sym_private,
      anon_sym_external,
  [10203] = 9,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1841), 1,
      anon_sym_override,
    ACTIONS(1952), 1,
      anon_sym_transient,
    ACTIONS(1954), 1,
      sym_identifier,
    STATE(539), 1,
      sym_visibility,
    STATE(540), 1,
      sym_state_location,
    ACTIONS(1956), 2,
      anon_sym_constant,
      sym_immutable,
    STATE(526), 2,
      sym_override_specifier,
      aux_sym_state_variable_declaration_repeat1,
    ACTIONS(1334), 4,
      anon_sym_public,
      anon_sym_internal,
      anon_sym_private,
      anon_sym_external,
  [10236] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1960), 2,
      anon_sym_LBRACE,
      anon_sym_SEMI,
    ACTIONS(1958), 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,
  [10257] = 9,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1962), 1,
      sym_identifier,
    ACTIONS(1970), 1,
      anon_sym_transient,
    ACTIONS(1973), 1,
      anon_sym_override,
    STATE(539), 1,
      sym_visibility,
    STATE(540), 1,
      sym_state_location,
    ACTIONS(1964), 2,
      anon_sym_constant,
      sym_immutable,
    STATE(526), 2,
      sym_override_specifier,
      aux_sym_state_variable_declaration_repeat1,
    ACTIONS(1967), 4,
      anon_sym_public,
      anon_sym_internal,
      anon_sym_private,
      anon_sym_external,
  [10290] = 9,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(69), 1,
      anon_sym_DQUOTE,
    ACTIONS(71), 1,
      anon_sym_SQUOTE,
    ACTIONS(1976), 1,
      sym_yul_decimal_number,
    ACTIONS(1978), 1,
      sym_yul_hex_number,
    ACTIONS(1982), 1,
      anon_sym_hex,
    STATE(290), 1,
      sym_string,
    ACTIONS(1980), 2,
      anon_sym_true,
      anon_sym_false,
    STATE(883), 4,
      sym__yul_literal,
      sym_yul_string_literal,
      sym_yul_boolean,
      sym_yul_hex_string_literal,
  [10322] = 8,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1984), 1,
      sym_solidity_version,
    ACTIONS(1993), 1,
      anon_sym_SEMI,
    STATE(528), 1,
      aux_sym_solidity_pragma_token_repeat1,
    STATE(532), 1,
      sym__pragma_version_constraint,
    STATE(918), 1,
      sym_solidity_version_comparison_operator,
    ACTIONS(1990), 2,
      anon_sym_LT,
      anon_sym_GT,
    ACTIONS(1987), 5,
      anon_sym_LT_EQ,
      anon_sym_CARET,
      anon_sym_GT_EQ,
      anon_sym_TILDE,
      anon_sym_EQ,
  [10352] = 8,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1995), 1,
      sym_solidity_version,
    ACTIONS(2001), 1,
      anon_sym_SEMI,
    STATE(528), 1,
      aux_sym_solidity_pragma_token_repeat1,
    STATE(532), 1,
      sym__pragma_version_constraint,
    STATE(918), 1,
      sym_solidity_version_comparison_operator,
    ACTIONS(1999), 2,
      anon_sym_LT,
      anon_sym_GT,
    ACTIONS(1997), 5,
      anon_sym_LT_EQ,
      anon_sym_CARET,
      anon_sym_GT_EQ,
      anon_sym_TILDE,
      anon_sym_EQ,
  [10382] = 8,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1995), 1,
      sym_solidity_version,
    ACTIONS(2003), 1,
      anon_sym_SEMI,
    STATE(529), 1,
      aux_sym_solidity_pragma_token_repeat1,
    STATE(532), 1,
      sym__pragma_version_constraint,
    STATE(918), 1,
      sym_solidity_version_comparison_operator,
    ACTIONS(1999), 2,
      anon_sym_LT,
      anon_sym_GT,
    ACTIONS(1997), 5,
      anon_sym_LT_EQ,
      anon_sym_CARET,
      anon_sym_GT_EQ,
      anon_sym_TILDE,
      anon_sym_EQ,
  [10412] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2007), 2,
      anon_sym_LT,
      anon_sym_GT,
    ACTIONS(2005), 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,
      anon_sym_SEMI,
  [10431] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2009), 2,
      anon_sym_PIPE_PIPE,
      anon_sym_DASH,
    ACTIONS(2013), 2,
      anon_sym_LT,
      anon_sym_GT,
    ACTIONS(2011), 7,
      sym_solidity_version,
      anon_sym_LT_EQ,
      anon_sym_CARET,
      anon_sym_GT_EQ,
      anon_sym_TILDE,
      anon_sym_EQ,
      anon_sym_SEMI,
  [10452] = 11,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(69), 1,
      anon_sym_DQUOTE,
    ACTIONS(71), 1,
      anon_sym_SQUOTE,
    ACTIONS(2015), 1,
      sym_identifier,
    ACTIONS(2017), 1,
      anon_sym_STAR,
    ACTIONS(2019), 1,
      anon_sym_LBRACE,
    STATE(700), 1,
      sym_string,
    STATE(784), 1,
      sym__source_import,
    STATE(809), 1,
      sym__import_clause,
    STATE(913), 1,
      sym__multiple_import,
    STATE(960), 1,
      sym__single_import,
  [10486] = 10,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1837), 1,
      anon_sym_LBRACE,
    ACTIONS(2021), 1,
      anon_sym_LPAREN,
    ACTIONS(2023), 1,
      anon_sym_override,
    ACTIONS(2025), 1,
      sym_virtual,
    ACTIONS(2027), 1,
      anon_sym_SEMI,
    STATE(227), 1,
      sym_function_body,
    STATE(228), 1,
      sym__semicolon,
    STATE(543), 1,
      sym__parameter_list,
    STATE(544), 2,
      sym_override_specifier,
      aux_sym_modifier_definition_repeat1,
  [10518] = 7,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(7), 1,
      sym_identifier,
    ACTIONS(1837), 1,
      anon_sym_LBRACE,
    STATE(245), 1,
      sym_function_body,
    STATE(522), 1,
      sym__identifier_path,
    STATE(536), 2,
      sym_modifier_invocation,
      aux_sym_constructor_definition_repeat1,
    ACTIONS(2029), 3,
      anon_sym_public,
      anon_sym_internal,
      anon_sym_payable,
  [10543] = 7,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(7), 1,
      sym_identifier,
    ACTIONS(1837), 1,
      anon_sym_LBRACE,
    STATE(211), 1,
      sym_function_body,
    STATE(522), 1,
      sym__identifier_path,
    STATE(546), 2,
      sym_modifier_invocation,
      aux_sym_constructor_definition_repeat1,
    ACTIONS(2031), 3,
      anon_sym_public,
      anon_sym_internal,
      anon_sym_payable,
  [10568] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2035), 2,
      anon_sym_LT,
      anon_sym_GT,
    ACTIONS(2033), 7,
      sym_solidity_version,
      anon_sym_LT_EQ,
      anon_sym_CARET,
      anon_sym_GT_EQ,
      anon_sym_TILDE,
      anon_sym_EQ,
      anon_sym_SEMI,
  [10585] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2037), 9,
      anon_sym_constant,
      anon_sym_public,
      anon_sym_internal,
      anon_sym_private,
      anon_sym_external,
      anon_sym_transient,
      sym_immutable,
      anon_sym_override,
      sym_identifier,
  [10600] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2039), 9,
      anon_sym_constant,
      anon_sym_public,
      anon_sym_internal,
      anon_sym_private,
      anon_sym_external,
      anon_sym_transient,
      sym_immutable,
      anon_sym_override,
      sym_identifier,
  [10615] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2041), 9,
      anon_sym_constant,
      anon_sym_public,
      anon_sym_internal,
      anon_sym_private,
      anon_sym_external,
      anon_sym_transient,
      sym_immutable,
      anon_sym_override,
      sym_identifier,
  [10630] = 8,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1837), 1,
      anon_sym_LBRACE,
    ACTIONS(2023), 1,
      anon_sym_override,
    ACTIONS(2043), 1,
      sym_virtual,
    ACTIONS(2045), 1,
      anon_sym_SEMI,
    STATE(246), 1,
      sym_function_body,
    STATE(249), 1,
      sym__semicolon,
    STATE(556), 2,
      sym_override_specifier,
      aux_sym_modifier_definition_repeat1,
  [10656] = 6,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1586), 1,
      anon_sym_LBRACK,
    ACTIONS(2047), 1,
      sym_identifier,
    STATE(762), 1,
      sym__storage_location,
    ACTIONS(2049), 2,
      anon_sym_COMMA,
      anon_sym_RPAREN,
    ACTIONS(2051), 3,
      anon_sym_memory,
      anon_sym_storage,
      anon_sym_calldata,
  [10678] = 8,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1837), 1,
      anon_sym_LBRACE,
    ACTIONS(2023), 1,
      anon_sym_override,
    ACTIONS(2053), 1,
      sym_virtual,
    ACTIONS(2055), 1,
      anon_sym_SEMI,
    STATE(258), 1,
      sym__semicolon,
    STATE(260), 1,
      sym_function_body,
    STATE(541), 2,
      sym_override_specifier,
      aux_sym_modifier_definition_repeat1,
  [10704] = 8,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1837), 1,
      anon_sym_LBRACE,
    ACTIONS(2023), 1,
      anon_sym_override,
    ACTIONS(2043), 1,
      sym_virtual,
    ACTIONS(2055), 1,
      anon_sym_SEMI,
    STATE(258), 1,
      sym__semicolon,
    STATE(260), 1,
      sym_function_body,
    STATE(556), 2,
      sym_override_specifier,
      aux_sym_modifier_definition_repeat1,
  [10730] = 6,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1586), 1,
      anon_sym_LBRACK,
    ACTIONS(2047), 1,
      sym_identifier,
    STATE(730), 1,
      sym__storage_location,
    ACTIONS(2057), 2,
      anon_sym_COMMA,
      anon_sym_RPAREN,
    ACTIONS(2060), 3,
      anon_sym_memory,
      anon_sym_storage,
      anon_sym_calldata,
  [10752] = 6,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2062), 1,
      sym_identifier,
    ACTIONS(2065), 1,
      anon_sym_LBRACE,
    STATE(522), 1,
      sym__identifier_path,
    STATE(546), 2,
      sym_modifier_invocation,
      aux_sym_constructor_definition_repeat1,
    ACTIONS(2067), 3,
      anon_sym_public,
      anon_sym_internal,
      anon_sym_payable,
  [10774] = 6,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2070), 1,
      anon_sym_LBRACE,
    ACTIONS(2072), 1,
      anon_sym_is,
    ACTIONS(2074), 1,
      anon_sym_layout,
    STATE(189), 1,
      sym_contract_body,
    STATE(557), 3,
      sym__class_heritage,
      sym_layout_specifier,
      aux_sym_contract_declaration_repeat1,
  [10795] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1586), 1,
      anon_sym_LBRACK,
    STATE(774), 1,
      sym__storage_location,
    ACTIONS(2076), 2,
      anon_sym_COMMA,
      anon_sym_RPAREN,
    ACTIONS(2078), 3,
      anon_sym_memory,
      anon_sym_storage,
      anon_sym_calldata,
  [10814] = 7,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(7), 1,
      sym_identifier,
    ACTIONS(2080), 1,
      anon_sym_LBRACE,
    STATE(367), 1,
      sym__identifier_path,
    STATE(554), 1,
      sym_user_defined_type,
    STATE(582), 1,
      sym_inheritance_specifier,
    ACTIONS(2082), 2,
      anon_sym_is,
      anon_sym_layout,
  [10837] = 6,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2070), 1,
      anon_sym_LBRACE,
    ACTIONS(2072), 1,
      anon_sym_is,
    ACTIONS(2074), 1,
      anon_sym_layout,
    STATE(188), 1,
      sym_contract_body,
    STATE(547), 3,
      sym__class_heritage,
      sym_layout_specifier,
      aux_sym_contract_declaration_repeat1,
  [10858] = 6,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2070), 1,
      anon_sym_LBRACE,
    ACTIONS(2072), 1,
      anon_sym_is,
    ACTIONS(2074), 1,
      anon_sym_layout,
    STATE(185), 1,
      sym_contract_body,
    STATE(553), 3,
      sym__class_heritage,
      sym_layout_specifier,
      aux_sym_contract_declaration_repeat1,
  [10879] = 7,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(7), 1,
      sym_identifier,
    ACTIONS(2084), 1,
      anon_sym_LBRACE,
    STATE(367), 1,
      sym__identifier_path,
    STATE(554), 1,
      sym_user_defined_type,
    STATE(582), 1,
      sym_inheritance_specifier,
    ACTIONS(2086), 2,
      anon_sym_is,
      anon_sym_layout,
  [10902] = 6,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2070), 1,
      anon_sym_LBRACE,
    ACTIONS(2072), 1,
      anon_sym_is,
    ACTIONS(2074), 1,
      anon_sym_layout,
    STATE(193), 1,
      sym_contract_body,
    STATE(557), 3,
      sym__class_heritage,
      sym_layout_specifier,
      aux_sym_contract_declaration_repeat1,
  [10923] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1542), 1,
      anon_sym_LPAREN,
    STATE(600), 1,
      sym__call_arguments,
    ACTIONS(2088), 4,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_is,
      anon_sym_layout,
  [10939] = 7,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(47), 1,
      anon_sym_LBRACE,
    ACTIONS(81), 1,
      sym_unchecked,
    ACTIONS(2021), 1,
      anon_sym_LPAREN,
    ACTIONS(2090), 1,
      sym_identifier,
    STATE(96), 1,
      sym_block_statement,
    STATE(652), 1,
      sym__parameter_list,
  [10961] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2094), 1,
      anon_sym_override,
    ACTIONS(2097), 1,
      sym_virtual,
    ACTIONS(2092), 2,
      anon_sym_LBRACE,
      anon_sym_SEMI,
    STATE(556), 2,
      sym_override_specifier,
      aux_sym_modifier_definition_repeat1,
  [10979] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2100), 1,
      anon_sym_LBRACE,
    ACTIONS(2102), 1,
      anon_sym_is,
    ACTIONS(2105), 1,
      anon_sym_layout,
    STATE(557), 3,
      sym__class_heritage,
      sym_layout_specifier,
      aux_sym_contract_declaration_repeat1,
  [10997] = 6,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2108), 1,
      sym_identifier,
    ACTIONS(2110), 1,
      anon_sym_RBRACE,
    STATE(367), 1,
      sym__identifier_path,
    STATE(697), 1,
      sym_user_defined_type,
    STATE(830), 1,
      sym_using_alias,
  [11016] = 6,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2108), 1,
      sym_identifier,
    ACTIONS(2112), 1,
      anon_sym_RBRACE,
    STATE(367), 1,
      sym__identifier_path,
    STATE(697), 1,
      sym_user_defined_type,
    STATE(830), 1,
      sym_using_alias,
  [11035] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1586), 1,
      anon_sym_LBRACK,
    ACTIONS(2114), 1,
      sym_identifier,
    ACTIONS(2118), 1,
      anon_sym_indexed,
    ACTIONS(2116), 2,
      anon_sym_COMMA,
      anon_sym_RPAREN,
  [11052] = 6,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2108), 1,
      sym_identifier,
    ACTIONS(2120), 1,
      anon_sym_RBRACE,
    STATE(367), 1,
      sym__identifier_path,
    STATE(697), 1,
      sym_user_defined_type,
    STATE(830), 1,
      sym_using_alias,
  [11071] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2124), 1,
      anon_sym__,
    ACTIONS(2127), 1,
      sym__hex_digit,
    STATE(562), 1,
      aux_sym_yul_hex_string_literal_repeat1,
    ACTIONS(2122), 2,
      anon_sym_DQUOTE,
      anon_sym_SQUOTE,
  [11088] = 5,
    ACTIONS(2130), 1,
      anon_sym_DQUOTE,
    ACTIONS(2132), 1,
      sym__escape_sequence,
    ACTIONS(2134), 1,
      aux_sym__double_quoted_unicode_char_token1,
    ACTIONS(2136), 1,
      sym_comment,
    STATE(571), 2,
      sym__string_immediate_elt_inside_double_quote,
      aux_sym_string_repeat1,
  [11105] = 5,
    ACTIONS(2130), 1,
      anon_sym_SQUOTE,
    ACTIONS(2136), 1,
      sym_comment,
    ACTIONS(2138), 1,
      sym__escape_sequence,
    ACTIONS(2140), 1,
      aux_sym__single_quoted_unicode_char_token1,
    STATE(577), 2,
      sym__string_immediate_elt_inside_quote,
      aux_sym_string_repeat2,
  [11122] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2144), 1,
      anon_sym_COMMA,
    STATE(565), 1,
      aux_sym__class_heritage_repeat1,
    ACTIONS(2142), 3,
      anon_sym_LBRACE,
      anon_sym_is,
      anon_sym_layout,
  [11137] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2147), 1,
      sym_identifier,
    ACTIONS(2149), 1,
      anon_sym_solidity,
    STATE(530), 1,
      sym__solidity,
    STATE(767), 2,
      sym_solidity_pragma_token,
      sym_any_pragma_token,
  [11154] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2151), 1,
      anon_sym_COMMA,
    STATE(565), 1,
      aux_sym__class_heritage_repeat1,
    ACTIONS(2084), 3,
      anon_sym_LBRACE,
      anon_sym_is,
      anon_sym_layout,
  [11169] = 5,
    ACTIONS(2136), 1,
      sym_comment,
    ACTIONS(2153), 1,
      anon_sym_DQUOTE,
    ACTIONS(2155), 1,
      sym__escape_sequence,
    ACTIONS(2158), 1,
      aux_sym__double_quoted_unicode_char_token1,
    STATE(568), 2,
      sym__string_immediate_elt_inside_double_quote,
      aux_sym_string_repeat1,
  [11186] = 5,
    ACTIONS(2136), 1,
      sym_comment,
    ACTIONS(2161), 1,
      anon_sym_SQUOTE,
    ACTIONS(2163), 1,
      sym__escape_sequence,
    ACTIONS(2166), 1,
      aux_sym__single_quoted_unicode_char_token1,
    STATE(569), 2,
      sym__string_immediate_elt_inside_quote,
      aux_sym_string_repeat2,
  [11203] = 6,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2108), 1,
      sym_identifier,
    ACTIONS(2169), 1,
      anon_sym_RBRACE,
    STATE(367), 1,
      sym__identifier_path,
    STATE(697), 1,
      sym_user_defined_type,
    STATE(830), 1,
      sym_using_alias,
  [11222] = 5,
    ACTIONS(2136), 1,
      sym_comment,
    ACTIONS(2171), 1,
      anon_sym_DQUOTE,
    ACTIONS(2173), 1,
      sym__escape_sequence,
    ACTIONS(2175), 1,
      aux_sym__double_quoted_unicode_char_token1,
    STATE(568), 2,
      sym__string_immediate_elt_inside_double_quote,
      aux_sym_string_repeat1,
  [11239] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2179), 1,
      anon_sym_COMMA,
    STATE(567), 1,
      aux_sym__class_heritage_repeat1,
    ACTIONS(2177), 3,
      anon_sym_LBRACE,
      anon_sym_is,
      anon_sym_layout,
  [11254] = 5,
    ACTIONS(2136), 1,
      sym_comment,
    ACTIONS(2181), 1,
      anon_sym_DQUOTE,
    ACTIONS(2183), 1,
      sym__escape_sequence,
    ACTIONS(2185), 1,
      aux_sym__double_quoted_unicode_char_token1,
    STATE(575), 2,
      sym__string_immediate_elt_inside_double_quote,
      aux_sym_string_repeat1,
  [11271] = 5,
    ACTIONS(2136), 1,
      sym_comment,
    ACTIONS(2181), 1,
      anon_sym_SQUOTE,
    ACTIONS(2187), 1,
      sym__escape_sequence,
    ACTIONS(2189), 1,
      aux_sym__single_quoted_unicode_char_token1,
    STATE(576), 2,
      sym__string_immediate_elt_inside_quote,
      aux_sym_string_repeat2,
  [11288] = 5,
    ACTIONS(2136), 1,
      sym_comment,
    ACTIONS(2173), 1,
      sym__escape_sequence,
    ACTIONS(2175), 1,
      aux_sym__double_quoted_unicode_char_token1,
    ACTIONS(2191), 1,
      anon_sym_DQUOTE,
    STATE(568), 2,
      sym__string_immediate_elt_inside_double_quote,
      aux_sym_string_repeat1,
  [11305] = 5,
    ACTIONS(2136), 1,
      sym_comment,
    ACTIONS(2191), 1,
      anon_sym_SQUOTE,
    ACTIONS(2193), 1,
      sym__escape_sequence,
    ACTIONS(2195), 1,
      aux_sym__single_quoted_unicode_char_token1,
    STATE(569), 2,
      sym__string_immediate_elt_inside_quote,
      aux_sym_string_repeat2,
  [11322] = 5,
    ACTIONS(2136), 1,
      sym_comment,
    ACTIONS(2171), 1,
      anon_sym_SQUOTE,
    ACTIONS(2193), 1,
      sym__escape_sequence,
    ACTIONS(2195), 1,
      aux_sym__single_quoted_unicode_char_token1,
    STATE(569), 2,
      sym__string_immediate_elt_inside_quote,
      aux_sym_string_repeat2,
  [11339] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1586), 1,
      anon_sym_LBRACK,
    ACTIONS(2197), 1,
      sym_identifier,
    ACTIONS(2199), 3,
      anon_sym_memory,
      anon_sym_storage,
      anon_sym_calldata,
  [11354] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(894), 1,
      anon_sym_LBRACE,
    ACTIONS(2201), 1,
      anon_sym_COMMA,
    STATE(297), 1,
      aux_sym_yul_variable_declaration_repeat1,
    STATE(341), 1,
      sym_yul_block,
  [11370] = 4,
    ACTIONS(2136), 1,
      sym_comment,
    ACTIONS(2203), 1,
      anon_sym_SQUOTE,
    ACTIONS(2205), 1,
      aux_sym__single_quoted_unicode_char_token1,
    STATE(631), 2,
      sym__single_quoted_unicode_char,
      aux_sym_unicode_string_literal_repeat2,
  [11384] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2070), 1,
      anon_sym_LBRACE,
    ACTIONS(2072), 1,
      anon_sym_is,
    STATE(177), 1,
      sym_contract_body,
    STATE(771), 1,
      sym__class_heritage,
  [11400] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2142), 4,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_is,
      anon_sym_layout,
  [11410] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2108), 1,
      sym_identifier,
    ACTIONS(2207), 1,
      anon_sym_RPAREN,
    STATE(367), 1,
      sym__identifier_path,
    STATE(766), 1,
      sym_user_defined_type,
  [11426] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2209), 1,
      anon_sym_DQUOTE,
    ACTIONS(2211), 1,
      anon_sym__,
    ACTIONS(2213), 1,
      sym__hex_digit,
    STATE(593), 1,
      aux_sym_yul_hex_string_literal_repeat1,
  [11442] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2209), 1,
      anon_sym_SQUOTE,
    ACTIONS(2211), 1,
      anon_sym__,
    ACTIONS(2215), 1,
      sym__hex_digit,
    STATE(594), 1,
      aux_sym_yul_hex_string_literal_repeat1,
  [11458] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1586), 1,
      anon_sym_LBRACK,
    ACTIONS(2217), 1,
      anon_sym_global,
    ACTIONS(2219), 1,
      anon_sym_SEMI,
    STATE(195), 1,
      sym__semicolon,
  [11474] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2108), 1,
      sym_identifier,
    STATE(367), 1,
      sym__identifier_path,
    STATE(697), 1,
      sym_user_defined_type,
    STATE(830), 1,
      sym_using_alias,
  [11490] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2108), 1,
      sym_identifier,
    STATE(367), 1,
      sym__identifier_path,
    STATE(696), 1,
      sym_using_alias,
    STATE(697), 1,
      sym_user_defined_type,
  [11506] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2108), 1,
      sym_identifier,
    ACTIONS(2221), 1,
      anon_sym_LBRACE,
    STATE(367), 1,
      sym__identifier_path,
    STATE(897), 1,
      sym_user_defined_type,
  [11522] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(69), 1,
      anon_sym_DQUOTE,
    ACTIONS(71), 1,
      anon_sym_SQUOTE,
    ACTIONS(2223), 1,
      anon_sym_RPAREN,
    STATE(824), 1,
      sym_string,
  [11538] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1586), 1,
      anon_sym_LBRACK,
    ACTIONS(2225), 1,
      anon_sym_global,
    ACTIONS(2227), 1,
      anon_sym_SEMI,
    STATE(197), 1,
      sym__semicolon,
  [11554] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(69), 1,
      anon_sym_DQUOTE,
    ACTIONS(71), 1,
      anon_sym_SQUOTE,
    ACTIONS(2229), 1,
      anon_sym_RPAREN,
    STATE(757), 1,
      sym_string,
  [11570] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2211), 1,
      anon_sym__,
    ACTIONS(2231), 1,
      anon_sym_DQUOTE,
    ACTIONS(2233), 1,
      sym__hex_digit,
    STATE(562), 1,
      aux_sym_yul_hex_string_literal_repeat1,
  [11586] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2211), 1,
      anon_sym__,
    ACTIONS(2231), 1,
      anon_sym_SQUOTE,
    ACTIONS(2233), 1,
      sym__hex_digit,
    STATE(562), 1,
      aux_sym_yul_hex_string_literal_repeat1,
  [11602] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2235), 1,
      sym_identifier,
    ACTIONS(2237), 1,
      anon_sym_COMMA,
    ACTIONS(2239), 1,
      anon_sym_RPAREN,
    STATE(715), 1,
      aux_sym_variable_declaration_tuple_repeat2,
  [11618] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2241), 4,
      anon_sym_EQ,
      anon_sym_COMMA,
      anon_sym_RPAREN,
      anon_sym_SEMI,
  [11628] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2243), 4,
      anon_sym_from,
      anon_sym_COMMA,
      anon_sym_RBRACE,
      anon_sym_SEMI,
  [11638] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2211), 1,
      anon_sym__,
    ACTIONS(2245), 1,
      anon_sym_DQUOTE,
    ACTIONS(2247), 1,
      sym__hex_digit,
    STATE(602), 1,
      aux_sym_yul_hex_string_literal_repeat1,
  [11654] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(894), 1,
      anon_sym_LBRACE,
    ACTIONS(2249), 1,
      anon_sym_COMMA,
    STATE(339), 1,
      sym_yul_block,
    STATE(579), 1,
      aux_sym_yul_variable_declaration_repeat1,
  [11670] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2251), 4,
      anon_sym_LBRACE,
      anon_sym_COMMA,
      anon_sym_is,
      anon_sym_layout,
  [11680] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2211), 1,
      anon_sym__,
    ACTIONS(2245), 1,
      anon_sym_SQUOTE,
    ACTIONS(2253), 1,
      sym__hex_digit,
    STATE(603), 1,
      aux_sym_yul_hex_string_literal_repeat1,
  [11696] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2211), 1,
      anon_sym__,
    ACTIONS(2233), 1,
      sym__hex_digit,
    ACTIONS(2255), 1,
      anon_sym_DQUOTE,
    STATE(562), 1,
      aux_sym_yul_hex_string_literal_repeat1,
  [11712] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2211), 1,
      anon_sym__,
    ACTIONS(2233), 1,
      sym__hex_digit,
    ACTIONS(2255), 1,
      anon_sym_SQUOTE,
    STATE(562), 1,
      aux_sym_yul_hex_string_literal_repeat1,
  [11728] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(894), 1,
      anon_sym_LBRACE,
    ACTIONS(2257), 1,
      sym_identifier,
    STATE(303), 1,
      sym_yul_identifier,
    STATE(341), 1,
      sym_yul_block,
  [11744] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2108), 1,
      sym_identifier,
    STATE(367), 1,
      sym__identifier_path,
    STATE(697), 1,
      sym_user_defined_type,
    STATE(760), 1,
      sym_using_alias,
  [11760] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(894), 1,
      anon_sym_LBRACE,
    ACTIONS(2201), 1,
      anon_sym_COMMA,
    STATE(341), 1,
      sym_yul_block,
    STATE(609), 1,
      aux_sym_yul_variable_declaration_repeat1,
  [11776] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1847), 1,
      anon_sym_LBRACE,
    ACTIONS(2259), 1,
      anon_sym_SEMI,
    STATE(198), 1,
      sym_function_body,
    STATE(200), 1,
      sym__semicolon,
  [11792] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(894), 1,
      anon_sym_LBRACE,
    ACTIONS(2261), 1,
      anon_sym_COMMA,
    STATE(342), 1,
      sym_yul_block,
    STATE(612), 1,
      aux_sym_yul_variable_declaration_repeat1,
  [11808] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(894), 1,
      anon_sym_LBRACE,
    ACTIONS(2261), 1,
      anon_sym_COMMA,
    STATE(297), 1,
      aux_sym_yul_variable_declaration_repeat1,
    STATE(342), 1,
      sym_yul_block,
  [11824] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2108), 1,
      sym_identifier,
    STATE(367), 1,
      sym__identifier_path,
    STATE(554), 1,
      sym_user_defined_type,
    STATE(572), 1,
      sym_inheritance_specifier,
  [11840] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(894), 1,
      anon_sym_LBRACE,
    ACTIONS(2257), 1,
      sym_identifier,
    STATE(303), 1,
      sym_yul_identifier,
    STATE(343), 1,
      sym_yul_block,
  [11856] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(894), 1,
      anon_sym_LBRACE,
    ACTIONS(2263), 1,
      anon_sym_COMMA,
    STATE(297), 1,
      aux_sym_yul_variable_declaration_repeat1,
    STATE(343), 1,
      sym_yul_block,
  [11872] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(894), 1,
      anon_sym_LBRACE,
    ACTIONS(2263), 1,
      anon_sym_COMMA,
    STATE(343), 1,
      sym_yul_block,
    STATE(615), 1,
      aux_sym_yul_variable_declaration_repeat1,
  [11888] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(894), 1,
      anon_sym_LBRACE,
    ACTIONS(2257), 1,
      sym_identifier,
    STATE(303), 1,
      sym_yul_identifier,
    STATE(344), 1,
      sym_yul_block,
  [11904] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(894), 1,
      anon_sym_LBRACE,
    ACTIONS(2265), 1,
      anon_sym_COMMA,
    STATE(297), 1,
      aux_sym_yul_variable_declaration_repeat1,
    STATE(344), 1,
      sym_yul_block,
  [11920] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(894), 1,
      anon_sym_LBRACE,
    ACTIONS(2257), 1,
      sym_identifier,
    STATE(303), 1,
      sym_yul_identifier,
    STATE(345), 1,
      sym_yul_block,
  [11936] = 4,
    ACTIONS(2136), 1,
      sym_comment,
    ACTIONS(2267), 1,
      anon_sym_DQUOTE,
    ACTIONS(2269), 1,
      aux_sym__double_quoted_unicode_char_token1,
    STATE(617), 2,
      sym__double_quoted_unicode_char,
      aux_sym_unicode_string_literal_repeat1,
  [11950] = 4,
    ACTIONS(2136), 1,
      sym_comment,
    ACTIONS(2272), 1,
      anon_sym_SQUOTE,
    ACTIONS(2274), 1,
      aux_sym__single_quoted_unicode_char_token1,
    STATE(618), 2,
      sym__single_quoted_unicode_char,
      aux_sym_unicode_string_literal_repeat2,
  [11964] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1586), 1,
      anon_sym_LBRACK,
    ACTIONS(2277), 1,
      anon_sym_global,
    ACTIONS(2279), 1,
      anon_sym_SEMI,
    STATE(225), 1,
      sym__semicolon,
  [11980] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1837), 1,
      anon_sym_LBRACE,
    ACTIONS(2281), 1,
      anon_sym_SEMI,
    STATE(229), 1,
      sym_function_body,
    STATE(230), 1,
      sym__semicolon,
  [11996] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2285), 1,
      anon_sym_as,
    STATE(780), 1,
      sym__import_alias,
    ACTIONS(2283), 2,
      anon_sym_COMMA,
      anon_sym_RBRACE,
  [12010] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1837), 1,
      anon_sym_LBRACE,
    ACTIONS(2287), 1,
      anon_sym_SEMI,
    STATE(212), 1,
      sym_function_body,
    STATE(261), 1,
      sym__semicolon,
  [12026] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1837), 1,
      anon_sym_LBRACE,
    ACTIONS(2289), 1,
      anon_sym_SEMI,
    STATE(237), 1,
      sym_function_body,
    STATE(238), 1,
      sym__semicolon,
  [12042] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1837), 1,
      anon_sym_LBRACE,
    ACTIONS(2291), 1,
      anon_sym_SEMI,
    STATE(251), 1,
      sym_function_body,
    STATE(252), 1,
      sym__semicolon,
  [12058] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1586), 1,
      anon_sym_LBRACK,
    ACTIONS(2293), 1,
      anon_sym_global,
    ACTIONS(2295), 1,
      anon_sym_SEMI,
    STATE(241), 1,
      sym__semicolon,
  [12074] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2108), 1,
      sym_identifier,
    STATE(367), 1,
      sym__identifier_path,
    STATE(554), 1,
      sym_user_defined_type,
    STATE(582), 1,
      sym_inheritance_specifier,
  [12090] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1586), 1,
      anon_sym_LBRACK,
    ACTIONS(2297), 1,
      anon_sym_global,
    ACTIONS(2299), 1,
      anon_sym_SEMI,
    STATE(243), 1,
      sym__semicolon,
  [12106] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1586), 1,
      anon_sym_LBRACK,
    ACTIONS(2301), 1,
      anon_sym_global,
    ACTIONS(2303), 1,
      anon_sym_SEMI,
    STATE(163), 1,
      sym__semicolon,
  [12122] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1586), 1,
      anon_sym_LBRACK,
    ACTIONS(2305), 1,
      anon_sym_global,
    ACTIONS(2307), 1,
      anon_sym_SEMI,
    STATE(248), 1,
      sym__semicolon,
  [12138] = 4,
    ACTIONS(2136), 1,
      sym_comment,
    ACTIONS(2309), 1,
      anon_sym_DQUOTE,
    ACTIONS(2311), 1,
      aux_sym__double_quoted_unicode_char_token1,
    STATE(617), 2,
      sym__double_quoted_unicode_char,
      aux_sym_unicode_string_literal_repeat1,
  [12152] = 4,
    ACTIONS(2136), 1,
      sym_comment,
    ACTIONS(2309), 1,
      anon_sym_SQUOTE,
    ACTIONS(2313), 1,
      aux_sym__single_quoted_unicode_char_token1,
    STATE(618), 2,
      sym__single_quoted_unicode_char,
      aux_sym_unicode_string_literal_repeat2,
  [12166] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1847), 1,
      anon_sym_LBRACE,
    ACTIONS(2315), 1,
      anon_sym_SEMI,
    STATE(161), 1,
      sym_function_body,
    STATE(165), 1,
      sym__semicolon,
  [12182] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1586), 1,
      anon_sym_LBRACK,
    ACTIONS(2317), 1,
      anon_sym_global,
    ACTIONS(2319), 1,
      anon_sym_SEMI,
    STATE(173), 1,
      sym__semicolon,
  [12198] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2321), 4,
      anon_sym_EQ,
      anon_sym_COMMA,
      anon_sym_RPAREN,
      anon_sym_SEMI,
  [12208] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2122), 4,
      anon_sym_DQUOTE,
      anon_sym__,
      anon_sym_SQUOTE,
      sym__hex_digit,
  [12218] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2323), 1,
      anon_sym_LBRACE,
    ACTIONS(2325), 1,
      anon_sym_LPAREN,
    ACTIONS(2327), 1,
      anon_sym_DQUOTEevmasm_DQUOTE,
    STATE(909), 1,
      sym_assembly_flags,
  [12234] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(69), 1,
      anon_sym_DQUOTE,
    ACTIONS(71), 1,
      anon_sym_SQUOTE,
    ACTIONS(2329), 1,
      anon_sym_RPAREN,
    STATE(824), 1,
      sym_string,
  [12250] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1586), 1,
      anon_sym_LBRACK,
    ACTIONS(2331), 1,
      sym_identifier,
    ACTIONS(2333), 2,
      anon_sym_COMMA,
      anon_sym_RPAREN,
  [12264] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2108), 1,
      sym_identifier,
    ACTIONS(2335), 1,
      anon_sym_RPAREN,
    STATE(367), 1,
      sym__identifier_path,
    STATE(766), 1,
      sym_user_defined_type,
  [12280] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2108), 1,
      sym_identifier,
    ACTIONS(2337), 1,
      anon_sym_LBRACE,
    STATE(367), 1,
      sym__identifier_path,
    STATE(950), 1,
      sym_user_defined_type,
  [12296] = 4,
    ACTIONS(2136), 1,
      sym_comment,
    ACTIONS(2203), 1,
      anon_sym_DQUOTE,
    ACTIONS(2339), 1,
      aux_sym__double_quoted_unicode_char_token1,
    STATE(630), 2,
      sym__double_quoted_unicode_char,
      aux_sym_unicode_string_literal_repeat1,
  [12310] = 5,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(894), 1,
      anon_sym_LBRACE,
    ACTIONS(2257), 1,
      sym_identifier,
    STATE(303), 1,
      sym_yul_identifier,
    STATE(342), 1,
      sym_yul_block,
  [12326] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2341), 1,
      anon_sym_COMMA,
    ACTIONS(2343), 1,
      anon_sym_RPAREN,
    STATE(764), 1,
      aux_sym_error_declaration_repeat1,
  [12339] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(594), 1,
      anon_sym_RPAREN,
    ACTIONS(2345), 1,
      sym_identifier,
    ACTIONS(2347), 1,
      anon_sym_COMMA,
  [12352] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2349), 1,
      anon_sym_COMMA,
    ACTIONS(2352), 1,
      anon_sym_RPAREN,
    STATE(645), 1,
      aux_sym_assembly_flags_repeat1,
  [12365] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2345), 1,
      sym_identifier,
    ACTIONS(2347), 1,
      anon_sym_COMMA,
    ACTIONS(2354), 1,
      anon_sym_RPAREN,
  [12378] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2345), 1,
      sym_identifier,
    ACTIONS(2347), 2,
      anon_sym_COMMA,
      anon_sym_RPAREN,
  [12389] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2021), 1,
      anon_sym_LPAREN,
    ACTIONS(2356), 1,
      sym_identifier,
    STATE(363), 1,
      sym__parameter_list,
  [12402] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2239), 1,
      anon_sym_RPAREN,
    ACTIONS(2358), 1,
      anon_sym_COMMA,
    STATE(740), 1,
      aux_sym_variable_declaration_tuple_repeat1,
  [12415] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2360), 1,
      anon_sym_catch,
    STATE(90), 2,
      sym_catch_clause,
      aux_sym_try_statement_repeat1,
  [12426] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2239), 1,
      anon_sym_RPAREN,
    ACTIONS(2358), 1,
      anon_sym_COMMA,
    STATE(741), 1,
      aux_sym_variable_declaration_tuple_repeat1,
  [12439] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(47), 1,
      anon_sym_LBRACE,
    ACTIONS(1760), 1,
      sym_unchecked,
    STATE(99), 1,
      sym_block_statement,
  [12452] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(608), 1,
      anon_sym_RPAREN,
    ACTIONS(2362), 1,
      anon_sym_COMMA,
    STATE(735), 1,
      aux_sym__parameter_list_repeat1,
  [12465] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2108), 1,
      sym_identifier,
    STATE(367), 1,
      sym__identifier_path,
    STATE(766), 1,
      sym_user_defined_type,
  [12478] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2364), 1,
      anon_sym_COMMA,
    ACTIONS(2366), 1,
      anon_sym_RPAREN,
    STATE(678), 1,
      aux_sym__return_parameters_repeat1,
  [12491] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2325), 1,
      anon_sym_LPAREN,
    ACTIONS(2368), 1,
      anon_sym_LBRACE,
    STATE(889), 1,
      sym_assembly_flags,
  [12504] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(311), 1,
      anon_sym_RBRACK,
    ACTIONS(2370), 1,
      anon_sym_COMMA,
    STATE(708), 1,
      aux_sym_inline_array_expression_repeat1,
  [12517] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2285), 1,
      anon_sym_as,
    ACTIONS(2372), 1,
      anon_sym_from,
    STATE(957), 1,
      sym__import_alias,
  [12530] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2257), 1,
      sym_identifier,
    ACTIONS(2374), 1,
      anon_sym_RPAREN,
    STATE(303), 1,
      sym_yul_identifier,
  [12543] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2374), 1,
      anon_sym_RPAREN,
    ACTIONS(2376), 1,
      anon_sym_COMMA,
    STATE(297), 1,
      aux_sym_yul_variable_declaration_repeat1,
  [12556] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2378), 1,
      sym_identifier,
    ACTIONS(2380), 1,
      anon_sym_RBRACE,
    STATE(881), 1,
      sym__import_declaration,
  [12569] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(894), 1,
      anon_sym_LBRACE,
    ACTIONS(2382), 1,
      anon_sym_DASH_GT,
    STATE(333), 1,
      sym_yul_block,
  [12582] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2384), 1,
      anon_sym_COMMA,
    ACTIONS(2386), 1,
      anon_sym_RPAREN,
    STATE(677), 1,
      aux_sym_yul_variable_declaration_repeat1,
  [12595] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1586), 1,
      anon_sym_LBRACK,
    ACTIONS(2388), 1,
      sym_identifier,
    ACTIONS(2390), 1,
      anon_sym_RPAREN,
  [12608] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1181), 1,
      anon_sym_RPAREN,
    ACTIONS(2392), 1,
      anon_sym_COMMA,
    STATE(679), 1,
      aux_sym_yul_function_call_repeat1,
  [12621] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2394), 1,
      anon_sym_COMMA,
    ACTIONS(2397), 1,
      anon_sym_RBRACE,
    STATE(666), 1,
      aux_sym__multiple_import_repeat1,
  [12634] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2257), 1,
      sym_identifier,
    STATE(287), 1,
      sym_yul_identifier,
    STATE(301), 1,
      sym_yul_path,
  [12647] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(69), 1,
      anon_sym_DQUOTE,
    ACTIONS(71), 1,
      anon_sym_SQUOTE,
    STATE(824), 1,
      sym_string,
  [12660] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(47), 1,
      anon_sym_LBRACE,
    ACTIONS(1760), 1,
      sym_unchecked,
    STATE(100), 1,
      sym_block_statement,
  [12673] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2399), 1,
      anon_sym_COMMA,
    ACTIONS(2402), 1,
      anon_sym_RPAREN,
    STATE(670), 1,
      aux_sym__return_parameters_repeat1,
  [12686] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2404), 1,
      anon_sym_COMMA,
    ACTIONS(2406), 1,
      anon_sym_RPAREN,
    STATE(758), 1,
      aux_sym_override_specifier_repeat1,
  [12699] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2257), 1,
      sym_identifier,
    ACTIONS(2408), 1,
      anon_sym_RPAREN,
    STATE(303), 1,
      sym_yul_identifier,
  [12712] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2410), 1,
      anon_sym_EQ,
    ACTIONS(2412), 1,
      anon_sym_SEMI,
    STATE(255), 1,
      sym__semicolon,
  [12725] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2120), 1,
      anon_sym_RBRACE,
    ACTIONS(2414), 1,
      anon_sym_COMMA,
    STATE(727), 1,
      aux_sym_using_directive_repeat1,
  [12738] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2257), 1,
      sym_identifier,
    ACTIONS(2416), 1,
      anon_sym_RPAREN,
    STATE(303), 1,
      sym_yul_identifier,
  [12751] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(894), 1,
      anon_sym_LBRACE,
    ACTIONS(2418), 1,
      anon_sym_DASH_GT,
    STATE(336), 1,
      sym_yul_block,
  [12764] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2416), 1,
      anon_sym_RPAREN,
    ACTIONS(2420), 1,
      anon_sym_COMMA,
    STATE(297), 1,
      aux_sym_yul_variable_declaration_repeat1,
  [12777] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2422), 1,
      anon_sym_COMMA,
    ACTIONS(2424), 1,
      anon_sym_RPAREN,
    STATE(670), 1,
      aux_sym__return_parameters_repeat1,
  [12790] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2426), 1,
      anon_sym_COMMA,
    ACTIONS(2429), 1,
      anon_sym_RPAREN,
    STATE(679), 1,
      aux_sym_yul_function_call_repeat1,
  [12803] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2378), 1,
      sym_identifier,
    ACTIONS(2431), 1,
      anon_sym_RBRACE,
    STATE(881), 1,
      sym__import_declaration,
  [12816] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1586), 1,
      anon_sym_LBRACK,
    ACTIONS(2433), 1,
      sym_identifier,
    ACTIONS(2435), 1,
      anon_sym_RPAREN,
  [12829] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2437), 1,
      anon_sym_COMMA,
    ACTIONS(2439), 1,
      anon_sym_RBRACE,
    STATE(666), 1,
      aux_sym__multiple_import_repeat1,
  [12842] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2317), 1,
      anon_sym_global,
    ACTIONS(2319), 1,
      anon_sym_SEMI,
    STATE(173), 1,
      sym__semicolon,
  [12855] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2360), 1,
      anon_sym_catch,
    STATE(91), 2,
      sym_catch_clause,
      aux_sym_try_statement_repeat1,
  [12866] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(894), 1,
      anon_sym_LBRACE,
    ACTIONS(2441), 1,
      anon_sym_DASH_GT,
    STATE(339), 1,
      sym_yul_block,
  [12879] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2378), 1,
      sym_identifier,
    ACTIONS(2443), 1,
      anon_sym_RBRACE,
    STATE(723), 1,
      sym__import_declaration,
  [12892] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2257), 1,
      sym_identifier,
    ACTIONS(2445), 1,
      anon_sym_RPAREN,
    STATE(303), 1,
      sym_yul_identifier,
  [12905] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(594), 1,
      anon_sym_RPAREN,
    ACTIONS(2447), 1,
      anon_sym_COMMA,
    STATE(703), 1,
      aux_sym_variable_declaration_tuple_repeat2,
  [12918] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2449), 1,
      sym_identifier,
    ACTIONS(2451), 1,
      anon_sym_RBRACE,
    STATE(777), 1,
      sym_call_struct_argument,
  [12931] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2285), 1,
      anon_sym_as,
    ACTIONS(2453), 1,
      anon_sym_from,
    STATE(931), 1,
      sym__import_alias,
  [12944] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2455), 1,
      anon_sym_COMMA,
    ACTIONS(2457), 1,
      anon_sym_RBRACE,
    STATE(716), 1,
      aux_sym_struct_expression_repeat1,
  [12957] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2459), 1,
      anon_sym_default,
    ACTIONS(2461), 1,
      anon_sym_case,
    STATE(300), 1,
      aux_sym_yul_switch_statement_repeat1,
  [12970] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2463), 1,
      anon_sym_anonymous,
    ACTIONS(2465), 1,
      anon_sym_SEMI,
    STATE(199), 1,
      sym__semicolon,
  [12983] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(894), 1,
      anon_sym_LBRACE,
    ACTIONS(2467), 1,
      anon_sym_DASH_GT,
    STATE(341), 1,
      sym_yul_block,
  [12996] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2469), 1,
      anon_sym_COMMA,
    ACTIONS(2471), 1,
      anon_sym_RBRACE,
    STATE(698), 1,
      aux_sym_call_argument_repeat1,
  [13009] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2473), 1,
      anon_sym_COMMA,
    ACTIONS(2475), 1,
      anon_sym_RBRACE,
    STATE(674), 1,
      aux_sym_using_directive_repeat1,
  [13022] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2479), 1,
      anon_sym_as,
    ACTIONS(2477), 2,
      anon_sym_COMMA,
      anon_sym_RBRACE,
  [13033] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2451), 1,
      anon_sym_RBRACE,
    ACTIONS(2481), 1,
      anon_sym_COMMA,
    STATE(724), 1,
      aux_sym_call_argument_repeat1,
  [13046] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2329), 1,
      anon_sym_RPAREN,
    ACTIONS(2483), 1,
      anon_sym_COMMA,
    STATE(645), 1,
      aux_sym_assembly_flags_repeat1,
  [13059] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2285), 1,
      anon_sym_as,
    ACTIONS(2485), 1,
      anon_sym_SEMI,
    STATE(970), 1,
      sym__import_alias,
  [13072] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(287), 1,
      anon_sym_RPAREN,
    ACTIONS(1754), 1,
      anon_sym_COMMA,
    STATE(732), 1,
      aux_sym_tuple_expression_repeat1,
  [13085] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(592), 1,
      anon_sym_RPAREN,
    ACTIONS(2345), 1,
      sym_identifier,
    ACTIONS(2347), 1,
      anon_sym_COMMA,
  [13098] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(592), 1,
      anon_sym_RPAREN,
    ACTIONS(2487), 1,
      anon_sym_COMMA,
    STATE(704), 1,
      aux_sym_variable_declaration_tuple_repeat2,
  [13111] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2489), 1,
      anon_sym_COMMA,
    ACTIONS(2492), 1,
      anon_sym_RPAREN,
    STATE(704), 1,
      aux_sym_variable_declaration_tuple_repeat2,
  [13124] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(269), 1,
      anon_sym_RPAREN,
    ACTIONS(2494), 1,
      anon_sym_COMMA,
    STATE(718), 1,
      aux_sym__call_arguments_repeat1,
  [13137] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(47), 1,
      anon_sym_LBRACE,
    ACTIONS(1760), 1,
      sym_unchecked,
    STATE(650), 1,
      sym_block_statement,
  [13150] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2496), 1,
      anon_sym_COMMA,
    ACTIONS(2498), 1,
      anon_sym_RBRACE,
    STATE(717), 1,
      aux_sym_enum_body_repeat1,
  [13163] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1799), 1,
      anon_sym_RBRACK,
    ACTIONS(2500), 1,
      anon_sym_COMMA,
    STATE(708), 1,
      aux_sym_inline_array_expression_repeat1,
  [13176] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2503), 1,
      anon_sym_anonymous,
    ACTIONS(2505), 1,
      anon_sym_SEMI,
    STATE(210), 1,
      sym__semicolon,
  [13189] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2507), 1,
      anon_sym_COMMA,
    ACTIONS(2509), 1,
      anon_sym_RPAREN,
    STATE(653), 1,
      aux_sym__parameter_list_repeat1,
  [13202] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2225), 1,
      anon_sym_global,
    ACTIONS(2227), 1,
      anon_sym_SEMI,
    STATE(197), 1,
      sym__semicolon,
  [13215] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2511), 1,
      sym_identifier,
    ACTIONS(2513), 1,
      anon_sym_RBRACE,
    STATE(887), 1,
      sym_struct_field_assignment,
  [13228] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2277), 1,
      anon_sym_global,
    ACTIONS(2279), 1,
      anon_sym_SEMI,
    STATE(225), 1,
      sym__semicolon,
  [13241] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2515), 1,
      anon_sym_COMMA,
    ACTIONS(2518), 1,
      anon_sym_RPAREN,
    STATE(714), 1,
      aux_sym_override_specifier_repeat1,
  [13254] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(594), 1,
      anon_sym_RPAREN,
    ACTIONS(2447), 1,
      anon_sym_COMMA,
    STATE(704), 1,
      aux_sym_variable_declaration_tuple_repeat2,
  [13267] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2513), 1,
      anon_sym_RBRACE,
    ACTIONS(2520), 1,
      anon_sym_COMMA,
    STATE(742), 1,
      aux_sym_struct_expression_repeat1,
  [13280] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2522), 1,
      anon_sym_COMMA,
    ACTIONS(2524), 1,
      anon_sym_RBRACE,
    STATE(744), 1,
      aux_sym_enum_body_repeat1,
  [13293] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2526), 1,
      anon_sym_COMMA,
    ACTIONS(2529), 1,
      anon_sym_RPAREN,
    STATE(718), 1,
      aux_sym__call_arguments_repeat1,
  [13306] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(604), 1,
      anon_sym_RPAREN,
    ACTIONS(2531), 1,
      anon_sym_COMMA,
    STATE(749), 1,
      aux_sym__event_parameter_list_repeat1,
  [13319] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2449), 1,
      sym_identifier,
    ACTIONS(2533), 1,
      anon_sym_RBRACE,
    STATE(777), 1,
      sym_call_struct_argument,
  [13332] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2535), 1,
      sym_identifier,
    ACTIONS(2537), 2,
      anon_sym_COMMA,
      anon_sym_RPAREN,
  [13343] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2539), 1,
      anon_sym_EQ,
    ACTIONS(2541), 1,
      anon_sym_SEMI,
    STATE(95), 1,
      sym__semicolon,
  [13356] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2543), 1,
      anon_sym_COMMA,
    ACTIONS(2545), 1,
      anon_sym_RBRACE,
    STATE(682), 1,
      aux_sym__multiple_import_repeat1,
  [13369] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2547), 1,
      anon_sym_COMMA,
    ACTIONS(2550), 1,
      anon_sym_RBRACE,
    STATE(724), 1,
      aux_sym_call_argument_repeat1,
  [13382] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2021), 1,
      anon_sym_LPAREN,
    ACTIONS(2552), 1,
      sym_identifier,
    STATE(507), 1,
      sym__parameter_list,
  [13395] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(295), 1,
      anon_sym_RPAREN,
    ACTIONS(2554), 1,
      anon_sym_COMMA,
    STATE(732), 1,
      aux_sym_tuple_expression_repeat1,
  [13408] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2556), 1,
      anon_sym_COMMA,
    ACTIONS(2559), 1,
      anon_sym_RBRACE,
    STATE(727), 1,
      aux_sym_using_directive_repeat1,
  [13421] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2293), 1,
      anon_sym_global,
    ACTIONS(2295), 1,
      anon_sym_SEMI,
    STATE(241), 1,
      sym__semicolon,
  [13434] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2561), 1,
      anon_sym_EQ,
    ACTIONS(2563), 1,
      anon_sym_SEMI,
    STATE(259), 1,
      sym__semicolon,
  [13447] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2565), 1,
      sym_identifier,
    ACTIONS(2567), 2,
      anon_sym_COMMA,
      anon_sym_RPAREN,
  [13458] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2297), 1,
      anon_sym_global,
    ACTIONS(2299), 1,
      anon_sym_SEMI,
    STATE(243), 1,
      sym__semicolon,
  [13471] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1774), 1,
      anon_sym_RPAREN,
    ACTIONS(2570), 1,
      anon_sym_COMMA,
    STATE(732), 1,
      aux_sym_tuple_expression_repeat1,
  [13484] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2301), 1,
      anon_sym_global,
    ACTIONS(2303), 1,
      anon_sym_SEMI,
    STATE(163), 1,
      sym__semicolon,
  [13497] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2573), 1,
      anon_sym_COMMA,
    ACTIONS(2575), 1,
      anon_sym_RPAREN,
    STATE(719), 1,
      aux_sym__event_parameter_list_repeat1,
  [13510] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2577), 1,
      anon_sym_COMMA,
    ACTIONS(2580), 1,
      anon_sym_RPAREN,
    STATE(735), 1,
      aux_sym__parameter_list_repeat1,
  [13523] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2305), 1,
      anon_sym_global,
    ACTIONS(2307), 1,
      anon_sym_SEMI,
    STATE(248), 1,
      sym__semicolon,
  [13536] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2511), 1,
      sym_identifier,
    ACTIONS(2582), 1,
      anon_sym_RBRACE,
    STATE(691), 1,
      sym_struct_field_assignment,
  [13549] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2584), 1,
      anon_sym_COMMA,
    ACTIONS(2587), 1,
      anon_sym_RPAREN,
    STATE(738), 1,
      aux_sym_error_declaration_repeat1,
  [13562] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2511), 1,
      sym_identifier,
    ACTIONS(2589), 1,
      anon_sym_RBRACE,
    STATE(887), 1,
      sym_struct_field_assignment,
  [13575] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(594), 1,
      anon_sym_RPAREN,
    ACTIONS(2591), 1,
      anon_sym_COMMA,
    STATE(741), 1,
      aux_sym_variable_declaration_tuple_repeat1,
  [13588] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2593), 1,
      anon_sym_COMMA,
    ACTIONS(2596), 1,
      anon_sym_RPAREN,
    STATE(741), 1,
      aux_sym_variable_declaration_tuple_repeat1,
  [13601] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2598), 1,
      anon_sym_COMMA,
    ACTIONS(2601), 1,
      anon_sym_RBRACE,
    STATE(742), 1,
      aux_sym_struct_expression_repeat1,
  [13614] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2603), 1,
      anon_sym_COMMA,
    ACTIONS(2605), 1,
      anon_sym_RPAREN,
    STATE(660), 1,
      aux_sym_yul_variable_declaration_repeat1,
  [13627] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2607), 1,
      anon_sym_COMMA,
    ACTIONS(2610), 1,
      anon_sym_RBRACE,
    STATE(744), 1,
      aux_sym_enum_body_repeat1,
  [13640] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2257), 1,
      sym_identifier,
    ACTIONS(2612), 1,
      anon_sym_RPAREN,
    STATE(663), 1,
      sym_yul_identifier,
  [13653] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2614), 1,
      anon_sym_COMMA,
    ACTIONS(2616), 1,
      anon_sym_RPAREN,
    STATE(665), 1,
      aux_sym_yul_function_call_repeat1,
  [13666] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2618), 1,
      anon_sym_COMMA,
    ACTIONS(2620), 1,
      anon_sym_RPAREN,
    STATE(750), 1,
      aux_sym_error_declaration_repeat1,
  [13679] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2622), 1,
      anon_sym_COMMA,
    ACTIONS(2624), 1,
      anon_sym_RBRACE,
    STATE(751), 1,
      aux_sym_enum_body_repeat1,
  [13692] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2626), 1,
      anon_sym_COMMA,
    ACTIONS(2629), 1,
      anon_sym_RPAREN,
    STATE(749), 1,
      aux_sym__event_parameter_list_repeat1,
  [13705] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(618), 1,
      anon_sym_RPAREN,
    ACTIONS(2631), 1,
      anon_sym_COMMA,
    STATE(738), 1,
      aux_sym_error_declaration_repeat1,
  [13718] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2633), 1,
      anon_sym_COMMA,
    ACTIONS(2635), 1,
      anon_sym_RBRACE,
    STATE(744), 1,
      aux_sym_enum_body_repeat1,
  [13731] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2257), 1,
      sym_identifier,
    ACTIONS(2637), 1,
      anon_sym_LPAREN,
    STATE(299), 1,
      sym_yul_identifier,
  [13744] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(69), 1,
      anon_sym_DQUOTE,
    ACTIONS(71), 1,
      anon_sym_SQUOTE,
    STATE(914), 1,
      sym_string,
  [13757] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2108), 1,
      sym_identifier,
    STATE(367), 1,
      sym__identifier_path,
    STATE(671), 1,
      sym_user_defined_type,
  [13770] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2217), 1,
      anon_sym_global,
    ACTIONS(2219), 1,
      anon_sym_SEMI,
    STATE(195), 1,
      sym__semicolon,
  [13783] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2541), 1,
      anon_sym_SEMI,
    ACTIONS(2639), 1,
      anon_sym_EQ,
    STATE(95), 1,
      sym__semicolon,
  [13796] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2641), 1,
      anon_sym_COMMA,
    ACTIONS(2643), 1,
      anon_sym_RPAREN,
    STATE(699), 1,
      aux_sym_assembly_flags_repeat1,
  [13809] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2207), 1,
      anon_sym_RPAREN,
    ACTIONS(2645), 1,
      anon_sym_COMMA,
    STATE(714), 1,
      aux_sym_override_specifier_repeat1,
  [13822] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2449), 1,
      sym_identifier,
    ACTIONS(2647), 1,
      anon_sym_RBRACE,
    STATE(695), 1,
      sym_call_struct_argument,
  [13835] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2649), 1,
      anon_sym_COMMA,
    ACTIONS(2651), 1,
      anon_sym_RBRACE,
    STATE(761), 1,
      aux_sym_using_directive_repeat1,
  [13848] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2110), 1,
      anon_sym_RBRACE,
    ACTIONS(2653), 1,
      anon_sym_COMMA,
    STATE(727), 1,
      aux_sym_using_directive_repeat1,
  [13861] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2565), 1,
      sym_identifier,
    ACTIONS(2655), 2,
      anon_sym_COMMA,
      anon_sym_RPAREN,
  [13872] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2657), 1,
      anon_sym_COMMA,
    ACTIONS(2659), 1,
      anon_sym_RPAREN,
    STATE(705), 1,
      aux_sym__call_arguments_repeat1,
  [13885] = 4,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(626), 1,
      anon_sym_RPAREN,
    ACTIONS(2661), 1,
      anon_sym_COMMA,
    STATE(738), 1,
      aux_sym_error_declaration_repeat1,
  [13898] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2663), 1,
      anon_sym_SEMI,
    STATE(119), 1,
      sym__semicolon,
  [13908] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2518), 2,
      anon_sym_COMMA,
      anon_sym_RPAREN,
  [13916] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2665), 1,
      anon_sym_SEMI,
    STATE(182), 1,
      sym__semicolon,
  [13926] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2667), 1,
      anon_sym_SEMI,
    STATE(110), 1,
      sym__semicolon,
  [13936] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1586), 1,
      anon_sym_LBRACK,
    ACTIONS(2669), 1,
      anon_sym_constant,
  [13946] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2671), 2,
      anon_sym_COMMA,
      anon_sym_RPAREN,
  [13954] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2070), 1,
      anon_sym_LBRACE,
    STATE(190), 1,
      sym_contract_body,
  [13964] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2257), 1,
      sym_identifier,
    STATE(303), 1,
      sym_yul_identifier,
  [13974] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2021), 1,
      anon_sym_LPAREN,
    STATE(622), 1,
      sym__parameter_list,
  [13984] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2673), 2,
      anon_sym_COMMA,
      anon_sym_RPAREN,
  [13992] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2257), 1,
      sym_identifier,
    STATE(599), 1,
      sym_yul_identifier,
  [14002] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2675), 2,
      anon_sym_COMMA,
      anon_sym_RPAREN,
  [14010] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2550), 2,
      anon_sym_COMMA,
      anon_sym_RBRACE,
  [14018] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2677), 2,
      anon_sym_global,
      anon_sym_SEMI,
  [14026] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2021), 1,
      anon_sym_LPAREN,
    STATE(706), 1,
      sym__parameter_list,
  [14036] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2679), 2,
      anon_sym_COMMA,
      anon_sym_RBRACE,
  [14044] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2429), 2,
      anon_sym_COMMA,
      anon_sym_RPAREN,
  [14052] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2681), 2,
      anon_sym_COMMA,
      anon_sym_RPAREN,
  [14060] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2070), 1,
      anon_sym_LBRACE,
    STATE(160), 1,
      sym_contract_body,
  [14070] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2683), 1,
      anon_sym_SEMI,
    STATE(183), 1,
      sym__semicolon,
  [14080] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2511), 1,
      sym_identifier,
    STATE(887), 1,
      sym_struct_field_assignment,
  [14090] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2685), 1,
      sym_identifier,
    ACTIONS(2687), 1,
      anon_sym_EQ_GT,
  [14100] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2689), 1,
      anon_sym_DQUOTE,
    ACTIONS(2691), 1,
      sym__hex_digit,
  [14110] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2689), 1,
      anon_sym_SQUOTE,
    ACTIONS(2693), 1,
      sym__hex_digit,
  [14120] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2695), 1,
      anon_sym_LBRACE,
    STATE(168), 1,
      sym_struct_body,
  [14130] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2257), 1,
      sym_identifier,
    STATE(606), 1,
      sym_yul_identifier,
  [14140] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2257), 1,
      sym_identifier,
    STATE(743), 1,
      sym_yul_identifier,
  [14150] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2697), 1,
      anon_sym_SEMI,
    STATE(178), 1,
      sym__semicolon,
  [14160] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2699), 1,
      anon_sym_SEMI,
    STATE(205), 1,
      sym__semicolon,
  [14170] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2587), 2,
      anon_sym_COMMA,
      anon_sym_RPAREN,
  [14178] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2701), 1,
      anon_sym_LBRACE,
    STATE(169), 1,
      sym_enum_body,
  [14188] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2703), 2,
      anon_sym_COMMA,
      anon_sym_RPAREN,
  [14196] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2257), 1,
      sym_identifier,
    STATE(608), 1,
      sym_yul_identifier,
  [14206] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(894), 1,
      anon_sym_LBRACE,
    STATE(862), 1,
      sym_yul_block,
  [14216] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(894), 1,
      anon_sym_LBRACE,
    STATE(324), 1,
      sym_yul_block,
  [14226] = 3,
    ACTIONS(2136), 1,
      sym_comment,
    ACTIONS(2705), 1,
      aux_sym_pragma_value_token1,
    STATE(919), 1,
      sym_pragma_value,
  [14236] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2257), 1,
      sym_identifier,
    STATE(613), 1,
      sym_yul_identifier,
  [14246] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2707), 1,
      anon_sym_LPAREN,
    STATE(693), 1,
      sym__event_parameter_list,
  [14256] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2709), 2,
      anon_sym_COMMA,
      anon_sym_RBRACE,
  [14264] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2711), 1,
      sym_identifier,
    ACTIONS(2713), 1,
      anon_sym_RBRACE,
  [14274] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2715), 1,
      sym_identifier,
    ACTIONS(2717), 1,
      anon_sym_RBRACE,
  [14284] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(894), 1,
      anon_sym_LBRACE,
    STATE(329), 1,
      sym_yul_block,
  [14294] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2719), 2,
      anon_sym_anonymous,
      anon_sym_SEMI,
  [14302] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2629), 2,
      anon_sym_COMMA,
      anon_sym_RPAREN,
  [14310] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2721), 1,
      anon_sym_from,
    STATE(885), 1,
      sym__from_clause,
  [14320] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2723), 1,
      anon_sym_SEMI,
    STATE(174), 1,
      sym__semicolon,
  [14330] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2725), 2,
      anon_sym_COMMA,
      anon_sym_RPAREN,
  [14338] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2257), 1,
      sym_identifier,
    STATE(279), 1,
      sym_yul_identifier,
  [14348] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2727), 1,
      anon_sym_SEMI,
    STATE(274), 1,
      sym__semicolon,
  [14358] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2729), 2,
      anon_sym_COMMA,
      anon_sym_RPAREN,
  [14366] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2731), 1,
      anon_sym_SEMI,
    STATE(220), 1,
      sym__semicolon,
  [14376] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2733), 1,
      anon_sym_SEMI,
    STATE(221), 1,
      sym__semicolon,
  [14386] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2735), 1,
      anon_sym_SEMI,
    STATE(224), 1,
      sym__semicolon,
  [14396] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2737), 1,
      anon_sym_SEMI,
    STATE(192), 1,
      sym__semicolon,
  [14406] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2529), 2,
      anon_sym_COMMA,
      anon_sym_RPAREN,
  [14414] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2524), 1,
      anon_sym_RBRACE,
    ACTIONS(2711), 1,
      sym_identifier,
  [14424] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2739), 1,
      anon_sym_SEMI,
    STATE(233), 1,
      sym__semicolon,
  [14434] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2741), 2,
      anon_sym_anonymous,
      anon_sym_SEMI,
  [14442] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2743), 1,
      anon_sym_SEMI,
    STATE(235), 1,
      sym__semicolon,
  [14452] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2352), 2,
      anon_sym_COMMA,
      anon_sym_RPAREN,
  [14460] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2021), 1,
      anon_sym_LPAREN,
    STATE(624), 1,
      sym__parameter_list,
  [14470] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2745), 1,
      anon_sym_SEMI,
    STATE(117), 1,
      sym__semicolon,
  [14480] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2663), 1,
      anon_sym_SEMI,
    STATE(119), 1,
      sym__semicolon,
  [14490] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2747), 2,
      anon_sym_COMMA,
      anon_sym_RPAREN,
  [14498] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1586), 1,
      anon_sym_LBRACK,
    ACTIONS(2749), 1,
      sym_identifier,
  [14508] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2559), 2,
      anon_sym_COMMA,
      anon_sym_RBRACE,
  [14516] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1542), 1,
      anon_sym_LPAREN,
    STATE(453), 1,
      sym__call_arguments,
  [14526] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2021), 1,
      anon_sym_LPAREN,
    STATE(511), 1,
      sym__parameter_list,
  [14536] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2751), 1,
      anon_sym_SEMI,
    STATE(239), 1,
      sym__semicolon,
  [14546] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2753), 2,
      anon_sym_anonymous,
      anon_sym_SEMI,
  [14554] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2755), 2,
      anon_sym_COMMA,
      anon_sym_RBRACE,
  [14562] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2021), 1,
      anon_sym_LPAREN,
    STATE(872), 1,
      sym__parameter_list,
  [14572] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2757), 2,
      anon_sym_COMMA,
      anon_sym_RBRACE,
  [14580] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2759), 1,
      anon_sym_SEMI,
    STATE(179), 1,
      sym__semicolon,
  [14590] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2761), 1,
      anon_sym_SEMI,
    STATE(118), 1,
      sym__semicolon,
  [14600] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2763), 1,
      anon_sym_DQUOTE,
    ACTIONS(2765), 1,
      sym__hex_digit,
  [14610] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2767), 2,
      anon_sym_COMMA,
      anon_sym_RPAREN,
  [14618] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2769), 1,
      anon_sym_SEMI,
    STATE(162), 1,
      sym__semicolon,
  [14628] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2021), 1,
      anon_sym_LPAREN,
    STATE(535), 1,
      sym__parameter_list,
  [14638] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2771), 1,
      anon_sym_SEMI,
    STATE(242), 1,
      sym__semicolon,
  [14648] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2580), 2,
      anon_sym_COMMA,
      anon_sym_RPAREN,
  [14656] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2021), 1,
      anon_sym_LPAREN,
    STATE(669), 1,
      sym__parameter_list,
  [14666] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2763), 1,
      anon_sym_SQUOTE,
    ACTIONS(2773), 1,
      sym__hex_digit,
  [14676] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2775), 1,
      anon_sym_SEMI,
    STATE(244), 1,
      sym__semicolon,
  [14686] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2777), 2,
      anon_sym_anonymous,
      anon_sym_SEMI,
  [14694] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2021), 1,
      anon_sym_LPAREN,
    STATE(512), 1,
      sym__parameter_list,
  [14704] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2492), 2,
      anon_sym_COMMA,
      anon_sym_RPAREN,
  [14712] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2779), 1,
      anon_sym_SEMI,
    STATE(247), 1,
      sym__semicolon,
  [14722] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2781), 1,
      anon_sym_SEMI,
    STATE(164), 1,
      sym__semicolon,
  [14732] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1586), 1,
      anon_sym_LBRACK,
    ACTIONS(2783), 1,
      anon_sym_RPAREN,
  [14742] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2785), 2,
      anon_sym_COMMA,
      anon_sym_RPAREN,
  [14750] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2449), 1,
      sym_identifier,
    STATE(777), 1,
      sym_call_struct_argument,
  [14760] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2787), 1,
      anon_sym_SEMI,
    STATE(172), 1,
      sym__semicolon,
  [14770] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2789), 1,
      anon_sym_SEMI,
    STATE(250), 1,
      sym__semicolon,
  [14780] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2596), 2,
      anon_sym_COMMA,
      anon_sym_RPAREN,
  [14788] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2791), 2,
      anon_sym_COMMA,
      anon_sym_RPAREN,
  [14796] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2667), 1,
      anon_sym_SEMI,
    STATE(110), 1,
      sym__semicolon,
  [14806] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(894), 1,
      anon_sym_LBRACE,
    STATE(348), 1,
      sym_yul_block,
  [14816] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2793), 1,
      anon_sym_LBRACE,
    STATE(215), 1,
      sym_struct_body,
  [14826] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2795), 1,
      anon_sym_LBRACE,
    STATE(216), 1,
      sym_enum_body,
  [14836] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2707), 1,
      anon_sym_LPAREN,
    STATE(709), 1,
      sym__event_parameter_list,
  [14846] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2021), 1,
      anon_sym_LPAREN,
    STATE(509), 1,
      sym__parameter_list,
  [14856] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2378), 1,
      sym_identifier,
    STATE(881), 1,
      sym__import_declaration,
  [14866] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2797), 1,
      anon_sym_LPAREN,
    STATE(622), 1,
      sym__parameter_list,
  [14876] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2021), 1,
      anon_sym_LPAREN,
    STATE(363), 1,
      sym__parameter_list,
  [14886] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2745), 1,
      anon_sym_SEMI,
    STATE(117), 1,
      sym__semicolon,
  [14896] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2799), 1,
      sym_identifier,
    ACTIONS(2801), 1,
      anon_sym_RBRACE,
  [14906] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2803), 2,
      anon_sym_LBRACE,
      anon_sym_SEMI,
  [14914] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2805), 1,
      anon_sym_DQUOTE,
    ACTIONS(2807), 1,
      anon_sym_SQUOTE,
  [14924] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(894), 1,
      anon_sym_LBRACE,
    STATE(318), 1,
      sym_yul_block,
  [14934] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2635), 1,
      anon_sym_RBRACE,
    ACTIONS(2711), 1,
      sym_identifier,
  [14944] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2809), 1,
      anon_sym_DQUOTE,
    ACTIONS(2811), 1,
      anon_sym_SQUOTE,
  [14954] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2711), 1,
      sym_identifier,
    ACTIONS(2813), 1,
      anon_sym_RBRACE,
  [14964] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2257), 1,
      sym_identifier,
    STATE(902), 1,
      sym_yul_identifier,
  [14974] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2761), 1,
      anon_sym_SEMI,
    STATE(118), 1,
      sym__semicolon,
  [14984] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2815), 1,
      anon_sym_SEMI,
    STATE(203), 1,
      sym__semicolon,
  [14994] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2817), 2,
      anon_sym_COMMA,
      anon_sym_RBRACE,
  [15002] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(517), 1,
      anon_sym_while,
    ACTIONS(2819), 1,
      anon_sym_else,
  [15012] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(894), 1,
      anon_sym_LBRACE,
    STATE(308), 1,
      sym_yul_block,
  [15022] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(894), 1,
      anon_sym_LBRACE,
    STATE(332), 1,
      sym_yul_block,
  [15032] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2821), 1,
      anon_sym_SEMI,
    STATE(184), 1,
      sym__semicolon,
  [15042] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2823), 1,
      anon_sym_SEMI,
    STATE(171), 1,
      sym__semicolon,
  [15052] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2601), 2,
      anon_sym_COMMA,
      anon_sym_RBRACE,
  [15060] = 3,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2825), 1,
      anon_sym_DQUOTE,
    ACTIONS(2827), 1,
      anon_sym_SQUOTE,
  [15070] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2829), 1,
      anon_sym_LBRACE,
  [15077] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2831), 1,
      anon_sym_at,
  [15084] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2711), 1,
      sym_identifier,
  [15091] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2833), 1,
      anon_sym_COLON,
  [15098] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2835), 1,
      anon_sym_EQ,
  [15105] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2837), 1,
      anon_sym_from,
  [15112] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2839), 1,
      anon_sym_from,
  [15119] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2841), 1,
      anon_sym_from,
  [15126] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2843), 1,
      anon_sym_for,
  [15133] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2845), 1,
      sym_identifier,
  [15140] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2847), 1,
      sym_identifier,
  [15147] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2849), 1,
      anon_sym_for,
  [15154] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2851), 1,
      sym_identifier,
  [15161] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2853), 1,
      anon_sym_LPAREN,
  [15168] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2855), 1,
      anon_sym_LBRACE,
  [15175] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2857), 1,
      sym_identifier,
  [15182] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2859), 1,
      anon_sym_EQ,
  [15189] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2861), 1,
      anon_sym_LPAREN,
  [15196] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2863), 1,
      anon_sym_EQ,
  [15203] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2865), 1,
      sym_solidity_version,
  [15210] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2368), 1,
      anon_sym_LBRACE,
  [15217] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2867), 1,
      sym_identifier,
  [15224] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2869), 1,
      anon_sym_SEMI,
  [15231] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2871), 1,
      sym_identifier,
  [15238] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2873), 1,
      anon_sym_from,
  [15245] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2875), 1,
      anon_sym_SEMI,
  [15252] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2877), 1,
      sym_identifier,
  [15259] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2879), 1,
      sym_identifier,
  [15266] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2881), 1,
      anon_sym_for,
  [15273] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2883), 1,
      sym_solidity_version,
  [15280] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2885), 1,
      anon_sym_SEMI,
  [15287] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2887), 1,
      sym__hex_digit,
  [15294] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2889), 1,
      anon_sym_LBRACE,
  [15301] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2891), 1,
      anon_sym_LPAREN,
  [15308] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2893), 1,
      anon_sym_LPAREN,
  [15315] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2895), 1,
      anon_sym_EQ,
  [15322] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2897), 1,
      anon_sym_is,
  [15329] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2899), 1,
      anon_sym_LPAREN,
  [15336] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2901), 1,
      anon_sym_LPAREN,
  [15343] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2903), 1,
      sym_identifier,
  [15350] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2905), 1,
      sym_identifier,
  [15357] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2907), 1,
      anon_sym_contract,
  [15364] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2909), 1,
      anon_sym_from,
  [15371] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2911), 1,
      anon_sym_RPAREN,
  [15378] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2913), 1,
      anon_sym_while,
  [15385] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2915), 1,
      anon_sym_EQ,
  [15392] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2917), 1,
      anon_sym_LBRACE,
  [15399] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2919), 1,
      sym_identifier,
  [15406] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2921), 1,
      anon_sym_EQ_GT,
  [15413] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2923), 1,
      anon_sym_LPAREN,
  [15420] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1750), 1,
      anon_sym_COLON,
  [15427] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2925), 1,
      sym_identifier,
  [15434] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2927), 1,
      anon_sym_from,
  [15441] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2929), 1,
      sym_identifier,
  [15448] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2931), 1,
      anon_sym_RPAREN,
  [15455] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2933), 1,
      anon_sym_LPAREN,
  [15462] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2935), 1,
      sym_identifier,
  [15469] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2937), 1,
      sym_identifier,
  [15476] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2939), 1,
      sym_identifier,
  [15483] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2941), 1,
      anon_sym_is,
  [15490] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2943), 1,
      anon_sym_LPAREN,
  [15497] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2945), 1,
      anon_sym_for,
  [15504] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2639), 1,
      anon_sym_EQ,
  [15511] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2947), 1,
      anon_sym_for,
  [15518] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2949), 1,
      anon_sym_for,
  [15525] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2951), 1,
      anon_sym_LBRACE,
  [15532] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2539), 1,
      anon_sym_EQ,
  [15539] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2953), 1,
      anon_sym_for,
  [15546] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2955), 1,
      anon_sym_from,
  [15553] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2957), 1,
      anon_sym_LBRACE,
  [15560] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(1014), 1,
      anon_sym_LPAREN,
  [15567] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2873), 1,
      anon_sym_from,
  [15574] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2959), 1,
      sym_identifier,
  [15581] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2961), 1,
      sym_identifier,
  [15588] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2963), 1,
      anon_sym_EQ,
  [15595] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2965), 1,
      sym_identifier,
  [15602] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2967), 1,
      anon_sym_for,
  [15609] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2969), 1,
      anon_sym_LPAREN,
  [15616] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2971), 1,
      anon_sym_from,
  [15623] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2973), 1,
      anon_sym_LPAREN,
  [15630] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2975), 1,
      anon_sym_LPAREN,
  [15637] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2977), 1,
      anon_sym_SEMI,
  [15644] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2979), 1,
      anon_sym_LPAREN,
  [15651] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2981), 1,
      sym_identifier,
  [15658] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2983), 1,
      anon_sym_LPAREN,
  [15665] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2985), 1,
      anon_sym_while,
  [15672] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2987), 1,
      sym_identifier,
  [15679] = 2,
    ACTIONS(3), 1,
      sym_comment,
    ACTIONS(2989), 1,
      ts_builtin_sym_end,
};

static const uint32_t ts_small_parse_table_map[] = {
  [SMALL_STATE(368)] = 0,
  [SMALL_STATE(369)] = 73,
  [SMALL_STATE(370)] = 143,
  [SMALL_STATE(371)] = 213,
  [SMALL_STATE(372)] = 282,
  [SMALL_STATE(373)] = 351,
  [SMALL_STATE(374)] = 420,
  [SMALL_STATE(375)] = 489,
  [SMALL_STATE(376)] = 558,
  [SMALL_STATE(377)] = 627,
  [SMALL_STATE(378)] = 696,
  [SMALL_STATE(379)] = 765,
  [SMALL_STATE(380)] = 834,
  [SMALL_STATE(381)] = 903,
  [SMALL_STATE(382)] = 972,
  [SMALL_STATE(383)] = 1041,
  [SMALL_STATE(384)] = 1110,
  [SMALL_STATE(385)] = 1179,
  [SMALL_STATE(386)] = 1248,
  [SMALL_STATE(387)] = 1319,
  [SMALL_STATE(388)] = 1384,
  [SMALL_STATE(389)] = 1449,
  [SMALL_STATE(390)] = 1514,
  [SMALL_STATE(391)] = 1579,
  [SMALL_STATE(392)] = 1639,
  [SMALL_STATE(393)] = 1701,
  [SMALL_STATE(394)] = 1761,
  [SMALL_STATE(395)] = 1827,
  [SMALL_STATE(396)] = 1888,
  [SMALL_STATE(397)] = 1953,
  [SMALL_STATE(398)] = 2018,
  [SMALL_STATE(399)] = 2079,
  [SMALL_STATE(400)] = 2140,
  [SMALL_STATE(401)] = 2201,
  [SMALL_STATE(402)] = 2262,
  [SMALL_STATE(403)] = 2348,
  [SMALL_STATE(404)] = 2404,
  [SMALL_STATE(405)] = 2470,
  [SMALL_STATE(406)] = 2546,
  [SMALL_STATE(407)] = 2618,
  [SMALL_STATE(408)] = 2714,
  [SMALL_STATE(409)] = 2796,
  [SMALL_STATE(410)] = 2864,
  [SMALL_STATE(411)] = 2926,
  [SMALL_STATE(412)] = 3022,
  [SMALL_STATE(413)] = 3086,
  [SMALL_STATE(414)] = 3156,
  [SMALL_STATE(415)] = 3216,
  [SMALL_STATE(416)] = 3278,
  [SMALL_STATE(417)] = 3352,
  [SMALL_STATE(418)] = 3408,
  [SMALL_STATE(419)] = 3488,
  [SMALL_STATE(420)] = 3550,
  [SMALL_STATE(421)] = 3610,
  [SMALL_STATE(422)] = 3666,
  [SMALL_STATE(423)] = 3722,
  [SMALL_STATE(424)] = 3806,
  [SMALL_STATE(425)] = 3862,
  [SMALL_STATE(426)] = 3917,
  [SMALL_STATE(427)] = 3972,
  [SMALL_STATE(428)] = 4027,
  [SMALL_STATE(429)] = 4082,
  [SMALL_STATE(430)] = 4137,
  [SMALL_STATE(431)] = 4192,
  [SMALL_STATE(432)] = 4247,
  [SMALL_STATE(433)] = 4302,
  [SMALL_STATE(434)] = 4357,
  [SMALL_STATE(435)] = 4412,
  [SMALL_STATE(436)] = 4467,
  [SMALL_STATE(437)] = 4522,
  [SMALL_STATE(438)] = 4577,
  [SMALL_STATE(439)] = 4632,
  [SMALL_STATE(440)] = 4687,
  [SMALL_STATE(441)] = 4742,
  [SMALL_STATE(442)] = 4797,
  [SMALL_STATE(443)] = 4852,
  [SMALL_STATE(444)] = 4907,
  [SMALL_STATE(445)] = 4962,
  [SMALL_STATE(446)] = 5017,
  [SMALL_STATE(447)] = 5072,
  [SMALL_STATE(448)] = 5127,
  [SMALL_STATE(449)] = 5182,
  [SMALL_STATE(450)] = 5237,
  [SMALL_STATE(451)] = 5292,
  [SMALL_STATE(452)] = 5347,
  [SMALL_STATE(453)] = 5402,
  [SMALL_STATE(454)] = 5457,
  [SMALL_STATE(455)] = 5512,
  [SMALL_STATE(456)] = 5567,
  [SMALL_STATE(457)] = 5622,
  [SMALL_STATE(458)] = 5683,
  [SMALL_STATE(459)] = 5743,
  [SMALL_STATE(460)] = 5799,
  [SMALL_STATE(461)] = 5851,
  [SMALL_STATE(462)] = 5944,
  [SMALL_STATE(463)] = 6037,
  [SMALL_STATE(464)] = 6130,
  [SMALL_STATE(465)] = 6223,
  [SMALL_STATE(466)] = 6313,
  [SMALL_STATE(467)] = 6403,
  [SMALL_STATE(468)] = 6493,
  [SMALL_STATE(469)] = 6581,
  [SMALL_STATE(470)] = 6671,
  [SMALL_STATE(471)] = 6761,
  [SMALL_STATE(472)] = 6849,
  [SMALL_STATE(473)] = 6939,
  [SMALL_STATE(474)] = 6989,
  [SMALL_STATE(475)] = 7079,
  [SMALL_STATE(476)] = 7169,
  [SMALL_STATE(477)] = 7259,
  [SMALL_STATE(478)] = 7349,
  [SMALL_STATE(479)] = 7439,
  [SMALL_STATE(480)] = 7529,
  [SMALL_STATE(481)] = 7617,
  [SMALL_STATE(482)] = 7705,
  [SMALL_STATE(483)] = 7793,
  [SMALL_STATE(484)] = 7881,
  [SMALL_STATE(485)] = 7932,
  [SMALL_STATE(486)] = 8019,
  [SMALL_STATE(487)] = 8106,
  [SMALL_STATE(488)] = 8193,
  [SMALL_STATE(489)] = 8244,
  [SMALL_STATE(490)] = 8295,
  [SMALL_STATE(491)] = 8346,
  [SMALL_STATE(492)] = 8433,
  [SMALL_STATE(493)] = 8520,
  [SMALL_STATE(494)] = 8607,
  [SMALL_STATE(495)] = 8694,
  [SMALL_STATE(496)] = 8781,
  [SMALL_STATE(497)] = 8868,
  [SMALL_STATE(498)] = 8955,
  [SMALL_STATE(499)] = 9042,
  [SMALL_STATE(500)] = 9129,
  [SMALL_STATE(501)] = 9177,
  [SMALL_STATE(502)] = 9261,
  [SMALL_STATE(503)] = 9309,
  [SMALL_STATE(504)] = 9393,
  [SMALL_STATE(505)] = 9441,
  [SMALL_STATE(506)] = 9486,
  [SMALL_STATE(507)] = 9531,
  [SMALL_STATE(508)] = 9596,
  [SMALL_STATE(509)] = 9648,
  [SMALL_STATE(510)] = 9700,
  [SMALL_STATE(511)] = 9752,
  [SMALL_STATE(512)] = 9804,
  [SMALL_STATE(513)] = 9853,
  [SMALL_STATE(514)] = 9902,
  [SMALL_STATE(515)] = 9943,
  [SMALL_STATE(516)] = 9984,
  [SMALL_STATE(517)] = 10015,
  [SMALL_STATE(518)] = 10042,
  [SMALL_STATE(519)] = 10068,
  [SMALL_STATE(520)] = 10092,
  [SMALL_STATE(521)] = 10116,
  [SMALL_STATE(522)] = 10140,
  [SMALL_STATE(523)] = 10167,
  [SMALL_STATE(524)] = 10203,
  [SMALL_STATE(525)] = 10236,
  [SMALL_STATE(526)] = 10257,
  [SMALL_STATE(527)] = 10290,
  [SMALL_STATE(528)] = 10322,
  [SMALL_STATE(529)] = 10352,
  [SMALL_STATE(530)] = 10382,
  [SMALL_STATE(531)] = 10412,
  [SMALL_STATE(532)] = 10431,
  [SMALL_STATE(533)] = 10452,
  [SMALL_STATE(534)] = 10486,
  [SMALL_STATE(535)] = 10518,
  [SMALL_STATE(536)] = 10543,
  [SMALL_STATE(537)] = 10568,
  [SMALL_STATE(538)] = 10585,
  [SMALL_STATE(539)] = 10600,
  [SMALL_STATE(540)] = 10615,
  [SMALL_STATE(541)] = 10630,
  [SMALL_STATE(542)] = 10656,
  [SMALL_STATE(543)] = 10678,
  [SMALL_STATE(544)] = 10704,
  [SMALL_STATE(545)] = 10730,
  [SMALL_STATE(546)] = 10752,
  [SMALL_STATE(547)] = 10774,
  [SMALL_STATE(548)] = 10795,
  [SMALL_STATE(549)] = 10814,
  [SMALL_STATE(550)] = 10837,
  [SMALL_STATE(551)] = 10858,
  [SMALL_STATE(552)] = 10879,
  [SMALL_STATE(553)] = 10902,
  [SMALL_STATE(554)] = 10923,
  [SMALL_STATE(555)] = 10939,
  [SMALL_STATE(556)] = 10961,
  [SMALL_STATE(557)] = 10979,
  [SMALL_STATE(558)] = 10997,
  [SMALL_STATE(559)] = 11016,
  [SMALL_STATE(560)] = 11035,
  [SMALL_STATE(561)] = 11052,
  [SMALL_STATE(562)] = 11071,
  [SMALL_STATE(563)] = 11088,
  [SMALL_STATE(564)] = 11105,
  [SMALL_STATE(565)] = 11122,
  [SMALL_STATE(566)] = 11137,
  [SMALL_STATE(567)] = 11154,
  [SMALL_STATE(568)] = 11169,
  [SMALL_STATE(569)] = 11186,
  [SMALL_STATE(570)] = 11203,
  [SMALL_STATE(571)] = 11222,
  [SMALL_STATE(572)] = 11239,
  [SMALL_STATE(573)] = 11254,
  [SMALL_STATE(574)] = 11271,
  [SMALL_STATE(575)] = 11288,
  [SMALL_STATE(576)] = 11305,
  [SMALL_STATE(577)] = 11322,
  [SMALL_STATE(578)] = 11339,
  [SMALL_STATE(579)] = 11354,
  [SMALL_STATE(580)] = 11370,
  [SMALL_STATE(581)] = 11384,
  [SMALL_STATE(582)] = 11400,
  [SMALL_STATE(583)] = 11410,
  [SMALL_STATE(584)] = 11426,
  [SMALL_STATE(585)] = 11442,
  [SMALL_STATE(586)] = 11458,
  [SMALL_STATE(587)] = 11474,
  [SMALL_STATE(588)] = 11490,
  [SMALL_STATE(589)] = 11506,
  [SMALL_STATE(590)] = 11522,
  [SMALL_STATE(591)] = 11538,
  [SMALL_STATE(592)] = 11554,
  [SMALL_STATE(593)] = 11570,
  [SMALL_STATE(594)] = 11586,
  [SMALL_STATE(595)] = 11602,
  [SMALL_STATE(596)] = 11618,
  [SMALL_STATE(597)] = 11628,
  [SMALL_STATE(598)] = 11638,
  [SMALL_STATE(599)] = 11654,
  [SMALL_STATE(600)] = 11670,
  [SMALL_STATE(601)] = 11680,
  [SMALL_STATE(602)] = 11696,
  [SMALL_STATE(603)] = 11712,
  [SMALL_STATE(604)] = 11728,
  [SMALL_STATE(605)] = 11744,
  [SMALL_STATE(606)] = 11760,
  [SMALL_STATE(607)] = 11776,
  [SMALL_STATE(608)] = 11792,
  [SMALL_STATE(609)] = 11808,
  [SMALL_STATE(610)] = 11824,
  [SMALL_STATE(611)] = 11840,
  [SMALL_STATE(612)] = 11856,
  [SMALL_STATE(613)] = 11872,
  [SMALL_STATE(614)] = 11888,
  [SMALL_STATE(615)] = 11904,
  [SMALL_STATE(616)] = 11920,
  [SMALL_STATE(617)] = 11936,
  [SMALL_STATE(618)] = 11950,
  [SMALL_STATE(619)] = 11964,
  [SMALL_STATE(620)] = 11980,
  [SMALL_STATE(621)] = 11996,
  [SMALL_STATE(622)] = 12010,
  [SMALL_STATE(623)] = 12026,
  [SMALL_STATE(624)] = 12042,
  [SMALL_STATE(625)] = 12058,
  [SMALL_STATE(626)] = 12074,
  [SMALL_STATE(627)] = 12090,
  [SMALL_STATE(628)] = 12106,
  [SMALL_STATE(629)] = 12122,
  [SMALL_STATE(630)] = 12138,
  [SMALL_STATE(631)] = 12152,
  [SMALL_STATE(632)] = 12166,
  [SMALL_STATE(633)] = 12182,
  [SMALL_STATE(634)] = 12198,
  [SMALL_STATE(635)] = 12208,
  [SMALL_STATE(636)] = 12218,
  [SMALL_STATE(637)] = 12234,
  [SMALL_STATE(638)] = 12250,
  [SMALL_STATE(639)] = 12264,
  [SMALL_STATE(640)] = 12280,
  [SMALL_STATE(641)] = 12296,
  [SMALL_STATE(642)] = 12310,
  [SMALL_STATE(643)] = 12326,
  [SMALL_STATE(644)] = 12339,
  [SMALL_STATE(645)] = 12352,
  [SMALL_STATE(646)] = 12365,
  [SMALL_STATE(647)] = 12378,
  [SMALL_STATE(648)] = 12389,
  [SMALL_STATE(649)] = 12402,
  [SMALL_STATE(650)] = 12415,
  [SMALL_STATE(651)] = 12426,
  [SMALL_STATE(652)] = 12439,
  [SMALL_STATE(653)] = 12452,
  [SMALL_STATE(654)] = 12465,
  [SMALL_STATE(655)] = 12478,
  [SMALL_STATE(656)] = 12491,
  [SMALL_STATE(657)] = 12504,
  [SMALL_STATE(658)] = 12517,
  [SMALL_STATE(659)] = 12530,
  [SMALL_STATE(660)] = 12543,
  [SMALL_STATE(661)] = 12556,
  [SMALL_STATE(662)] = 12569,
  [SMALL_STATE(663)] = 12582,
  [SMALL_STATE(664)] = 12595,
  [SMALL_STATE(665)] = 12608,
  [SMALL_STATE(666)] = 12621,
  [SMALL_STATE(667)] = 12634,
  [SMALL_STATE(668)] = 12647,
  [SMALL_STATE(669)] = 12660,
  [SMALL_STATE(670)] = 12673,
  [SMALL_STATE(671)] = 12686,
  [SMALL_STATE(672)] = 12699,
  [SMALL_STATE(673)] = 12712,
  [SMALL_STATE(674)] = 12725,
  [SMALL_STATE(675)] = 12738,
  [SMALL_STATE(676)] = 12751,
  [SMALL_STATE(677)] = 12764,
  [SMALL_STATE(678)] = 12777,
  [SMALL_STATE(679)] = 12790,
  [SMALL_STATE(680)] = 12803,
  [SMALL_STATE(681)] = 12816,
  [SMALL_STATE(682)] = 12829,
  [SMALL_STATE(683)] = 12842,
  [SMALL_STATE(684)] = 12855,
  [SMALL_STATE(685)] = 12866,
  [SMALL_STATE(686)] = 12879,
  [SMALL_STATE(687)] = 12892,
  [SMALL_STATE(688)] = 12905,
  [SMALL_STATE(689)] = 12918,
  [SMALL_STATE(690)] = 12931,
  [SMALL_STATE(691)] = 12944,
  [SMALL_STATE(692)] = 12957,
  [SMALL_STATE(693)] = 12970,
  [SMALL_STATE(694)] = 12983,
  [SMALL_STATE(695)] = 12996,
  [SMALL_STATE(696)] = 13009,
  [SMALL_STATE(697)] = 13022,
  [SMALL_STATE(698)] = 13033,
  [SMALL_STATE(699)] = 13046,
  [SMALL_STATE(700)] = 13059,
  [SMALL_STATE(701)] = 13072,
  [SMALL_STATE(702)] = 13085,
  [SMALL_STATE(703)] = 13098,
  [SMALL_STATE(704)] = 13111,
  [SMALL_STATE(705)] = 13124,
  [SMALL_STATE(706)] = 13137,
  [SMALL_STATE(707)] = 13150,
  [SMALL_STATE(708)] = 13163,
  [SMALL_STATE(709)] = 13176,
  [SMALL_STATE(710)] = 13189,
  [SMALL_STATE(711)] = 13202,
  [SMALL_STATE(712)] = 13215,
  [SMALL_STATE(713)] = 13228,
  [SMALL_STATE(714)] = 13241,
  [SMALL_STATE(715)] = 13254,
  [SMALL_STATE(716)] = 13267,
  [SMALL_STATE(717)] = 13280,
  [SMALL_STATE(718)] = 13293,
  [SMALL_STATE(719)] = 13306,
  [SMALL_STATE(720)] = 13319,
  [SMALL_STATE(721)] = 13332,
  [SMALL_STATE(722)] = 13343,
  [SMALL_STATE(723)] = 13356,
  [SMALL_STATE(724)] = 13369,
  [SMALL_STATE(725)] = 13382,
  [SMALL_STATE(726)] = 13395,
  [SMALL_STATE(727)] = 13408,
  [SMALL_STATE(728)] = 13421,
  [SMALL_STATE(729)] = 13434,
  [SMALL_STATE(730)] = 13447,
  [SMALL_STATE(731)] = 13458,
  [SMALL_STATE(732)] = 13471,
  [SMALL_STATE(733)] = 13484,
  [SMALL_STATE(734)] = 13497,
  [SMALL_STATE(735)] = 13510,
  [SMALL_STATE(736)] = 13523,
  [SMALL_STATE(737)] = 13536,
  [SMALL_STATE(738)] = 13549,
  [SMALL_STATE(739)] = 13562,
  [SMALL_STATE(740)] = 13575,
  [SMALL_STATE(741)] = 13588,
  [SMALL_STATE(742)] = 13601,
  [SMALL_STATE(743)] = 13614,
  [SMALL_STATE(744)] = 13627,
  [SMALL_STATE(745)] = 13640,
  [SMALL_STATE(746)] = 13653,
  [SMALL_STATE(747)] = 13666,
  [SMALL_STATE(748)] = 13679,
  [SMALL_STATE(749)] = 13692,
  [SMALL_STATE(750)] = 13705,
  [SMALL_STATE(751)] = 13718,
  [SMALL_STATE(752)] = 13731,
  [SMALL_STATE(753)] = 13744,
  [SMALL_STATE(754)] = 13757,
  [SMALL_STATE(755)] = 13770,
  [SMALL_STATE(756)] = 13783,
  [SMALL_STATE(757)] = 13796,
  [SMALL_STATE(758)] = 13809,
  [SMALL_STATE(759)] = 13822,
  [SMALL_STATE(760)] = 13835,
  [SMALL_STATE(761)] = 13848,
  [SMALL_STATE(762)] = 13861,
  [SMALL_STATE(763)] = 13872,
  [SMALL_STATE(764)] = 13885,
  [SMALL_STATE(765)] = 13898,
  [SMALL_STATE(766)] = 13908,
  [SMALL_STATE(767)] = 13916,
  [SMALL_STATE(768)] = 13926,
  [SMALL_STATE(769)] = 13936,
  [SMALL_STATE(770)] = 13946,
  [SMALL_STATE(771)] = 13954,
  [SMALL_STATE(772)] = 13964,
  [SMALL_STATE(773)] = 13974,
  [SMALL_STATE(774)] = 13984,
  [SMALL_STATE(775)] = 13992,
  [SMALL_STATE(776)] = 14002,
  [SMALL_STATE(777)] = 14010,
  [SMALL_STATE(778)] = 14018,
  [SMALL_STATE(779)] = 14026,
  [SMALL_STATE(780)] = 14036,
  [SMALL_STATE(781)] = 14044,
  [SMALL_STATE(782)] = 14052,
  [SMALL_STATE(783)] = 14060,
  [SMALL_STATE(784)] = 14070,
  [SMALL_STATE(785)] = 14080,
  [SMALL_STATE(786)] = 14090,
  [SMALL_STATE(787)] = 14100,
  [SMALL_STATE(788)] = 14110,
  [SMALL_STATE(789)] = 14120,
  [SMALL_STATE(790)] = 14130,
  [SMALL_STATE(791)] = 14140,
  [SMALL_STATE(792)] = 14150,
  [SMALL_STATE(793)] = 14160,
  [SMALL_STATE(794)] = 14170,
  [SMALL_STATE(795)] = 14178,
  [SMALL_STATE(796)] = 14188,
  [SMALL_STATE(797)] = 14196,
  [SMALL_STATE(798)] = 14206,
  [SMALL_STATE(799)] = 14216,
  [SMALL_STATE(800)] = 14226,
  [SMALL_STATE(801)] = 14236,
  [SMALL_STATE(802)] = 14246,
  [SMALL_STATE(803)] = 14256,
  [SMALL_STATE(804)] = 14264,
  [SMALL_STATE(805)] = 14274,
  [SMALL_STATE(806)] = 14284,
  [SMALL_STATE(807)] = 14294,
  [SMALL_STATE(808)] = 14302,
  [SMALL_STATE(809)] = 14310,
  [SMALL_STATE(810)] = 14320,
  [SMALL_STATE(811)] = 14330,
  [SMALL_STATE(812)] = 14338,
  [SMALL_STATE(813)] = 14348,
  [SMALL_STATE(814)] = 14358,
  [SMALL_STATE(815)] = 14366,
  [SMALL_STATE(816)] = 14376,
  [SMALL_STATE(817)] = 14386,
  [SMALL_STATE(818)] = 14396,
  [SMALL_STATE(819)] = 14406,
  [SMALL_STATE(820)] = 14414,
  [SMALL_STATE(821)] = 14424,
  [SMALL_STATE(822)] = 14434,
  [SMALL_STATE(823)] = 14442,
  [SMALL_STATE(824)] = 14452,
  [SMALL_STATE(825)] = 14460,
  [SMALL_STATE(826)] = 14470,
  [SMALL_STATE(827)] = 14480,
  [SMALL_STATE(828)] = 14490,
  [SMALL_STATE(829)] = 14498,
  [SMALL_STATE(830)] = 14508,
  [SMALL_STATE(831)] = 14516,
  [SMALL_STATE(832)] = 14526,
  [SMALL_STATE(833)] = 14536,
  [SMALL_STATE(834)] = 14546,
  [SMALL_STATE(835)] = 14554,
  [SMALL_STATE(836)] = 14562,
  [SMALL_STATE(837)] = 14572,
  [SMALL_STATE(838)] = 14580,
  [SMALL_STATE(839)] = 14590,
  [SMALL_STATE(840)] = 14600,
  [SMALL_STATE(841)] = 14610,
  [SMALL_STATE(842)] = 14618,
  [SMALL_STATE(843)] = 14628,
  [SMALL_STATE(844)] = 14638,
  [SMALL_STATE(845)] = 14648,
  [SMALL_STATE(846)] = 14656,
  [SMALL_STATE(847)] = 14666,
  [SMALL_STATE(848)] = 14676,
  [SMALL_STATE(849)] = 14686,
  [SMALL_STATE(850)] = 14694,
  [SMALL_STATE(851)] = 14704,
  [SMALL_STATE(852)] = 14712,
  [SMALL_STATE(853)] = 14722,
  [SMALL_STATE(854)] = 14732,
  [SMALL_STATE(855)] = 14742,
  [SMALL_STATE(856)] = 14750,
  [SMALL_STATE(857)] = 14760,
  [SMALL_STATE(858)] = 14770,
  [SMALL_STATE(859)] = 14780,
  [SMALL_STATE(860)] = 14788,
  [SMALL_STATE(861)] = 14796,
  [SMALL_STATE(862)] = 14806,
  [SMALL_STATE(863)] = 14816,
  [SMALL_STATE(864)] = 14826,
  [SMALL_STATE(865)] = 14836,
  [SMALL_STATE(866)] = 14846,
  [SMALL_STATE(867)] = 14856,
  [SMALL_STATE(868)] = 14866,
  [SMALL_STATE(869)] = 14876,
  [SMALL_STATE(870)] = 14886,
  [SMALL_STATE(871)] = 14896,
  [SMALL_STATE(872)] = 14906,
  [SMALL_STATE(873)] = 14914,
  [SMALL_STATE(874)] = 14924,
  [SMALL_STATE(875)] = 14934,
  [SMALL_STATE(876)] = 14944,
  [SMALL_STATE(877)] = 14954,
  [SMALL_STATE(878)] = 14964,
  [SMALL_STATE(879)] = 14974,
  [SMALL_STATE(880)] = 14984,
  [SMALL_STATE(881)] = 14994,
  [SMALL_STATE(882)] = 15002,
  [SMALL_STATE(883)] = 15012,
  [SMALL_STATE(884)] = 15022,
  [SMALL_STATE(885)] = 15032,
  [SMALL_STATE(886)] = 15042,
  [SMALL_STATE(887)] = 15052,
  [SMALL_STATE(888)] = 15060,
  [SMALL_STATE(889)] = 15070,
  [SMALL_STATE(890)] = 15077,
  [SMALL_STATE(891)] = 15084,
  [SMALL_STATE(892)] = 15091,
  [SMALL_STATE(893)] = 15098,
  [SMALL_STATE(894)] = 15105,
  [SMALL_STATE(895)] = 15112,
  [SMALL_STATE(896)] = 15119,
  [SMALL_STATE(897)] = 15126,
  [SMALL_STATE(898)] = 15133,
  [SMALL_STATE(899)] = 15140,
  [SMALL_STATE(900)] = 15147,
  [SMALL_STATE(901)] = 15154,
  [SMALL_STATE(902)] = 15161,
  [SMALL_STATE(903)] = 15168,
  [SMALL_STATE(904)] = 15175,
  [SMALL_STATE(905)] = 15182,
  [SMALL_STATE(906)] = 15189,
  [SMALL_STATE(907)] = 15196,
  [SMALL_STATE(908)] = 15203,
  [SMALL_STATE(909)] = 15210,
  [SMALL_STATE(910)] = 15217,
  [SMALL_STATE(911)] = 15224,
  [SMALL_STATE(912)] = 15231,
  [SMALL_STATE(913)] = 15238,
  [SMALL_STATE(914)] = 15245,
  [SMALL_STATE(915)] = 15252,
  [SMALL_STATE(916)] = 15259,
  [SMALL_STATE(917)] = 15266,
  [SMALL_STATE(918)] = 15273,
  [SMALL_STATE(919)] = 15280,
  [SMALL_STATE(920)] = 15287,
  [SMALL_STATE(921)] = 15294,
  [SMALL_STATE(922)] = 15301,
  [SMALL_STATE(923)] = 15308,
  [SMALL_STATE(924)] = 15315,
  [SMALL_STATE(925)] = 15322,
  [SMALL_STATE(926)] = 15329,
  [SMALL_STATE(927)] = 15336,
  [SMALL_STATE(928)] = 15343,
  [SMALL_STATE(929)] = 15350,
  [SMALL_STATE(930)] = 15357,
  [SMALL_STATE(931)] = 15364,
  [SMALL_STATE(932)] = 15371,
  [SMALL_STATE(933)] = 15378,
  [SMALL_STATE(934)] = 15385,
  [SMALL_STATE(935)] = 15392,
  [SMALL_STATE(936)] = 15399,
  [SMALL_STATE(937)] = 15406,
  [SMALL_STATE(938)] = 15413,
  [SMALL_STATE(939)] = 15420,
  [SMALL_STATE(940)] = 15427,
  [SMALL_STATE(941)] = 15434,
  [SMALL_STATE(942)] = 15441,
  [SMALL_STATE(943)] = 15448,
  [SMALL_STATE(944)] = 15455,
  [SMALL_STATE(945)] = 15462,
  [SMALL_STATE(946)] = 15469,
  [SMALL_STATE(947)] = 15476,
  [SMALL_STATE(948)] = 15483,
  [SMALL_STATE(949)] = 15490,
  [SMALL_STATE(950)] = 15497,
  [SMALL_STATE(951)] = 15504,
  [SMALL_STATE(952)] = 15511,
  [SMALL_STATE(953)] = 15518,
  [SMALL_STATE(954)] = 15525,
  [SMALL_STATE(955)] = 15532,
  [SMALL_STATE(956)] = 15539,
  [SMALL_STATE(957)] = 15546,
  [SMALL_STATE(958)] = 15553,
  [SMALL_STATE(959)] = 15560,
  [SMALL_STATE(960)] = 15567,
  [SMALL_STATE(961)] = 15574,
  [SMALL_STATE(962)] = 15581,
  [SMALL_STATE(963)] = 15588,
  [SMALL_STATE(964)] = 15595,
  [SMALL_STATE(965)] = 15602,
  [SMALL_STATE(966)] = 15609,
  [SMALL_STATE(967)] = 15616,
  [SMALL_STATE(968)] = 15623,
  [SMALL_STATE(969)] = 15630,
  [SMALL_STATE(970)] = 15637,
  [SMALL_STATE(971)] = 15644,
  [SMALL_STATE(972)] = 15651,
  [SMALL_STATE(973)] = 15658,
  [SMALL_STATE(974)] = 15665,
  [SMALL_STATE(975)] = 15672,
  [SMALL_STATE(976)] = 15679,
};

static const TSParseActionEntry ts_parse_actions[] = {
  [0] = {.entry = {.count = 0, .reusable = false}},
  [1] = {.entry = {.count = 1, .reusable = false}}, RECOVER(),
  [3] = {.entry = {.count = 1, .reusable = true}}, SHIFT_EXTRA(),
  [5] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 0, 0, 0),
  [7] = {.entry = {.count = 1, .reusable = false}}, SHIFT(506),
  [9] = {.entry = {.count = 1, .reusable = false}}, SHIFT(566),
  [11] = {.entry = {.count = 1, .reusable = false}}, SHIFT(533),
  [13] = {.entry = {.count = 1, .reusable = false}}, SHIFT(898),
  [15] = {.entry = {.count = 1, .reusable = false}}, SHIFT(930),
  [17] = {.entry = {.count = 1, .reusable = false}}, SHIFT(916),
  [19] = {.entry = {.count = 1, .reusable = false}}, SHIFT(929),
  [21] = {.entry = {.count = 1, .reusable = false}}, SHIFT(901),
  [23] = {.entry = {.count = 1, .reusable = false}}, SHIFT(936),
  [25] = {.entry = {.count = 1, .reusable = false}}, SHIFT(975),
  [27] = {.entry = {.count = 1, .reusable = false}}, SHIFT(915),
  [29] = {.entry = {.count = 1, .reusable = false}}, SHIFT(972),
  [31] = {.entry = {.count = 1, .reusable = false}}, SHIFT(589),
  [33] = {.entry = {.count = 1, .reusable = false}}, SHIFT(648),
  [35] = {.entry = {.count = 1, .reusable = false}}, SHIFT(370),
  [37] = {.entry = {.count = 1, .reusable = false}}, SHIFT(368),
  [39] = {.entry = {.count = 1, .reusable = false}}, SHIFT(927),
  [41] = {.entry = {.count = 1, .reusable = false}}, SHIFT(458),
  [43] = {.entry = {.count = 1, .reusable = false}}, SHIFT(87),
  [45] = {.entry = {.count = 1, .reusable = true}}, SHIFT(87),
  [47] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4),
  [49] = {.entry = {.count = 1, .reusable = true}}, SHIFT(473),
  [51] = {.entry = {.count = 1, .reusable = false}}, SHIFT(923),
  [53] = {.entry = {.count = 1, .reusable = true}}, SHIFT(26),
  [55] = {.entry = {.count = 1, .reusable = false}}, SHIFT(906),
  [57] = {.entry = {.count = 1, .reusable = false}}, SHIFT(636),
  [59] = {.entry = {.count = 1, .reusable = false}}, SHIFT(870),
  [61] = {.entry = {.count = 1, .reusable = false}}, SHIFT(765),
  [63] = {.entry = {.count = 1, .reusable = false}}, SHIFT(429),
  [65] = {.entry = {.count = 1, .reusable = false}}, SHIFT(430),
  [67] = {.entry = {.count = 1, .reusable = false}}, SHIFT(888),
  [69] = {.entry = {.count = 1, .reusable = true}}, SHIFT(563),
  [71] = {.entry = {.count = 1, .reusable = true}}, SHIFT(564),
  [73] = {.entry = {.count = 1, .reusable = false}}, SHIFT(926),
  [75] = {.entry = {.count = 1, .reusable = false}}, SHIFT(869),
  [77] = {.entry = {.count = 1, .reusable = false}}, SHIFT(39),
  [79] = {.entry = {.count = 1, .reusable = false}}, SHIFT(33),
  [81] = {.entry = {.count = 1, .reusable = false}}, SHIFT(935),
  [83] = {.entry = {.count = 1, .reusable = false}}, SHIFT(460),
  [85] = {.entry = {.count = 1, .reusable = false}}, SHIFT(938),
  [87] = {.entry = {.count = 1, .reusable = false}}, SHIFT(12),
  [89] = {.entry = {.count = 1, .reusable = false}}, SHIFT(72),
  [91] = {.entry = {.count = 1, .reusable = false}}, SHIFT(73),
  [93] = {.entry = {.count = 1, .reusable = false}}, SHIFT(831),
  [95] = {.entry = {.count = 1, .reusable = false}}, SHIFT(207),
  [97] = {.entry = {.count = 1, .reusable = true}}, SHIFT(46),
  [99] = {.entry = {.count = 1, .reusable = true}}, SHIFT(58),
  [101] = {.entry = {.count = 1, .reusable = false}}, SHIFT(386),
  [103] = {.entry = {.count = 1, .reusable = true}}, SHIFT(386),
  [105] = {.entry = {.count = 1, .reusable = false}}, SHIFT(873),
  [107] = {.entry = {.count = 1, .reusable = false}}, SHIFT(394),
  [109] = {.entry = {.count = 1, .reusable = true}}, SHIFT(201),
  [111] = {.entry = {.count = 1, .reusable = true}}, SHIFT(103),
  [113] = {.entry = {.count = 1, .reusable = true}}, SHIFT(98),
  [115] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(394),
  [118] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(87),
  [121] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_block_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(87),
  [124] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_block_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(4),
  [127] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_block_statement_repeat1, 2, 0, 0),
  [129] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(923),
  [132] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_block_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(26),
  [135] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(906),
  [138] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(636),
  [141] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(870),
  [144] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(765),
  [147] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(429),
  [150] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(430),
  [153] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(888),
  [156] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_block_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(563),
  [159] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_block_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(564),
  [162] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(926),
  [165] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(869),
  [168] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(370),
  [171] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(368),
  [174] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(39),
  [177] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(33),
  [180] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(935),
  [183] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(460),
  [186] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(938),
  [189] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(12),
  [192] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(72),
  [195] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(73),
  [198] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(831),
  [201] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(207),
  [204] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_block_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(46),
  [207] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_block_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(58),
  [210] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(927),
  [213] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(386),
  [216] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_block_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(386),
  [219] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(873),
  [222] = {.entry = {.count = 1, .reusable = true}}, SHIFT(194),
  [224] = {.entry = {.count = 1, .reusable = true}}, SHIFT(104),
  [226] = {.entry = {.count = 1, .reusable = true}}, SHIFT(226),
  [228] = {.entry = {.count = 1, .reusable = true}}, SHIFT(236),
  [230] = {.entry = {.count = 1, .reusable = false}}, SHIFT(973),
  [232] = {.entry = {.count = 1, .reusable = false}}, SHIFT(826),
  [234] = {.entry = {.count = 1, .reusable = false}}, SHIFT(827),
  [236] = {.entry = {.count = 1, .reusable = false}}, SHIFT(968),
  [238] = {.entry = {.count = 1, .reusable = false}}, SHIFT(40),
  [240] = {.entry = {.count = 1, .reusable = false}}, SHIFT(34),
  [242] = {.entry = {.count = 1, .reusable = false}}, SHIFT(969),
  [244] = {.entry = {.count = 1, .reusable = false}}, SHIFT(23),
  [246] = {.entry = {.count = 1, .reusable = false}}, SHIFT(81),
  [248] = {.entry = {.count = 1, .reusable = true}}, SHIFT(35),
  [250] = {.entry = {.count = 1, .reusable = true}}, SHIFT(36),
  [252] = {.entry = {.count = 1, .reusable = true}}, SHIFT(27),
  [254] = {.entry = {.count = 1, .reusable = true}}, SHIFT(30),
  [256] = {.entry = {.count = 1, .reusable = true}}, SHIFT(504),
  [258] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_variable_declaration_tuple_repeat1, 1, 0, 0), REDUCE(aux_sym_tuple_expression_repeat1, 1, 0, 0),
  [261] = {.entry = {.count = 1, .reusable = true}}, SHIFT(500),
  [263] = {.entry = {.count = 1, .reusable = true}}, SHIFT(759),
  [265] = {.entry = {.count = 1, .reusable = true}}, SHIFT(38),
  [267] = {.entry = {.count = 1, .reusable = true}}, SHIFT(502),
  [269] = {.entry = {.count = 1, .reusable = true}}, SHIFT(389),
  [271] = {.entry = {.count = 1, .reusable = true}}, SHIFT(440),
  [273] = {.entry = {.count = 1, .reusable = true}}, SHIFT(390),
  [275] = {.entry = {.count = 1, .reusable = true}}, SHIFT(388),
  [277] = {.entry = {.count = 1, .reusable = true}}, SHIFT(28),
  [279] = {.entry = {.count = 1, .reusable = true}}, SHIFT(123),
  [281] = {.entry = {.count = 1, .reusable = true}}, SHIFT(45),
  [283] = {.entry = {.count = 1, .reusable = true}}, SHIFT(50),
  [285] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_tuple_expression_repeat1, 1, 0, 0),
  [287] = {.entry = {.count = 1, .reusable = true}}, SHIFT(431),
  [289] = {.entry = {.count = 1, .reusable = true}}, SHIFT(124),
  [291] = {.entry = {.count = 1, .reusable = true}}, SHIFT(52),
  [293] = {.entry = {.count = 1, .reusable = true}}, SHIFT(450),
  [295] = {.entry = {.count = 1, .reusable = true}}, SHIFT(447),
  [297] = {.entry = {.count = 1, .reusable = true}}, SHIFT(449),
  [299] = {.entry = {.count = 1, .reusable = true}}, SHIFT(19),
  [301] = {.entry = {.count = 1, .reusable = true}}, SHIFT(426),
  [303] = {.entry = {.count = 1, .reusable = true}}, SHIFT(382),
  [305] = {.entry = {.count = 1, .reusable = true}}, SHIFT(448),
  [307] = {.entry = {.count = 1, .reusable = true}}, SHIFT(435),
  [309] = {.entry = {.count = 1, .reusable = true}}, SHIFT(22),
  [311] = {.entry = {.count = 1, .reusable = true}}, SHIFT(452),
  [313] = {.entry = {.count = 1, .reusable = true}}, SHIFT(455),
  [315] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 1, 0, 0),
  [317] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0),
  [319] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(506),
  [322] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(566),
  [325] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(533),
  [328] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(898),
  [331] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(930),
  [334] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(916),
  [337] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(929),
  [340] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(901),
  [343] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(936),
  [346] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(975),
  [349] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(915),
  [352] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(972),
  [355] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(589),
  [358] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(648),
  [361] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(370),
  [364] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(368),
  [367] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(927),
  [370] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try_statement, 6, 0, 83),
  [372] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try_statement, 6, 0, 83),
  [374] = {.entry = {.count = 1, .reusable = false}}, SHIFT(555),
  [376] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try_statement, 4, 0, 70),
  [378] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try_statement, 4, 0, 70),
  [380] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_try_statement_repeat1, 2, 0, 0),
  [382] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_try_statement_repeat1, 2, 0, 0),
  [384] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_try_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(555),
  [387] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_statement, 2, 0, 0),
  [389] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_statement, 2, 0, 0),
  [391] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_variable_declaration_statement, 4, 0, 71),
  [393] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variable_declaration_statement, 4, 0, 71),
  [395] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_variable_declaration_statement, 2, 0, 0),
  [397] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variable_declaration_statement, 2, 0, 0),
  [399] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_catch_clause, 2, 0, 79),
  [401] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_catch_clause, 2, 0, 79),
  [403] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_contract_body_repeat1, 2, 0, 0), SHIFT_REPEAT(506),
  [406] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_contract_body_repeat1, 2, 0, 0),
  [408] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_contract_body_repeat1, 2, 0, 0), SHIFT_REPEAT(961),
  [411] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_contract_body_repeat1, 2, 0, 0), SHIFT_REPEAT(962),
  [414] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_contract_body_repeat1, 2, 0, 0), SHIFT_REPEAT(945),
  [417] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_contract_body_repeat1, 2, 0, 0), SHIFT_REPEAT(946),
  [420] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_contract_body_repeat1, 2, 0, 0), SHIFT_REPEAT(947),
  [423] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_contract_body_repeat1, 2, 0, 0), SHIFT_REPEAT(640),
  [426] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_contract_body_repeat1, 2, 0, 0), SHIFT_REPEAT(725),
  [429] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_contract_body_repeat1, 2, 0, 0), SHIFT_REPEAT(370),
  [432] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_contract_body_repeat1, 2, 0, 0), SHIFT_REPEAT(368),
  [435] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_contract_body_repeat1, 2, 0, 0), SHIFT_REPEAT(940),
  [438] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_contract_body_repeat1, 2, 0, 0), SHIFT_REPEAT(843),
  [441] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_contract_body_repeat1, 2, 0, 0), SHIFT_REPEAT(850),
  [444] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_contract_body_repeat1, 2, 0, 0), SHIFT_REPEAT(927),
  [447] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block_statement, 3, 0, 0),
  [449] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block_statement, 3, 0, 0),
  [451] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_catch_clause, 3, 0, 45),
  [453] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_catch_clause, 3, 0, 45),
  [455] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_catch_clause, 4, 0, 54),
  [457] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_catch_clause, 4, 0, 54),
  [459] = {.entry = {.count = 1, .reusable = true}}, SHIFT(196),
  [461] = {.entry = {.count = 1, .reusable = false}}, SHIFT(961),
  [463] = {.entry = {.count = 1, .reusable = false}}, SHIFT(962),
  [465] = {.entry = {.count = 1, .reusable = false}}, SHIFT(945),
  [467] = {.entry = {.count = 1, .reusable = false}}, SHIFT(946),
  [469] = {.entry = {.count = 1, .reusable = false}}, SHIFT(947),
  [471] = {.entry = {.count = 1, .reusable = false}}, SHIFT(640),
  [473] = {.entry = {.count = 1, .reusable = false}}, SHIFT(725),
  [475] = {.entry = {.count = 1, .reusable = false}}, SHIFT(940),
  [477] = {.entry = {.count = 1, .reusable = false}}, SHIFT(843),
  [479] = {.entry = {.count = 1, .reusable = false}}, SHIFT(850),
  [481] = {.entry = {.count = 1, .reusable = true}}, SHIFT(186),
  [483] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block_statement, 2, 0, 0),
  [485] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block_statement, 2, 0, 0),
  [487] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block_statement, 4, 0, 0),
  [489] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block_statement, 4, 0, 0),
  [491] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_revert_statement, 4, 0, 69),
  [493] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_revert_statement, 4, 0, 69),
  [495] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_revert_statement, 3, 0, 58),
  [497] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_revert_statement, 3, 0, 58),
  [499] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_assembly_statement, 5, 0, 0),
  [501] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assembly_statement, 5, 0, 0),
  [503] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 7, 0, 84),
  [505] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 7, 0, 84),
  [507] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 7, 0, 87),
  [509] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 7, 0, 87),
  [511] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_do_while_statement, 7, 0, 88),
  [513] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_do_while_statement, 7, 0, 88),
  [515] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 5, 0, 78),
  [517] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 5, 0, 78),
  [519] = {.entry = {.count = 1, .reusable = false}}, SHIFT(16),
  [521] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 6, 0, 80),
  [523] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 6, 0, 80),
  [525] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_assembly_statement, 6, 0, 0),
  [527] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assembly_statement, 6, 0, 0),
  [529] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_assembly_statement, 4, 0, 0),
  [531] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assembly_statement, 4, 0, 0),
  [533] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_emit_statement, 4, 0, 23),
  [535] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_emit_statement, 4, 0, 23),
  [537] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_return_statement, 3, 0, 0),
  [539] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_statement, 3, 0, 0),
  [541] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_break_statement, 2, 0, 0),
  [543] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_break_statement, 2, 0, 0),
  [545] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_revert_statement, 3, 0, 57),
  [547] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_revert_statement, 3, 0, 57),
  [549] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_continue_statement, 2, 0, 0),
  [551] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_continue_statement, 2, 0, 0),
  [553] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_statement, 1, 0, 0),
  [555] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_statement, 1, 0, 0),
  [557] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_assembly_statement, 3, 0, 0),
  [559] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assembly_statement, 3, 0, 0),
  [561] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_while_statement, 5, 0, 78),
  [563] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_while_statement, 5, 0, 78),
  [565] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_revert_statement, 2, 0, 0),
  [567] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_revert_statement, 2, 0, 0),
  [569] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_return_statement, 2, 0, 0),
  [571] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_statement, 2, 0, 0),
  [573] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_struct_body_repeat1, 2, 0, 0), SHIFT_REPEAT(506),
  [576] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_struct_body_repeat1, 2, 0, 0),
  [578] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_struct_body_repeat1, 2, 0, 0), SHIFT_REPEAT(869),
  [581] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_struct_body_repeat1, 2, 0, 0), SHIFT_REPEAT(370),
  [584] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_struct_body_repeat1, 2, 0, 0), SHIFT_REPEAT(368),
  [587] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_struct_body_repeat1, 2, 0, 0), SHIFT_REPEAT(927),
  [590] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_variable_declaration_tuple_repeat1, 1, 0, 0),
  [592] = {.entry = {.count = 1, .reusable = true}}, SHIFT(924),
  [594] = {.entry = {.count = 1, .reusable = true}}, SHIFT(905),
  [596] = {.entry = {.count = 1, .reusable = true}}, SHIFT(362),
  [598] = {.entry = {.count = 1, .reusable = true}}, SHIFT(204),
  [600] = {.entry = {.count = 1, .reusable = true}}, SHIFT(222),
  [602] = {.entry = {.count = 1, .reusable = true}}, SHIFT(778),
  [604] = {.entry = {.count = 1, .reusable = true}}, SHIFT(807),
  [606] = {.entry = {.count = 1, .reusable = true}}, SHIFT(365),
  [608] = {.entry = {.count = 1, .reusable = true}}, SHIFT(364),
  [610] = {.entry = {.count = 1, .reusable = true}}, SHIFT(377),
  [612] = {.entry = {.count = 1, .reusable = true}}, SHIFT(834),
  [614] = {.entry = {.count = 1, .reusable = true}}, SHIFT(849),
  [616] = {.entry = {.count = 1, .reusable = true}}, SHIFT(816),
  [618] = {.entry = {.count = 1, .reusable = true}}, SHIFT(833),
  [620] = {.entry = {.count = 1, .reusable = true}}, SHIFT(844),
  [622] = {.entry = {.count = 1, .reusable = true}}, SHIFT(371),
  [624] = {.entry = {.count = 1, .reusable = true}}, SHIFT(880),
  [626] = {.entry = {.count = 1, .reusable = true}}, SHIFT(792),
  [628] = {.entry = {.count = 1, .reusable = true}}, SHIFT(842),
  [630] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_body, 4, 0, 35),
  [632] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enum_body, 4, 0, 35),
  [634] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 4, 0, 22),
  [636] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 4, 0, 22),
  [638] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 4, 0, 23),
  [640] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 4, 0, 23),
  [642] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_library_declaration, 3, 0, 13),
  [644] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_library_declaration, 3, 0, 13),
  [646] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 5, 0, 38),
  [648] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 5, 0, 38),
  [650] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_error_declaration, 8, 0, 23),
  [652] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_error_declaration, 8, 0, 23),
  [654] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_using_directive, 8, 0, 67),
  [656] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_using_directive, 8, 0, 67),
  [658] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_using_directive, 8, 0, 56),
  [660] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_using_directive, 8, 0, 56),
  [662] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 5, 0, 39),
  [664] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 5, 0, 39),
  [666] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 5, 0, 40),
  [668] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 5, 0, 40),
  [670] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 5, 0, 23),
  [672] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 5, 0, 23),
  [674] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_declaration, 3, 0, 13),
  [676] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_declaration, 3, 0, 13),
  [678] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_declaration, 3, 0, 13),
  [680] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enum_declaration, 3, 0, 13),
  [682] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_event_definition, 5, 0, 23),
  [684] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_event_definition, 5, 0, 23),
  [686] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_using_directive, 9, 0, 67),
  [688] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_using_directive, 9, 0, 67),
  [690] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_using_directive, 9, 0, 76),
  [692] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_using_directive, 9, 0, 76),
  [694] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_error_declaration, 6, 0, 23),
  [696] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_error_declaration, 6, 0, 23),
  [698] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_body, 3, 0, 35),
  [700] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enum_body, 3, 0, 35),
  [702] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_body, 2, 0, 0),
  [704] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enum_body, 2, 0, 0),
  [706] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interface_declaration, 3, 0, 13),
  [708] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interface_declaration, 3, 0, 13),
  [710] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_error_declaration, 7, 0, 23),
  [712] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_error_declaration, 7, 0, 23),
  [714] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_using_directive, 6, 0, 36),
  [716] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_using_directive, 6, 0, 36),
  [718] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pragma_directive, 3, 0, 0),
  [720] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_pragma_directive, 3, 0, 0),
  [722] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_directive, 3, 0, 11),
  [724] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_import_directive, 3, 0, 11),
  [726] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_directive, 4, 0, 19),
  [728] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_import_directive, 4, 0, 19),
  [730] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_contract_declaration, 4, 0, 20),
  [732] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_contract_declaration, 4, 0, 20),
  [734] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_contract_body, 2, 0, 0),
  [736] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_contract_body, 2, 0, 0),
  [738] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_body, 5, 0, 35),
  [740] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enum_body, 5, 0, 35),
  [742] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_contract_declaration, 3, 0, 13),
  [744] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_contract_declaration, 3, 0, 13),
  [746] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_contract_declaration, 4, 0, 22),
  [748] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_contract_declaration, 4, 0, 22),
  [750] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interface_declaration, 4, 0, 22),
  [752] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interface_declaration, 4, 0, 22),
  [754] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_user_defined_type_definition, 5, 0, 23),
  [756] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_user_defined_type_definition, 5, 0, 23),
  [758] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_contract_declaration, 5, 0, 31),
  [760] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_contract_declaration, 5, 0, 31),
  [762] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_body, 3, 0, 0),
  [764] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_body, 3, 0, 0),
  [766] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_using_directive, 7, 0, 56),
  [768] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_using_directive, 7, 0, 56),
  [770] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_contract_body, 3, 0, 0),
  [772] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_contract_body, 3, 0, 0),
  [774] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_using_directive, 5, 0, 36),
  [776] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_using_directive, 5, 0, 36),
  [778] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 6, 0, 48),
  [780] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 6, 0, 48),
  [782] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_event_definition, 4, 0, 23),
  [784] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_event_definition, 4, 0, 23),
  [786] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 6, 0, 49),
  [788] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 6, 0, 49),
  [790] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_body, 2, 0, 0),
  [792] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_body, 2, 0, 0),
  [794] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_constant_variable_declaration, 6, 0, 52),
  [796] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_constant_variable_declaration, 6, 0, 52),
  [798] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_error_declaration, 5, 0, 23),
  [800] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_error_declaration, 5, 0, 23),
  [802] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_body, 3, 0, 0),
  [804] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_body, 3, 0, 0),
  [806] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_using_directive, 10, 0, 76),
  [808] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_using_directive, 10, 0, 76),
  [810] = {.entry = {.count = 1, .reusable = false}}, SHIFT(367),
  [812] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_constructor_definition, 4, 0, 54),
  [814] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_constructor_definition, 4, 0, 54),
  [816] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_fallback_receive_definition, 5, 0, 65),
  [818] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_fallback_receive_definition, 5, 0, 65),
  [820] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_fallback_receive_definition, 3, 0, 45),
  [822] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_fallback_receive_definition, 3, 0, 45),
  [824] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_fallback_receive_definition, 3, 0, 0),
  [826] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_fallback_receive_definition, 3, 0, 0),
  [828] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_modifier_definition, 3, 0, 13),
  [830] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_modifier_definition, 3, 0, 13),
  [832] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_modifier_definition, 3, 0, 23),
  [834] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_modifier_definition, 3, 0, 23),
  [836] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_constructor_definition, 3, 0, 45),
  [838] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_constructor_definition, 3, 0, 45),
  [840] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_modifier_definition, 5, 0, 40),
  [842] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_modifier_definition, 5, 0, 40),
  [844] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_modifier_definition, 5, 0, 23),
  [846] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_modifier_definition, 5, 0, 23),
  [848] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_fallback_receive_definition, 6, 0, 74),
  [850] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_fallback_receive_definition, 6, 0, 74),
  [852] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_fallback_receive_definition, 6, 0, 0),
  [854] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_fallback_receive_definition, 6, 0, 0),
  [856] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_state_variable_declaration, 6, 0, 75),
  [858] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_state_variable_declaration, 6, 0, 75),
  [860] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_state_variable_declaration, 5, 0, 66),
  [862] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_state_variable_declaration, 5, 0, 66),
  [864] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_state_variable_declaration, 3, 0, 24),
  [866] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_state_variable_declaration, 3, 0, 24),
  [868] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_fallback_receive_definition, 4, 0, 54),
  [870] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_fallback_receive_definition, 4, 0, 54),
  [872] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_fallback_receive_definition, 4, 0, 0),
  [874] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_fallback_receive_definition, 4, 0, 0),
  [876] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_modifier_definition, 4, 0, 23),
  [878] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_modifier_definition, 4, 0, 23),
  [880] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_state_variable_declaration, 4, 0, 55),
  [882] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_state_variable_declaration, 4, 0, 55),
  [884] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_modifier_definition, 4, 0, 22),
  [886] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_modifier_definition, 4, 0, 22),
  [888] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_fallback_receive_definition, 5, 0, 0),
  [890] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_fallback_receive_definition, 5, 0, 0),
  [892] = {.entry = {.count = 1, .reusable = false}}, SHIFT(283),
  [894] = {.entry = {.count = 1, .reusable = true}}, SHIFT(268),
  [896] = {.entry = {.count = 1, .reusable = true}}, SHIFT(307),
  [898] = {.entry = {.count = 1, .reusable = false}}, SHIFT(874),
  [900] = {.entry = {.count = 1, .reusable = false}}, SHIFT(269),
  [902] = {.entry = {.count = 1, .reusable = false}}, SHIFT(320),
  [904] = {.entry = {.count = 1, .reusable = false}}, SHIFT(322),
  [906] = {.entry = {.count = 1, .reusable = true}}, SHIFT(269),
  [908] = {.entry = {.count = 1, .reusable = false}}, SHIFT(289),
  [910] = {.entry = {.count = 1, .reusable = false}}, SHIFT(876),
  [912] = {.entry = {.count = 1, .reusable = true}}, SHIFT(573),
  [914] = {.entry = {.count = 1, .reusable = true}}, SHIFT(574),
  [916] = {.entry = {.count = 1, .reusable = false}}, SHIFT(752),
  [918] = {.entry = {.count = 1, .reusable = false}}, SHIFT(317),
  [920] = {.entry = {.count = 1, .reusable = false}}, SHIFT(316),
  [922] = {.entry = {.count = 1, .reusable = false}}, SHIFT(878),
  [924] = {.entry = {.count = 1, .reusable = false}}, SHIFT(282),
  [926] = {.entry = {.count = 1, .reusable = true}}, SHIFT(121),
  [928] = {.entry = {.count = 1, .reusable = false}}, SHIFT(264),
  [930] = {.entry = {.count = 1, .reusable = true}}, SHIFT(264),
  [932] = {.entry = {.count = 1, .reusable = true}}, SHIFT(114),
  [934] = {.entry = {.count = 1, .reusable = false}}, SHIFT(267),
  [936] = {.entry = {.count = 1, .reusable = true}}, SHIFT(267),
  [938] = {.entry = {.count = 1, .reusable = true}}, SHIFT(113),
  [940] = {.entry = {.count = 1, .reusable = true}}, SHIFT(107),
  [942] = {.entry = {.count = 1, .reusable = true}}, SHIFT(306),
  [944] = {.entry = {.count = 1, .reusable = false}}, SHIFT(262),
  [946] = {.entry = {.count = 1, .reusable = true}}, SHIFT(262),
  [948] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_assembly_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(283),
  [951] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_assembly_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(268),
  [954] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_assembly_statement_repeat1, 2, 0, 0),
  [956] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_assembly_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(874),
  [959] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_assembly_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(269),
  [962] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_assembly_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(320),
  [965] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_assembly_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(322),
  [968] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_assembly_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(269),
  [971] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_assembly_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(289),
  [974] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_assembly_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(876),
  [977] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_assembly_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(573),
  [980] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_assembly_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(574),
  [983] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_assembly_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(752),
  [986] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_assembly_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(317),
  [989] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_assembly_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(316),
  [992] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_assembly_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(878),
  [995] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_assembly_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(282),
  [998] = {.entry = {.count = 1, .reusable = false}}, SHIFT(266),
  [1000] = {.entry = {.count = 1, .reusable = true}}, SHIFT(266),
  [1002] = {.entry = {.count = 1, .reusable = true}}, SHIFT(368),
  [1004] = {.entry = {.count = 1, .reusable = true}}, SHIFT(370),
  [1006] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_member, 3, 0, 24),
  [1008] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_member, 3, 0, 24),
  [1010] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_path, 1, 0, 0),
  [1012] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_path, 1, 0, 0),
  [1014] = {.entry = {.count = 1, .reusable = true}}, SHIFT(310),
  [1016] = {.entry = {.count = 1, .reusable = true}}, SHIFT(812),
  [1018] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_identifier, 1, 0, 0),
  [1020] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_identifier, 1, 0, 0),
  [1022] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_path, 2, 0, 0),
  [1024] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_path, 2, 0, 0),
  [1026] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_yul_path_repeat1, 2, 0, 0),
  [1028] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_yul_path_repeat1, 2, 0, 0),
  [1030] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_yul_path_repeat1, 2, 0, 0), SHIFT_REPEAT(812),
  [1033] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_assignment, 1, 0, 0),
  [1035] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_assignment, 1, 0, 0),
  [1037] = {.entry = {.count = 1, .reusable = true}}, SHIFT(285),
  [1039] = {.entry = {.count = 1, .reusable = false}}, SHIFT(963),
  [1041] = {.entry = {.count = 1, .reusable = true}}, SHIFT(321),
  [1043] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_assignment, 3, 0, 0),
  [1045] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_assignment, 3, 0, 0),
  [1047] = {.entry = {.count = 1, .reusable = true}}, SHIFT(350),
  [1049] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_evm_builtin, 1, 0, 0),
  [1051] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_evm_builtin, 1, 0, 0),
  [1053] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_yul_identifier, 1, 0, 0), SHIFT(319),
  [1056] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_function_call, 1, 0, 28),
  [1058] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_function_call, 1, 0, 28),
  [1060] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_assignment, 2, 0, 0),
  [1062] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_assignment, 2, 0, 0),
  [1064] = {.entry = {.count = 1, .reusable = true}}, SHIFT(353),
  [1066] = {.entry = {.count = 1, .reusable = true}}, SHIFT(281),
  [1068] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_function_call, 3, 0, 28),
  [1070] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_function_call, 3, 0, 28),
  [1072] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_boolean, 1, 0, 0),
  [1074] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_boolean, 1, 0, 0),
  [1076] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_string_literal, 1, 0, 0),
  [1078] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_string_literal, 1, 0, 0),
  [1080] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_hex_string_literal, 3, 0, 0),
  [1082] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_hex_string_literal, 3, 0, 0),
  [1084] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_function_call, 6, 0, 28),
  [1086] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_function_call, 6, 0, 28),
  [1088] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_yul_assignment_repeat1, 2, 0, 0),
  [1090] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_yul_assignment_repeat1, 2, 0, 0),
  [1092] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_yul_assignment_repeat1, 2, 0, 0), SHIFT_REPEAT(667),
  [1095] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_hex_string_literal, 4, 0, 0),
  [1097] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_hex_string_literal, 4, 0, 0),
  [1099] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_hex_string_literal, 5, 0, 0),
  [1101] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_hex_string_literal, 5, 0, 0),
  [1103] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_function_call, 4, 0, 28),
  [1105] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_function_call, 4, 0, 28),
  [1107] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_yul_variable_declaration_repeat1, 2, 0, 0),
  [1109] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_yul_variable_declaration_repeat1, 2, 0, 0),
  [1111] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_yul_variable_declaration_repeat1, 2, 0, 0), SHIFT_REPEAT(772),
  [1114] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_function_call, 5, 0, 28),
  [1116] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_function_call, 5, 0, 28),
  [1118] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_variable_declaration, 2, 0, 68),
  [1120] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_variable_declaration, 2, 0, 68),
  [1122] = {.entry = {.count = 1, .reusable = true}}, SHIFT(305),
  [1124] = {.entry = {.count = 1, .reusable = true}}, SHIFT(323),
  [1126] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_switch_statement, 3, 0, 0),
  [1128] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_switch_statement, 3, 0, 0),
  [1130] = {.entry = {.count = 1, .reusable = false}}, SHIFT(884),
  [1132] = {.entry = {.count = 1, .reusable = false}}, SHIFT(527),
  [1134] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_variable_declaration, 3, 0, 77),
  [1136] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_variable_declaration, 3, 0, 77),
  [1138] = {.entry = {.count = 1, .reusable = true}}, SHIFT(309),
  [1140] = {.entry = {.count = 1, .reusable = true}}, SHIFT(354),
  [1142] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_yul_switch_statement_repeat1, 2, 0, 0),
  [1144] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_yul_switch_statement_repeat1, 2, 0, 0),
  [1146] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_yul_switch_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(527),
  [1149] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_block, 2, 0, 0),
  [1151] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_block, 2, 0, 0),
  [1153] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_block, 3, 0, 0),
  [1155] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_block, 3, 0, 0),
  [1157] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_yul_switch_statement_repeat1, 3, 0, 0),
  [1159] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_yul_switch_statement_repeat1, 3, 0, 0),
  [1161] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_variable_declaration, 4, 0, 81),
  [1163] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_variable_declaration, 4, 0, 81),
  [1165] = {.entry = {.count = 1, .reusable = true}}, SHIFT(351),
  [1167] = {.entry = {.count = 1, .reusable = false}}, SHIFT(276),
  [1169] = {.entry = {.count = 1, .reusable = true}}, SHIFT(288),
  [1171] = {.entry = {.count = 1, .reusable = false}}, SHIFT(746),
  [1173] = {.entry = {.count = 1, .reusable = true}}, SHIFT(746),
  [1175] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_variable_declaration, 5, 0, 85),
  [1177] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_variable_declaration, 5, 0, 85),
  [1179] = {.entry = {.count = 1, .reusable = true}}, SHIFT(352),
  [1181] = {.entry = {.count = 1, .reusable = true}}, SHIFT(298),
  [1183] = {.entry = {.count = 1, .reusable = false}}, SHIFT(781),
  [1185] = {.entry = {.count = 1, .reusable = true}}, SHIFT(781),
  [1187] = {.entry = {.count = 1, .reusable = true}}, SHIFT(292),
  [1189] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_variable_declaration, 6, 0, 90),
  [1191] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_variable_declaration, 6, 0, 90),
  [1193] = {.entry = {.count = 1, .reusable = true}}, SHIFT(355),
  [1195] = {.entry = {.count = 1, .reusable = false}}, SHIFT(692),
  [1197] = {.entry = {.count = 1, .reusable = true}}, SHIFT(692),
  [1199] = {.entry = {.count = 1, .reusable = false}}, SHIFT(799),
  [1201] = {.entry = {.count = 1, .reusable = true}}, SHIFT(799),
  [1203] = {.entry = {.count = 1, .reusable = false}}, SHIFT(798),
  [1205] = {.entry = {.count = 1, .reusable = true}}, SHIFT(798),
  [1207] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_label, 2, 0, 0),
  [1209] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_label, 2, 0, 0),
  [1211] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_break, 1, 0, 0),
  [1213] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_break, 1, 0, 0),
  [1215] = {.entry = {.count = 1, .reusable = false}}, SHIFT(325),
  [1217] = {.entry = {.count = 1, .reusable = true}}, SHIFT(325),
  [1219] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_continue, 1, 0, 0),
  [1221] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_continue, 1, 0, 0),
  [1223] = {.entry = {.count = 1, .reusable = false}}, SHIFT(327),
  [1225] = {.entry = {.count = 1, .reusable = true}}, SHIFT(327),
  [1227] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_if_statement, 3, 0, 0),
  [1229] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_if_statement, 3, 0, 0),
  [1231] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym__yul_expression, 1, 0, 0), REDUCE(sym_yul_assignment, 3, 0, 0),
  [1234] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__yul_expression, 1, 0, 0), REDUCE(sym_yul_assignment, 3, 0, 0),
  [1237] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_variable_declaration, 4, 0, 82),
  [1239] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_variable_declaration, 4, 0, 82),
  [1241] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_switch_statement, 4, 0, 0),
  [1243] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_switch_statement, 4, 0, 0),
  [1245] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_assignment, 4, 0, 0),
  [1247] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_assignment, 4, 0, 0),
  [1249] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_variable_declaration, 5, 0, 86),
  [1251] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_variable_declaration, 5, 0, 86),
  [1253] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_switch_statement, 5, 0, 0),
  [1255] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_switch_statement, 5, 0, 0),
  [1257] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_function_definition, 5, 0, 0),
  [1259] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_function_definition, 5, 0, 0),
  [1261] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_assignment, 5, 0, 0),
  [1263] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_assignment, 5, 0, 0),
  [1265] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_variable_declaration, 6, 0, 89),
  [1267] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_variable_declaration, 6, 0, 89),
  [1269] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_function_definition, 6, 0, 0),
  [1271] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_function_definition, 6, 0, 0),
  [1273] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_variable_declaration, 7, 0, 91),
  [1275] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_variable_declaration, 7, 0, 91),
  [1277] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_function_definition, 7, 0, 0),
  [1279] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_function_definition, 7, 0, 0),
  [1281] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_variable_declaration, 8, 0, 92),
  [1283] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_variable_declaration, 8, 0, 92),
  [1285] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_function_definition, 8, 0, 0),
  [1287] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_function_definition, 8, 0, 0),
  [1289] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_function_definition, 9, 0, 0),
  [1291] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_function_definition, 9, 0, 0),
  [1293] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_function_definition, 10, 0, 0),
  [1295] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_function_definition, 10, 0, 0),
  [1297] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_function_definition, 11, 0, 0),
  [1299] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_function_definition, 11, 0, 0),
  [1301] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_function_definition, 12, 0, 0),
  [1303] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_function_definition, 12, 0, 0),
  [1305] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_string, 2, 0, 0),
  [1307] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_string, 2, 0, 0),
  [1309] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_string, 3, 0, 0),
  [1311] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_string, 3, 0, 0),
  [1313] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yul_for_statement, 5, 0, 0),
  [1315] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yul_for_statement, 5, 0, 0),
  [1317] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__yul_assignment_operator, 2, 0, 0),
  [1319] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__yul_assignment_operator, 2, 0, 0),
  [1321] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym__identifier_path_repeat1, 2, 0, 0),
  [1323] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__identifier_path_repeat1, 2, 0, 0),
  [1325] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__identifier_path_repeat1, 2, 0, 0), SHIFT_REPEAT(912),
  [1328] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__function_type, 3, 0, 6),
  [1330] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__function_type, 3, 0, 6),
  [1332] = {.entry = {.count = 1, .reusable = false}}, SHIFT(966),
  [1334] = {.entry = {.count = 1, .reusable = false}}, SHIFT(366),
  [1336] = {.entry = {.count = 1, .reusable = false}}, SHIFT(361),
  [1338] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym__function_type_repeat1, 2, 0, 0),
  [1340] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__function_type_repeat1, 2, 0, 0),
  [1342] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__function_type_repeat1, 2, 0, 0), SHIFT_REPEAT(366),
  [1345] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__function_type_repeat1, 2, 0, 0), SHIFT_REPEAT(361),
  [1348] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__parameter_list, 3, 0, 0),
  [1350] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__parameter_list, 3, 0, 0),
  [1352] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_state_mutability, 1, 0, 0),
  [1354] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_state_mutability, 1, 0, 0),
  [1356] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__parameter_list, 2, 0, 0),
  [1358] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__parameter_list, 2, 0, 0),
  [1360] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__function_type, 2, 0, 6),
  [1362] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__function_type, 2, 0, 6),
  [1364] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__parameter_list, 4, 0, 0),
  [1366] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__parameter_list, 4, 0, 0),
  [1368] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__parameter_list, 5, 0, 0),
  [1370] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__parameter_list, 5, 0, 0),
  [1372] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_visibility, 1, 0, 0),
  [1374] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_visibility, 1, 0, 0),
  [1376] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_user_defined_type, 1, 0, 0),
  [1378] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_user_defined_type, 1, 0, 0),
  [1380] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_primitive_type, 1, 0, 0),
  [1382] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_primitive_type, 1, 0, 0),
  [1384] = {.entry = {.count = 1, .reusable = false}}, SHIFT(369),
  [1386] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_primitive_type, 2, 0, 0),
  [1388] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_primitive_type, 2, 0, 0),
  [1390] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__return_parameters, 5, 0, 50),
  [1392] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__return_parameters, 5, 0, 50),
  [1394] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__mapping, 7, 0, 60),
  [1396] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__mapping, 7, 0, 60),
  [1398] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__mapping, 7, 0, 61),
  [1400] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__mapping, 7, 0, 61),
  [1402] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__mapping, 8, 0, 72),
  [1404] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__mapping, 8, 0, 72),
  [1406] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__mapping, 6, 0, 51),
  [1408] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__mapping, 6, 0, 51),
  [1410] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__return_parameters, 6, 0, 50),
  [1412] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__return_parameters, 6, 0, 50),
  [1414] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__function_type, 4, 0, 6),
  [1416] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__function_type, 4, 0, 6),
  [1418] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_name, 1, 0, 1),
  [1420] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_name, 1, 0, 1),
  [1422] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_name, 1, 0, 0),
  [1424] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_name, 1, 0, 0),
  [1426] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_name, 1, 0, 2),
  [1428] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_name, 1, 0, 2),
  [1430] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__array_type, 3, 0, 0),
  [1432] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__array_type, 3, 0, 0),
  [1434] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__array_type, 4, 0, 0),
  [1436] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__array_type, 4, 0, 0),
  [1438] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__return_parameters, 4, 0, 50),
  [1440] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__return_parameters, 4, 0, 50),
  [1442] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_number_literal, 1, 0, 0),
  [1444] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_number_literal, 1, 0, 0),
  [1446] = {.entry = {.count = 1, .reusable = true}}, SHIFT(443),
  [1448] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__call_arguments, 3, 0, 0),
  [1450] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__call_arguments, 3, 0, 0),
  [1452] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__call_arguments, 2, 0, 0),
  [1454] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__call_arguments, 2, 0, 0),
  [1456] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__call_arguments, 4, 0, 0),
  [1458] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__call_arguments, 4, 0, 0),
  [1460] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__call_arguments, 5, 0, 0),
  [1462] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__call_arguments, 5, 0, 0),
  [1464] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__identifier_path, 2, 0, 0),
  [1466] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__identifier_path, 2, 0, 0),
  [1468] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__identifier_path, 1, 0, 0),
  [1470] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__primary_expression, 1, 0, 0), REDUCE(sym__identifier_path, 1, 0, 0),
  [1473] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym__primary_expression, 1, 0, 0), REDUCE(sym__identifier_path, 1, 0, 0),
  [1476] = {.entry = {.count = 3, .reusable = true}}, REDUCE(sym__primary_expression, 1, 0, 0), REDUCE(sym__identifier_path, 1, 0, 0), SHIFT(899),
  [1480] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__identifier_path_repeat1, 2, 0, 0), REDUCE(sym_member_expression, 3, 1, 41),
  [1483] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__identifier_path_repeat1, 2, 0, 0), REDUCE(sym_member_expression, 3, 1, 41),
  [1486] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_string_literal_repeat1, 2, 0, 0),
  [1488] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_string_literal_repeat1, 2, 0, 0),
  [1490] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_string_literal_repeat1, 2, 0, 0), SHIFT_REPEAT(563),
  [1493] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_string_literal_repeat1, 2, 0, 0), SHIFT_REPEAT(564),
  [1496] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_string_literal, 1, 0, 0),
  [1498] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_string_literal, 1, 0, 0),
  [1500] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_unicode_string_literal, 1, 0, 0),
  [1502] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_unicode_string_literal, 1, 0, 0),
  [1504] = {.entry = {.count = 1, .reusable = true}}, SHIFT(873),
  [1506] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_hex_string_literal_repeat1, 2, 0, 0),
  [1508] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_hex_string_literal_repeat1, 2, 0, 0),
  [1510] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_hex_string_literal_repeat1, 2, 0, 0), SHIFT_REPEAT(888),
  [1513] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_unicode_string_literal_repeat3, 2, 0, 0),
  [1515] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_unicode_string_literal_repeat3, 2, 0, 0),
  [1517] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_unicode_string_literal_repeat3, 2, 0, 0), SHIFT_REPEAT(873),
  [1520] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_hex_string_literal, 1, 0, 0),
  [1522] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_hex_string_literal, 1, 0, 0),
  [1524] = {.entry = {.count = 1, .reusable = true}}, SHIFT(888),
  [1526] = {.entry = {.count = 1, .reusable = true}}, SHIFT(74),
  [1528] = {.entry = {.count = 1, .reusable = false}}, SHIFT(75),
  [1530] = {.entry = {.count = 1, .reusable = true}}, SHIFT(77),
  [1532] = {.entry = {.count = 1, .reusable = false}}, SHIFT(77),
  [1534] = {.entry = {.count = 1, .reusable = false}}, SHIFT(78),
  [1536] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_ternary_expression, 5, 0, 0),
  [1538] = {.entry = {.count = 1, .reusable = false}}, SHIFT(86),
  [1540] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_ternary_expression, 5, 0, 0),
  [1542] = {.entry = {.count = 1, .reusable = true}}, SHIFT(32),
  [1544] = {.entry = {.count = 1, .reusable = false}}, SHIFT(82),
  [1546] = {.entry = {.count = 1, .reusable = false}}, SHIFT(55),
  [1548] = {.entry = {.count = 1, .reusable = true}}, SHIFT(56),
  [1550] = {.entry = {.count = 1, .reusable = true}}, SHIFT(59),
  [1552] = {.entry = {.count = 1, .reusable = false}}, SHIFT(62),
  [1554] = {.entry = {.count = 1, .reusable = true}}, SHIFT(64),
  [1556] = {.entry = {.count = 1, .reusable = true}}, SHIFT(439),
  [1558] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_unicode_string_literal_repeat3, 4, 0, 0),
  [1560] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_unicode_string_literal_repeat3, 4, 0, 0),
  [1562] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_binary_expression, 3, 0, 42),
  [1564] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_binary_expression, 3, 0, 42),
  [1566] = {.entry = {.count = 1, .reusable = false}}, SHIFT(79),
  [1568] = {.entry = {.count = 1, .reusable = true}}, SHIFT(737),
  [1570] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment_expression, 3, 0, 43),
  [1572] = {.entry = {.count = 1, .reusable = true}}, SHIFT(942),
  [1574] = {.entry = {.count = 1, .reusable = true}}, SHIFT(57),
  [1576] = {.entry = {.count = 1, .reusable = true}}, SHIFT(41),
  [1578] = {.entry = {.count = 1, .reusable = true}}, SHIFT(65),
  [1580] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_augmented_assignment_expression, 3, 0, 43),
  [1582] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_new_expression, 2, 0, 23),
  [1584] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_new_expression, 2, 0, 23),
  [1586] = {.entry = {.count = 1, .reusable = true}}, SHIFT(47),
  [1588] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_update_expression, 2, 0, 26),
  [1590] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_update_expression, 2, 0, 26),
  [1592] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_hex_string_literal_repeat1, 5, 0, 0),
  [1594] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_hex_string_literal_repeat1, 5, 0, 0),
  [1596] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_unary_expression, 2, 0, 26),
  [1598] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_unary_expression, 2, 0, 26),
  [1600] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__primary_expression, 1, 0, 0),
  [1602] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__primary_expression, 1, 0, 0),
  [1604] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__primary_expression, 1, 0, 0), SHIFT(32),
  [1607] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_unicode_string_literal_repeat3, 3, 0, 0),
  [1609] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_unicode_string_literal_repeat3, 3, 0, 0),
  [1611] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_hex_string_literal_repeat1, 4, 0, 0),
  [1613] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_hex_string_literal_repeat1, 4, 0, 0),
  [1615] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_hex_string_literal_repeat1, 3, 0, 0),
  [1617] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_hex_string_literal_repeat1, 3, 0, 0),
  [1619] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_boolean_literal, 1, 0, 0),
  [1621] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_boolean_literal, 1, 0, 0),
  [1623] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_inline_array_expression, 2, 0, 0),
  [1625] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_inline_array_expression, 2, 0, 0),
  [1627] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_new_expression, 3, 0, 23),
  [1629] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_new_expression, 3, 0, 23),
  [1631] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_expression, 6, 0, 14),
  [1633] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_expression, 6, 0, 14),
  [1635] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_true, 1, 0, 0),
  [1637] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_true, 1, 0, 0),
  [1639] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_false, 1, 0, 0),
  [1641] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_false, 1, 0, 0),
  [1643] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_expression, 3, 0, 0),
  [1645] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_expression, 3, 0, 0),
  [1647] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_inline_array_expression, 3, 0, 0),
  [1649] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_inline_array_expression, 3, 0, 0),
  [1651] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice_access, 6, 0, 73),
  [1653] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_slice_access, 6, 0, 73),
  [1655] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_expression, 5, 0, 14),
  [1657] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_expression, 5, 0, 14),
  [1659] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_inline_array_expression, 5, 0, 0),
  [1661] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_inline_array_expression, 5, 0, 0),
  [1663] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression, 1, 0, 0),
  [1665] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression, 1, 0, 0),
  [1667] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_expression, 3, 0, 14),
  [1669] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_expression, 3, 0, 14),
  [1671] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice_access, 5, 0, 63),
  [1673] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_slice_access, 5, 0, 63),
  [1675] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_update_expression, 2, 0, 27),
  [1677] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_update_expression, 2, 0, 27),
  [1679] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_expression, 2, 0, 0),
  [1681] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_expression, 2, 0, 0),
  [1683] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_call_expression, 2, 0, 28),
  [1685] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_call_expression, 2, 0, 28),
  [1687] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_cast_expression, 2, 0, 0),
  [1689] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_cast_expression, 2, 0, 0),
  [1691] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_number_unit, 1, 0, 0),
  [1693] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_number_unit, 1, 0, 0),
  [1695] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_number_literal, 2, 0, 0),
  [1697] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_number_literal, 2, 0, 0),
  [1699] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_member_expression, 3, 1, 41),
  [1701] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_member_expression, 3, 1, 41),
  [1703] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_meta_type_expression, 4, 0, 0),
  [1705] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_meta_type_expression, 4, 0, 0),
  [1707] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_expression, 4, 0, 0),
  [1709] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_expression, 4, 0, 0),
  [1711] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice_access, 5, 0, 64),
  [1713] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_slice_access, 5, 0, 64),
  [1715] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_expression, 5, 0, 0),
  [1717] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_expression, 5, 0, 0),
  [1719] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_access, 3, 0, 44),
  [1721] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_array_access, 3, 0, 44),
  [1723] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_access, 4, 0, 53),
  [1725] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_array_access, 4, 0, 53),
  [1727] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_inline_array_expression, 4, 0, 0),
  [1729] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_inline_array_expression, 4, 0, 0),
  [1731] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_payable_conversion_expression, 2, 0, 0),
  [1733] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_payable_conversion_expression, 2, 0, 0),
  [1735] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_expression, 4, 0, 14),
  [1737] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_expression, 4, 0, 14),
  [1739] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice_access, 4, 0, 44),
  [1741] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_slice_access, 4, 0, 44),
  [1743] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parenthesized_expression, 3, 0, 0),
  [1745] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_parenthesized_expression, 3, 0, 0),
  [1747] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__primary_expression, 1, 0, 0), REDUCE(sym_type_name, 1, 0, 0),
  [1750] = {.entry = {.count = 1, .reusable = true}}, SHIFT(60),
  [1752] = {.entry = {.count = 1, .reusable = true}}, SHIFT(595),
  [1754] = {.entry = {.count = 1, .reusable = true}}, SHIFT(43),
  [1756] = {.entry = {.count = 1, .reusable = true}}, SHIFT(456),
  [1758] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2),
  [1760] = {.entry = {.count = 1, .reusable = true}}, SHIFT(935),
  [1762] = {.entry = {.count = 1, .reusable = true}}, SHIFT(779),
  [1764] = {.entry = {.count = 1, .reusable = true}}, SHIFT(51),
  [1766] = {.entry = {.count = 1, .reusable = true}}, SHIFT(432),
  [1768] = {.entry = {.count = 1, .reusable = true}}, SHIFT(94),
  [1770] = {.entry = {.count = 1, .reusable = true}}, SHIFT(253),
  [1772] = {.entry = {.count = 1, .reusable = true}}, SHIFT(202),
  [1774] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_tuple_expression_repeat1, 2, 0, 0),
  [1776] = {.entry = {.count = 1, .reusable = true}}, SHIFT(48),
  [1778] = {.entry = {.count = 1, .reusable = true}}, SHIFT(451),
  [1780] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_call_argument, 1, 0, 0),
  [1782] = {.entry = {.count = 1, .reusable = true}}, SHIFT(93),
  [1784] = {.entry = {.count = 1, .reusable = true}}, SHIFT(116),
  [1786] = {.entry = {.count = 1, .reusable = true}}, SHIFT(254),
  [1788] = {.entry = {.count = 1, .reusable = true}}, SHIFT(106),
  [1790] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_layout_specifier, 3, 0, 0), SHIFT(737),
  [1793] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_layout_specifier, 3, 0, 0),
  [1795] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_field_assignment, 3, 0, 62),
  [1797] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_call_struct_argument, 3, 0, 62),
  [1799] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_inline_array_expression_repeat1, 2, 0, 0),
  [1801] = {.entry = {.count = 1, .reusable = true}}, SHIFT(105),
  [1803] = {.entry = {.count = 1, .reusable = true}}, SHIFT(438),
  [1805] = {.entry = {.count = 1, .reusable = true}}, SHIFT(13),
  [1807] = {.entry = {.count = 1, .reusable = true}}, SHIFT(384),
  [1809] = {.entry = {.count = 1, .reusable = true}}, SHIFT(115),
  [1811] = {.entry = {.count = 1, .reusable = true}}, SHIFT(433),
  [1813] = {.entry = {.count = 1, .reusable = true}}, SHIFT(14),
  [1815] = {.entry = {.count = 1, .reusable = true}}, SHIFT(61),
  [1817] = {.entry = {.count = 1, .reusable = true}}, SHIFT(15),
  [1819] = {.entry = {.count = 1, .reusable = true}}, SHIFT(768),
  [1821] = {.entry = {.count = 1, .reusable = true}}, SHIFT(17),
  [1823] = {.entry = {.count = 1, .reusable = true}}, SHIFT(18),
  [1825] = {.entry = {.count = 1, .reusable = true}}, SHIFT(20),
  [1827] = {.entry = {.count = 1, .reusable = true}}, SHIFT(861),
  [1829] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_variable_declaration_tuple, 3, 0, 0),
  [1831] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_variable_declaration_tuple, 2, 0, 0),
  [1833] = {.entry = {.count = 1, .reusable = true}}, SHIFT(912),
  [1835] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__identifier_path, 1, 0, 0),
  [1837] = {.entry = {.count = 1, .reusable = true}}, SHIFT(10),
  [1839] = {.entry = {.count = 1, .reusable = false}}, SHIFT(868),
  [1841] = {.entry = {.count = 1, .reusable = false}}, SHIFT(517),
  [1843] = {.entry = {.count = 1, .reusable = false}}, SHIFT(513),
  [1845] = {.entry = {.count = 1, .reusable = true}}, SHIFT(214),
  [1847] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3),
  [1849] = {.entry = {.count = 1, .reusable = false}}, SHIFT(836),
  [1851] = {.entry = {.count = 1, .reusable = false}}, SHIFT(514),
  [1853] = {.entry = {.count = 1, .reusable = true}}, SHIFT(167),
  [1855] = {.entry = {.count = 1, .reusable = false}}, SHIFT(510),
  [1857] = {.entry = {.count = 1, .reusable = true}}, SHIFT(219),
  [1859] = {.entry = {.count = 1, .reusable = true}}, SHIFT(232),
  [1861] = {.entry = {.count = 1, .reusable = false}}, SHIFT(508),
  [1863] = {.entry = {.count = 1, .reusable = true}}, SHIFT(158),
  [1865] = {.entry = {.count = 1, .reusable = false}}, SHIFT(773),
  [1867] = {.entry = {.count = 1, .reusable = false}}, SHIFT(825),
  [1869] = {.entry = {.count = 1, .reusable = false}}, SHIFT(515),
  [1871] = {.entry = {.count = 1, .reusable = true}}, SHIFT(257),
  [1873] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_function_definition_repeat1, 2, 0, 0), SHIFT_REPEAT(506),
  [1876] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_function_definition_repeat1, 2, 0, 0),
  [1878] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_function_definition_repeat1, 2, 0, 0),
  [1880] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_function_definition_repeat1, 2, 0, 0), SHIFT_REPEAT(366),
  [1883] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_function_definition_repeat1, 2, 0, 0), SHIFT_REPEAT(361),
  [1886] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_function_definition_repeat1, 2, 0, 0), SHIFT_REPEAT(517),
  [1889] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_function_definition_repeat1, 2, 0, 0), SHIFT_REPEAT(514),
  [1892] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_fallback_receive_definition_repeat1, 2, 0, 0), SHIFT_REPEAT(506),
  [1895] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_fallback_receive_definition_repeat1, 2, 0, 0),
  [1897] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_fallback_receive_definition_repeat1, 2, 0, 0),
  [1899] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_fallback_receive_definition_repeat1, 2, 0, 0), SHIFT_REPEAT(366),
  [1902] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_fallback_receive_definition_repeat1, 2, 0, 0), SHIFT_REPEAT(361),
  [1905] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_fallback_receive_definition_repeat1, 2, 0, 0), SHIFT_REPEAT(517),
  [1908] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_fallback_receive_definition_repeat1, 2, 0, 0), SHIFT_REPEAT(515),
  [1911] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_fallback_receive_definition_repeat1, 1, 0, 0), REDUCE(aux_sym__function_type_repeat1, 1, 0, 0),
  [1914] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_fallback_receive_definition_repeat1, 1, 0, 0),
  [1916] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym__function_type_repeat1, 1, 0, 0),
  [1918] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_fallback_receive_definition_repeat1, 1, 0, 0),
  [1920] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__function_type_repeat1, 1, 0, 0),
  [1922] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_override_specifier, 1, 0, 0),
  [1924] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_override_specifier, 1, 0, 0),
  [1926] = {.entry = {.count = 1, .reusable = true}}, SHIFT(754),
  [1928] = {.entry = {.count = 1, .reusable = true}}, SHIFT(835),
  [1930] = {.entry = {.count = 1, .reusable = false}}, SHIFT(835),
  [1932] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_override_specifier, 4, 0, 0),
  [1934] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_override_specifier, 4, 0, 0),
  [1936] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_override_specifier, 6, 0, 0),
  [1938] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_override_specifier, 6, 0, 0),
  [1940] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_override_specifier, 5, 0, 0),
  [1942] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_override_specifier, 5, 0, 0),
  [1944] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_modifier_invocation, 1, 0, 0),
  [1946] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_modifier_invocation, 1, 0, 0),
  [1948] = {.entry = {.count = 1, .reusable = false}}, SHIFT(673),
  [1950] = {.entry = {.count = 1, .reusable = false}}, SHIFT(524),
  [1952] = {.entry = {.count = 1, .reusable = false}}, SHIFT(538),
  [1954] = {.entry = {.count = 1, .reusable = false}}, SHIFT(729),
  [1956] = {.entry = {.count = 1, .reusable = false}}, SHIFT(526),
  [1958] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_modifier_invocation, 2, 0, 0),
  [1960] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_modifier_invocation, 2, 0, 0),
  [1962] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_state_variable_declaration_repeat1, 2, 0, 46),
  [1964] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_state_variable_declaration_repeat1, 2, 0, 46), SHIFT_REPEAT(526),
  [1967] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_state_variable_declaration_repeat1, 2, 0, 46), SHIFT_REPEAT(366),
  [1970] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_state_variable_declaration_repeat1, 2, 0, 46), SHIFT_REPEAT(538),
  [1973] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_state_variable_declaration_repeat1, 2, 0, 46), SHIFT_REPEAT(517),
  [1976] = {.entry = {.count = 1, .reusable = false}}, SHIFT(883),
  [1978] = {.entry = {.count = 1, .reusable = true}}, SHIFT(883),
  [1980] = {.entry = {.count = 1, .reusable = true}}, SHIFT(289),
  [1982] = {.entry = {.count = 1, .reusable = true}}, SHIFT(876),
  [1984] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_solidity_pragma_token_repeat1, 2, 0, 15), SHIFT_REPEAT(532),
  [1987] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_solidity_pragma_token_repeat1, 2, 0, 15), SHIFT_REPEAT(908),
  [1990] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_solidity_pragma_token_repeat1, 2, 0, 15), SHIFT_REPEAT(908),
  [1993] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_solidity_pragma_token_repeat1, 2, 0, 15),
  [1995] = {.entry = {.count = 1, .reusable = true}}, SHIFT(532),
  [1997] = {.entry = {.count = 1, .reusable = true}}, SHIFT(908),
  [1999] = {.entry = {.count = 1, .reusable = false}}, SHIFT(908),
  [2001] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_solidity_pragma_token, 2, 0, 8),
  [2003] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_solidity_pragma_token, 1, 0, 0),
  [2005] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__pragma_version_constraint, 2, 0, 0),
  [2007] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__pragma_version_constraint, 2, 0, 0),
  [2009] = {.entry = {.count = 1, .reusable = true}}, SHIFT(537),
  [2011] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_solidity_pragma_token_repeat1, 1, 0, 7),
  [2013] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_solidity_pragma_token_repeat1, 1, 0, 7),
  [2015] = {.entry = {.count = 1, .reusable = true}}, SHIFT(690),
  [2017] = {.entry = {.count = 1, .reusable = true}}, SHIFT(658),
  [2019] = {.entry = {.count = 1, .reusable = true}}, SHIFT(686),
  [2021] = {.entry = {.count = 1, .reusable = true}}, SHIFT(144),
  [2023] = {.entry = {.count = 1, .reusable = true}}, SHIFT(517),
  [2025] = {.entry = {.count = 1, .reusable = true}}, SHIFT(544),
  [2027] = {.entry = {.count = 1, .reusable = true}}, SHIFT(228),
  [2029] = {.entry = {.count = 1, .reusable = false}}, SHIFT(536),
  [2031] = {.entry = {.count = 1, .reusable = false}}, SHIFT(546),
  [2033] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_solidity_pragma_token_repeat1, 2, 0, 7),
  [2035] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_solidity_pragma_token_repeat1, 2, 0, 7),
  [2037] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_state_location, 1, 0, 0),
  [2039] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_state_variable_declaration_repeat1, 1, 0, 32),
  [2041] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_state_variable_declaration_repeat1, 1, 0, 33),
  [2043] = {.entry = {.count = 1, .reusable = true}}, SHIFT(556),
  [2045] = {.entry = {.count = 1, .reusable = true}}, SHIFT(249),
  [2047] = {.entry = {.count = 1, .reusable = false}}, SHIFT(860),
  [2049] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameter, 1, 0, 14),
  [2051] = {.entry = {.count = 1, .reusable = false}}, SHIFT(762),
  [2053] = {.entry = {.count = 1, .reusable = true}}, SHIFT(541),
  [2055] = {.entry = {.count = 1, .reusable = true}}, SHIFT(258),
  [2057] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__nameless_parameter, 1, 0, 14), REDUCE(sym_parameter, 1, 0, 14),
  [2060] = {.entry = {.count = 1, .reusable = false}}, SHIFT(730),
  [2062] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_constructor_definition_repeat1, 2, 0, 0), SHIFT_REPEAT(506),
  [2065] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_constructor_definition_repeat1, 2, 0, 0),
  [2067] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_constructor_definition_repeat1, 2, 0, 0), SHIFT_REPEAT(546),
  [2070] = {.entry = {.count = 1, .reusable = true}}, SHIFT(102),
  [2072] = {.entry = {.count = 1, .reusable = true}}, SHIFT(610),
  [2074] = {.entry = {.count = 1, .reusable = true}}, SHIFT(890),
  [2076] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__nameless_parameter, 1, 0, 14),
  [2078] = {.entry = {.count = 1, .reusable = true}}, SHIFT(774),
  [2080] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__class_heritage, 4, 0, 0),
  [2082] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__class_heritage, 4, 0, 0),
  [2084] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__class_heritage, 3, 0, 0),
  [2086] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__class_heritage, 3, 0, 0),
  [2088] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_inheritance_specifier, 1, 0, 21),
  [2090] = {.entry = {.count = 1, .reusable = false}}, SHIFT(846),
  [2092] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_modifier_definition_repeat1, 2, 0, 0),
  [2094] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_modifier_definition_repeat1, 2, 0, 0), SHIFT_REPEAT(517),
  [2097] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_modifier_definition_repeat1, 2, 0, 0), SHIFT_REPEAT(556),
  [2100] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_contract_declaration_repeat1, 2, 0, 0),
  [2102] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_contract_declaration_repeat1, 2, 0, 0), SHIFT_REPEAT(610),
  [2105] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_contract_declaration_repeat1, 2, 0, 0), SHIFT_REPEAT(890),
  [2108] = {.entry = {.count = 1, .reusable = true}}, SHIFT(506),
  [2110] = {.entry = {.count = 1, .reusable = true}}, SHIFT(953),
  [2112] = {.entry = {.count = 1, .reusable = true}}, SHIFT(956),
  [2114] = {.entry = {.count = 1, .reusable = false}}, SHIFT(828),
  [2116] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_event_parameter, 1, 0, 14),
  [2118] = {.entry = {.count = 1, .reusable = false}}, SHIFT(721),
  [2120] = {.entry = {.count = 1, .reusable = true}}, SHIFT(917),
  [2122] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_yul_hex_string_literal_repeat1, 2, 0, 0),
  [2124] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_yul_hex_string_literal_repeat1, 2, 0, 0), SHIFT_REPEAT(920),
  [2127] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_yul_hex_string_literal_repeat1, 2, 0, 0), SHIFT_REPEAT(562),
  [2130] = {.entry = {.count = 1, .reusable = false}}, SHIFT(393),
  [2132] = {.entry = {.count = 1, .reusable = false}}, SHIFT(571),
  [2134] = {.entry = {.count = 1, .reusable = true}}, SHIFT(571),
  [2136] = {.entry = {.count = 1, .reusable = false}}, SHIFT_EXTRA(),
  [2138] = {.entry = {.count = 1, .reusable = false}}, SHIFT(577),
  [2140] = {.entry = {.count = 1, .reusable = true}}, SHIFT(577),
  [2142] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__class_heritage_repeat1, 2, 0, 0),
  [2144] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__class_heritage_repeat1, 2, 0, 0), SHIFT_REPEAT(626),
  [2147] = {.entry = {.count = 1, .reusable = false}}, SHIFT(800),
  [2149] = {.entry = {.count = 1, .reusable = false}}, SHIFT(530),
  [2151] = {.entry = {.count = 1, .reusable = true}}, SHIFT(549),
  [2153] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_string_repeat1, 2, 0, 0),
  [2155] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_string_repeat1, 2, 0, 0), SHIFT_REPEAT(568),
  [2158] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_string_repeat1, 2, 0, 0), SHIFT_REPEAT(568),
  [2161] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_string_repeat2, 2, 0, 0),
  [2163] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_string_repeat2, 2, 0, 0), SHIFT_REPEAT(569),
  [2166] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_string_repeat2, 2, 0, 0), SHIFT_REPEAT(569),
  [2169] = {.entry = {.count = 1, .reusable = true}}, SHIFT(965),
  [2171] = {.entry = {.count = 1, .reusable = false}}, SHIFT(391),
  [2173] = {.entry = {.count = 1, .reusable = false}}, SHIFT(568),
  [2175] = {.entry = {.count = 1, .reusable = true}}, SHIFT(568),
  [2177] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__class_heritage, 2, 0, 0),
  [2179] = {.entry = {.count = 1, .reusable = true}}, SHIFT(552),
  [2181] = {.entry = {.count = 1, .reusable = false}}, SHIFT(346),
  [2183] = {.entry = {.count = 1, .reusable = false}}, SHIFT(575),
  [2185] = {.entry = {.count = 1, .reusable = true}}, SHIFT(575),
  [2187] = {.entry = {.count = 1, .reusable = false}}, SHIFT(576),
  [2189] = {.entry = {.count = 1, .reusable = true}}, SHIFT(576),
  [2191] = {.entry = {.count = 1, .reusable = false}}, SHIFT(347),
  [2193] = {.entry = {.count = 1, .reusable = false}}, SHIFT(569),
  [2195] = {.entry = {.count = 1, .reusable = true}}, SHIFT(569),
  [2197] = {.entry = {.count = 1, .reusable = false}}, SHIFT(596),
  [2199] = {.entry = {.count = 1, .reusable = false}}, SHIFT(910),
  [2201] = {.entry = {.count = 1, .reusable = true}}, SHIFT(642),
  [2203] = {.entry = {.count = 1, .reusable = false}}, SHIFT(421),
  [2205] = {.entry = {.count = 1, .reusable = true}}, SHIFT(631),
  [2207] = {.entry = {.count = 1, .reusable = true}}, SHIFT(521),
  [2209] = {.entry = {.count = 1, .reusable = true}}, SHIFT(294),
  [2211] = {.entry = {.count = 1, .reusable = true}}, SHIFT(920),
  [2213] = {.entry = {.count = 1, .reusable = true}}, SHIFT(593),
  [2215] = {.entry = {.count = 1, .reusable = true}}, SHIFT(594),
  [2217] = {.entry = {.count = 1, .reusable = true}}, SHIFT(853),
  [2219] = {.entry = {.count = 1, .reusable = true}}, SHIFT(195),
  [2221] = {.entry = {.count = 1, .reusable = true}}, SHIFT(588),
  [2223] = {.entry = {.count = 1, .reusable = true}}, SHIFT(958),
  [2225] = {.entry = {.count = 1, .reusable = true}}, SHIFT(838),
  [2227] = {.entry = {.count = 1, .reusable = true}}, SHIFT(197),
  [2229] = {.entry = {.count = 1, .reusable = true}}, SHIFT(954),
  [2231] = {.entry = {.count = 1, .reusable = true}}, SHIFT(295),
  [2233] = {.entry = {.count = 1, .reusable = true}}, SHIFT(562),
  [2235] = {.entry = {.count = 1, .reusable = true}}, SHIFT(688),
  [2237] = {.entry = {.count = 1, .reusable = true}}, SHIFT(644),
  [2239] = {.entry = {.count = 1, .reusable = true}}, SHIFT(907),
  [2241] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variable_declaration, 2, 0, 24),
  [2243] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__import_alias, 2, 0, 16),
  [2245] = {.entry = {.count = 1, .reusable = true}}, SHIFT(422),
  [2247] = {.entry = {.count = 1, .reusable = true}}, SHIFT(602),
  [2249] = {.entry = {.count = 1, .reusable = true}}, SHIFT(604),
  [2251] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_inheritance_specifier, 2, 0, 34),
  [2253] = {.entry = {.count = 1, .reusable = true}}, SHIFT(603),
  [2255] = {.entry = {.count = 1, .reusable = true}}, SHIFT(417),
  [2257] = {.entry = {.count = 1, .reusable = true}}, SHIFT(276),
  [2259] = {.entry = {.count = 1, .reusable = true}}, SHIFT(200),
  [2261] = {.entry = {.count = 1, .reusable = true}}, SHIFT(611),
  [2263] = {.entry = {.count = 1, .reusable = true}}, SHIFT(614),
  [2265] = {.entry = {.count = 1, .reusable = true}}, SHIFT(616),
  [2267] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_unicode_string_literal_repeat1, 2, 0, 0),
  [2269] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_unicode_string_literal_repeat1, 2, 0, 0), SHIFT_REPEAT(617),
  [2272] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_unicode_string_literal_repeat2, 2, 0, 0),
  [2274] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_unicode_string_literal_repeat2, 2, 0, 0), SHIFT_REPEAT(618),
  [2277] = {.entry = {.count = 1, .reusable = true}}, SHIFT(823),
  [2279] = {.entry = {.count = 1, .reusable = true}}, SHIFT(225),
  [2281] = {.entry = {.count = 1, .reusable = true}}, SHIFT(230),
  [2283] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__import_declaration, 1, 0, 3),
  [2285] = {.entry = {.count = 1, .reusable = true}}, SHIFT(904),
  [2287] = {.entry = {.count = 1, .reusable = true}}, SHIFT(261),
  [2289] = {.entry = {.count = 1, .reusable = true}}, SHIFT(238),
  [2291] = {.entry = {.count = 1, .reusable = true}}, SHIFT(252),
  [2293] = {.entry = {.count = 1, .reusable = true}}, SHIFT(848),
  [2295] = {.entry = {.count = 1, .reusable = true}}, SHIFT(241),
  [2297] = {.entry = {.count = 1, .reusable = true}}, SHIFT(852),
  [2299] = {.entry = {.count = 1, .reusable = true}}, SHIFT(243),
  [2301] = {.entry = {.count = 1, .reusable = true}}, SHIFT(857),
  [2303] = {.entry = {.count = 1, .reusable = true}}, SHIFT(163),
  [2305] = {.entry = {.count = 1, .reusable = true}}, SHIFT(858),
  [2307] = {.entry = {.count = 1, .reusable = true}}, SHIFT(248),
  [2309] = {.entry = {.count = 1, .reusable = false}}, SHIFT(403),
  [2311] = {.entry = {.count = 1, .reusable = true}}, SHIFT(617),
  [2313] = {.entry = {.count = 1, .reusable = true}}, SHIFT(618),
  [2315] = {.entry = {.count = 1, .reusable = true}}, SHIFT(165),
  [2317] = {.entry = {.count = 1, .reusable = true}}, SHIFT(793),
  [2319] = {.entry = {.count = 1, .reusable = true}}, SHIFT(173),
  [2321] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variable_declaration, 3, 0, 37),
  [2323] = {.entry = {.count = 1, .reusable = true}}, SHIFT(263),
  [2325] = {.entry = {.count = 1, .reusable = true}}, SHIFT(592),
  [2327] = {.entry = {.count = 1, .reusable = true}}, SHIFT(656),
  [2329] = {.entry = {.count = 1, .reusable = true}}, SHIFT(903),
  [2331] = {.entry = {.count = 1, .reusable = true}}, SHIFT(811),
  [2333] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_error_parameter, 1, 0, 14),
  [2335] = {.entry = {.count = 1, .reusable = true}}, SHIFT(520),
  [2337] = {.entry = {.count = 1, .reusable = true}}, SHIFT(605),
  [2339] = {.entry = {.count = 1, .reusable = true}}, SHIFT(630),
  [2341] = {.entry = {.count = 1, .reusable = true}}, SHIFT(154),
  [2343] = {.entry = {.count = 1, .reusable = true}}, SHIFT(810),
  [2345] = {.entry = {.count = 1, .reusable = true}}, SHIFT(851),
  [2347] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_variable_declaration_tuple_repeat2, 1, 0, 0),
  [2349] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_assembly_flags_repeat1, 2, 0, 0), SHIFT_REPEAT(668),
  [2352] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_assembly_flags_repeat1, 2, 0, 0),
  [2354] = {.entry = {.count = 1, .reusable = true}}, SHIFT(934),
  [2356] = {.entry = {.count = 1, .reusable = true}}, SHIFT(832),
  [2358] = {.entry = {.count = 1, .reusable = true}}, SHIFT(128),
  [2360] = {.entry = {.count = 1, .reusable = true}}, SHIFT(555),
  [2362] = {.entry = {.count = 1, .reusable = true}}, SHIFT(136),
  [2364] = {.entry = {.count = 1, .reusable = true}}, SHIFT(152),
  [2366] = {.entry = {.count = 1, .reusable = true}}, SHIFT(385),
  [2368] = {.entry = {.count = 1, .reusable = true}}, SHIFT(265),
  [2370] = {.entry = {.count = 1, .reusable = true}}, SHIFT(49),
  [2372] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__single_import, 1, 0, 0),
  [2374] = {.entry = {.count = 1, .reusable = true}}, SHIFT(311),
  [2376] = {.entry = {.count = 1, .reusable = true}}, SHIFT(672),
  [2378] = {.entry = {.count = 1, .reusable = true}}, SHIFT(621),
  [2380] = {.entry = {.count = 1, .reusable = true}}, SHIFT(894),
  [2382] = {.entry = {.count = 1, .reusable = true}}, SHIFT(775),
  [2384] = {.entry = {.count = 1, .reusable = true}}, SHIFT(675),
  [2386] = {.entry = {.count = 1, .reusable = true}}, SHIFT(676),
  [2388] = {.entry = {.count = 1, .reusable = true}}, SHIFT(943),
  [2390] = {.entry = {.count = 1, .reusable = true}}, SHIFT(376),
  [2392] = {.entry = {.count = 1, .reusable = true}}, SHIFT(314),
  [2394] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__multiple_import_repeat1, 2, 0, 30), SHIFT_REPEAT(867),
  [2397] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__multiple_import_repeat1, 2, 0, 30),
  [2399] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__return_parameters_repeat1, 2, 0, 0), SHIFT_REPEAT(170),
  [2402] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__return_parameters_repeat1, 2, 0, 0),
  [2404] = {.entry = {.count = 1, .reusable = true}}, SHIFT(583),
  [2406] = {.entry = {.count = 1, .reusable = true}}, SHIFT(519),
  [2408] = {.entry = {.count = 1, .reusable = true}}, SHIFT(315),
  [2410] = {.entry = {.count = 1, .reusable = true}}, SHIFT(76),
  [2412] = {.entry = {.count = 1, .reusable = true}}, SHIFT(255),
  [2414] = {.entry = {.count = 1, .reusable = true}}, SHIFT(570),
  [2416] = {.entry = {.count = 1, .reusable = true}}, SHIFT(685),
  [2418] = {.entry = {.count = 1, .reusable = true}}, SHIFT(790),
  [2420] = {.entry = {.count = 1, .reusable = true}}, SHIFT(687),
  [2422] = {.entry = {.count = 1, .reusable = true}}, SHIFT(138),
  [2424] = {.entry = {.count = 1, .reusable = true}}, SHIFT(383),
  [2426] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_yul_function_call_repeat1, 2, 0, 0), SHIFT_REPEAT(337),
  [2429] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_yul_function_call_repeat1, 2, 0, 0),
  [2431] = {.entry = {.count = 1, .reusable = true}}, SHIFT(941),
  [2433] = {.entry = {.count = 1, .reusable = true}}, SHIFT(932),
  [2435] = {.entry = {.count = 1, .reusable = true}}, SHIFT(373),
  [2437] = {.entry = {.count = 1, .reusable = true}}, SHIFT(661),
  [2439] = {.entry = {.count = 1, .reusable = true}}, SHIFT(967),
  [2441] = {.entry = {.count = 1, .reusable = true}}, SHIFT(797),
  [2443] = {.entry = {.count = 1, .reusable = true}}, SHIFT(896),
  [2445] = {.entry = {.count = 1, .reusable = true}}, SHIFT(694),
  [2447] = {.entry = {.count = 1, .reusable = true}}, SHIFT(702),
  [2449] = {.entry = {.count = 1, .reusable = true}}, SHIFT(892),
  [2451] = {.entry = {.count = 1, .reusable = true}}, SHIFT(776),
  [2453] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__single_import, 1, 0, 3),
  [2455] = {.entry = {.count = 1, .reusable = true}}, SHIFT(712),
  [2457] = {.entry = {.count = 1, .reusable = true}}, SHIFT(454),
  [2459] = {.entry = {.count = 1, .reusable = true}}, SHIFT(806),
  [2461] = {.entry = {.count = 1, .reusable = true}}, SHIFT(527),
  [2463] = {.entry = {.count = 1, .reusable = true}}, SHIFT(886),
  [2465] = {.entry = {.count = 1, .reusable = true}}, SHIFT(199),
  [2467] = {.entry = {.count = 1, .reusable = true}}, SHIFT(801),
  [2469] = {.entry = {.count = 1, .reusable = true}}, SHIFT(689),
  [2471] = {.entry = {.count = 1, .reusable = true}}, SHIFT(782),
  [2473] = {.entry = {.count = 1, .reusable = true}}, SHIFT(561),
  [2475] = {.entry = {.count = 1, .reusable = true}}, SHIFT(900),
  [2477] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_using_alias, 1, 0, 0),
  [2479] = {.entry = {.count = 1, .reusable = true}}, SHIFT(518),
  [2481] = {.entry = {.count = 1, .reusable = true}}, SHIFT(720),
  [2483] = {.entry = {.count = 1, .reusable = true}}, SHIFT(590),
  [2485] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__source_import, 1, 0, 5),
  [2487] = {.entry = {.count = 1, .reusable = true}}, SHIFT(646),
  [2489] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_variable_declaration_tuple_repeat2, 2, 0, 0), SHIFT_REPEAT(647),
  [2492] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_variable_declaration_tuple_repeat2, 2, 0, 0),
  [2494] = {.entry = {.count = 1, .reusable = true}}, SHIFT(31),
  [2496] = {.entry = {.count = 1, .reusable = true}}, SHIFT(820),
  [2498] = {.entry = {.count = 1, .reusable = true}}, SHIFT(175),
  [2500] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_inline_array_expression_repeat1, 2, 0, 0), SHIFT_REPEAT(67),
  [2503] = {.entry = {.count = 1, .reusable = true}}, SHIFT(817),
  [2505] = {.entry = {.count = 1, .reusable = true}}, SHIFT(210),
  [2507] = {.entry = {.count = 1, .reusable = true}}, SHIFT(137),
  [2509] = {.entry = {.count = 1, .reusable = true}}, SHIFT(360),
  [2511] = {.entry = {.count = 1, .reusable = true}}, SHIFT(939),
  [2513] = {.entry = {.count = 1, .reusable = true}}, SHIFT(434),
  [2515] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_override_specifier_repeat1, 2, 0, 0), SHIFT_REPEAT(654),
  [2518] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_override_specifier_repeat1, 2, 0, 0),
  [2520] = {.entry = {.count = 1, .reusable = true}}, SHIFT(739),
  [2522] = {.entry = {.count = 1, .reusable = true}}, SHIFT(804),
  [2524] = {.entry = {.count = 1, .reusable = true}}, SHIFT(156),
  [2526] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__call_arguments_repeat1, 2, 0, 0), SHIFT_REPEAT(37),
  [2529] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__call_arguments_repeat1, 2, 0, 0),
  [2531] = {.entry = {.count = 1, .reusable = true}}, SHIFT(141),
  [2533] = {.entry = {.count = 1, .reusable = true}}, SHIFT(855),
  [2535] = {.entry = {.count = 1, .reusable = true}}, SHIFT(814),
  [2537] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_event_parameter, 2, 0, 14),
  [2539] = {.entry = {.count = 1, .reusable = true}}, SHIFT(80),
  [2541] = {.entry = {.count = 1, .reusable = true}}, SHIFT(95),
  [2543] = {.entry = {.count = 1, .reusable = true}}, SHIFT(680),
  [2545] = {.entry = {.count = 1, .reusable = true}}, SHIFT(895),
  [2547] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_call_argument_repeat1, 2, 0, 0), SHIFT_REPEAT(856),
  [2550] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_call_argument_repeat1, 2, 0, 0),
  [2552] = {.entry = {.count = 1, .reusable = true}}, SHIFT(866),
  [2554] = {.entry = {.count = 1, .reusable = true}}, SHIFT(44),
  [2556] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_using_directive_repeat1, 2, 0, 0), SHIFT_REPEAT(587),
  [2559] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_using_directive_repeat1, 2, 0, 0),
  [2561] = {.entry = {.count = 1, .reusable = true}}, SHIFT(63),
  [2563] = {.entry = {.count = 1, .reusable = true}}, SHIFT(259),
  [2565] = {.entry = {.count = 1, .reusable = true}}, SHIFT(841),
  [2567] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__nameless_parameter, 2, 0, 25), REDUCE(sym_parameter, 2, 0, 25),
  [2570] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_tuple_expression_repeat1, 2, 0, 0), SHIFT_REPEAT(42),
  [2573] = {.entry = {.count = 1, .reusable = true}}, SHIFT(133),
  [2575] = {.entry = {.count = 1, .reusable = true}}, SHIFT(822),
  [2577] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__parameter_list_repeat1, 2, 0, 0), SHIFT_REPEAT(180),
  [2580] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__parameter_list_repeat1, 2, 0, 0),
  [2582] = {.entry = {.count = 1, .reusable = true}}, SHIFT(437),
  [2584] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_error_declaration_repeat1, 2, 0, 0), SHIFT_REPEAT(181),
  [2587] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_error_declaration_repeat1, 2, 0, 0),
  [2589] = {.entry = {.count = 1, .reusable = true}}, SHIFT(428),
  [2591] = {.entry = {.count = 1, .reusable = true}}, SHIFT(126),
  [2593] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_variable_declaration_tuple_repeat1, 2, 0, 0), SHIFT_REPEAT(127),
  [2596] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_variable_declaration_tuple_repeat1, 2, 0, 0),
  [2598] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_struct_expression_repeat1, 2, 0, 0), SHIFT_REPEAT(785),
  [2601] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_struct_expression_repeat1, 2, 0, 0),
  [2603] = {.entry = {.count = 1, .reusable = true}}, SHIFT(659),
  [2605] = {.entry = {.count = 1, .reusable = true}}, SHIFT(312),
  [2607] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_enum_body_repeat1, 2, 0, 0), SHIFT_REPEAT(891),
  [2610] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_enum_body_repeat1, 2, 0, 0),
  [2612] = {.entry = {.count = 1, .reusable = true}}, SHIFT(662),
  [2614] = {.entry = {.count = 1, .reusable = true}}, SHIFT(313),
  [2616] = {.entry = {.count = 1, .reusable = true}}, SHIFT(296),
  [2618] = {.entry = {.count = 1, .reusable = true}}, SHIFT(146),
  [2620] = {.entry = {.count = 1, .reusable = true}}, SHIFT(821),
  [2622] = {.entry = {.count = 1, .reusable = true}}, SHIFT(875),
  [2624] = {.entry = {.count = 1, .reusable = true}}, SHIFT(223),
  [2626] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__event_parameter_list_repeat1, 2, 0, 0), SHIFT_REPEAT(191),
  [2629] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__event_parameter_list_repeat1, 2, 0, 0),
  [2631] = {.entry = {.count = 1, .reusable = true}}, SHIFT(148),
  [2633] = {.entry = {.count = 1, .reusable = true}}, SHIFT(877),
  [2635] = {.entry = {.count = 1, .reusable = true}}, SHIFT(234),
  [2637] = {.entry = {.count = 1, .reusable = true}}, SHIFT(791),
  [2639] = {.entry = {.count = 1, .reusable = true}}, SHIFT(54),
  [2641] = {.entry = {.count = 1, .reusable = true}}, SHIFT(637),
  [2643] = {.entry = {.count = 1, .reusable = true}}, SHIFT(921),
  [2645] = {.entry = {.count = 1, .reusable = true}}, SHIFT(639),
  [2647] = {.entry = {.count = 1, .reusable = true}}, SHIFT(796),
  [2649] = {.entry = {.count = 1, .reusable = true}}, SHIFT(558),
  [2651] = {.entry = {.count = 1, .reusable = true}}, SHIFT(952),
  [2653] = {.entry = {.count = 1, .reusable = true}}, SHIFT(559),
  [2655] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameter, 2, 0, 25),
  [2657] = {.entry = {.count = 1, .reusable = true}}, SHIFT(29),
  [2659] = {.entry = {.count = 1, .reusable = true}}, SHIFT(387),
  [2661] = {.entry = {.count = 1, .reusable = true}}, SHIFT(155),
  [2663] = {.entry = {.count = 1, .reusable = true}}, SHIFT(119),
  [2665] = {.entry = {.count = 1, .reusable = true}}, SHIFT(182),
  [2667] = {.entry = {.count = 1, .reusable = true}}, SHIFT(110),
  [2669] = {.entry = {.count = 1, .reusable = true}}, SHIFT(928),
  [2671] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__return_parameters_repeat1, 2, 0, 59),
  [2673] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__nameless_parameter, 2, 0, 25),
  [2675] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_call_argument, 4, 0, 0),
  [2677] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_any_source_type, 1, 0, 0),
  [2679] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__import_declaration, 2, 0, 10),
  [2681] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_call_argument, 3, 0, 0),
  [2683] = {.entry = {.count = 1, .reusable = true}}, SHIFT(183),
  [2685] = {.entry = {.count = 1, .reusable = true}}, SHIFT(937),
  [2687] = {.entry = {.count = 1, .reusable = true}}, SHIFT(209),
  [2689] = {.entry = {.count = 1, .reusable = true}}, SHIFT(291),
  [2691] = {.entry = {.count = 1, .reusable = true}}, SHIFT(584),
  [2693] = {.entry = {.count = 1, .reusable = true}}, SHIFT(585),
  [2695] = {.entry = {.count = 1, .reusable = true}}, SHIFT(139),
  [2697] = {.entry = {.count = 1, .reusable = true}}, SHIFT(178),
  [2699] = {.entry = {.count = 1, .reusable = true}}, SHIFT(205),
  [2701] = {.entry = {.count = 1, .reusable = true}}, SHIFT(805),
  [2703] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_call_argument, 2, 0, 0),
  [2705] = {.entry = {.count = 1, .reusable = false}}, SHIFT(911),
  [2707] = {.entry = {.count = 1, .reusable = true}}, SHIFT(140),
  [2709] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_enum_body_repeat1, 2, 0, 35),
  [2711] = {.entry = {.count = 1, .reusable = true}}, SHIFT(803),
  [2713] = {.entry = {.count = 1, .reusable = true}}, SHIFT(187),
  [2715] = {.entry = {.count = 1, .reusable = true}}, SHIFT(707),
  [2717] = {.entry = {.count = 1, .reusable = true}}, SHIFT(176),
  [2719] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__event_parameter_list, 4, 0, 0),
  [2721] = {.entry = {.count = 1, .reusable = true}}, SHIFT(753),
  [2723] = {.entry = {.count = 1, .reusable = true}}, SHIFT(174),
  [2725] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_error_parameter, 2, 0, 24),
  [2727] = {.entry = {.count = 1, .reusable = true}}, SHIFT(274),
  [2729] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_event_parameter, 3, 0, 47),
  [2731] = {.entry = {.count = 1, .reusable = true}}, SHIFT(220),
  [2733] = {.entry = {.count = 1, .reusable = true}}, SHIFT(221),
  [2735] = {.entry = {.count = 1, .reusable = true}}, SHIFT(224),
  [2737] = {.entry = {.count = 1, .reusable = true}}, SHIFT(192),
  [2739] = {.entry = {.count = 1, .reusable = true}}, SHIFT(233),
  [2741] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__event_parameter_list, 3, 0, 0),
  [2743] = {.entry = {.count = 1, .reusable = true}}, SHIFT(235),
  [2745] = {.entry = {.count = 1, .reusable = true}}, SHIFT(117),
  [2747] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_event_parameter, 2, 0, 24),
  [2749] = {.entry = {.count = 1, .reusable = true}}, SHIFT(813),
  [2751] = {.entry = {.count = 1, .reusable = true}}, SHIFT(239),
  [2753] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__event_parameter_list, 2, 0, 0),
  [2755] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_user_definable_operator, 1, 0, 0),
  [2757] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_using_alias, 3, 0, 0),
  [2759] = {.entry = {.count = 1, .reusable = true}}, SHIFT(179),
  [2761] = {.entry = {.count = 1, .reusable = true}}, SHIFT(118),
  [2763] = {.entry = {.count = 1, .reusable = true}}, SHIFT(424),
  [2765] = {.entry = {.count = 1, .reusable = true}}, SHIFT(598),
  [2767] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameter, 3, 0, 37),
  [2769] = {.entry = {.count = 1, .reusable = true}}, SHIFT(162),
  [2771] = {.entry = {.count = 1, .reusable = true}}, SHIFT(242),
  [2773] = {.entry = {.count = 1, .reusable = true}}, SHIFT(601),
  [2775] = {.entry = {.count = 1, .reusable = true}}, SHIFT(244),
  [2777] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__event_parameter_list, 5, 0, 0),
  [2779] = {.entry = {.count = 1, .reusable = true}}, SHIFT(247),
  [2781] = {.entry = {.count = 1, .reusable = true}}, SHIFT(164),
  [2783] = {.entry = {.count = 1, .reusable = true}}, SHIFT(446),
  [2785] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_call_argument, 5, 0, 0),
  [2787] = {.entry = {.count = 1, .reusable = true}}, SHIFT(172),
  [2789] = {.entry = {.count = 1, .reusable = true}}, SHIFT(250),
  [2791] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameter, 2, 0, 24),
  [2793] = {.entry = {.count = 1, .reusable = true}}, SHIFT(151),
  [2795] = {.entry = {.count = 1, .reusable = true}}, SHIFT(871),
  [2797] = {.entry = {.count = 1, .reusable = true}}, SHIFT(129),
  [2799] = {.entry = {.count = 1, .reusable = true}}, SHIFT(748),
  [2801] = {.entry = {.count = 1, .reusable = true}}, SHIFT(217),
  [2803] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_type_definition, 2, 0, 0),
  [2805] = {.entry = {.count = 1, .reusable = true}}, SHIFT(641),
  [2807] = {.entry = {.count = 1, .reusable = true}}, SHIFT(580),
  [2809] = {.entry = {.count = 1, .reusable = true}}, SHIFT(787),
  [2811] = {.entry = {.count = 1, .reusable = true}}, SHIFT(788),
  [2813] = {.entry = {.count = 1, .reusable = true}}, SHIFT(240),
  [2815] = {.entry = {.count = 1, .reusable = true}}, SHIFT(203),
  [2817] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__multiple_import_repeat1, 2, 0, 17),
  [2819] = {.entry = {.count = 1, .reusable = true}}, SHIFT(21),
  [2821] = {.entry = {.count = 1, .reusable = true}}, SHIFT(184),
  [2823] = {.entry = {.count = 1, .reusable = true}}, SHIFT(171),
  [2825] = {.entry = {.count = 1, .reusable = true}}, SHIFT(840),
  [2827] = {.entry = {.count = 1, .reusable = true}}, SHIFT(847),
  [2829] = {.entry = {.count = 1, .reusable = true}}, SHIFT(270),
  [2831] = {.entry = {.count = 1, .reusable = true}}, SHIFT(68),
  [2833] = {.entry = {.count = 1, .reusable = true}}, SHIFT(66),
  [2835] = {.entry = {.count = 1, .reusable = true}}, SHIFT(71),
  [2837] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__multiple_import, 5, 0, 29),
  [2839] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__multiple_import, 3, 0, 17),
  [2841] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__multiple_import, 2, 0, 0),
  [2843] = {.entry = {.count = 1, .reusable = true}}, SHIFT(143),
  [2845] = {.entry = {.count = 1, .reusable = true}}, SHIFT(925),
  [2847] = {.entry = {.count = 1, .reusable = true}}, SHIFT(395),
  [2849] = {.entry = {.count = 1, .reusable = true}}, SHIFT(134),
  [2851] = {.entry = {.count = 1, .reusable = true}}, SHIFT(581),
  [2853] = {.entry = {.count = 1, .reusable = true}}, SHIFT(745),
  [2855] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assembly_flags, 4, 0, 0),
  [2857] = {.entry = {.count = 1, .reusable = true}}, SHIFT(597),
  [2859] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variable_declaration_tuple, 4, 0, 0),
  [2861] = {.entry = {.count = 1, .reusable = true}}, SHIFT(24),
  [2863] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variable_declaration_tuple, 3, 0, 0),
  [2865] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_solidity_version_comparison_operator, 1, 0, 0),
  [2867] = {.entry = {.count = 1, .reusable = true}}, SHIFT(634),
  [2869] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pragma_value, 1, 0, 0),
  [2871] = {.entry = {.count = 1, .reusable = true}}, SHIFT(358),
  [2873] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__import_clause, 1, 0, 4),
  [2875] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__from_clause, 2, 0, 18),
  [2877] = {.entry = {.count = 1, .reusable = true}}, SHIFT(795),
  [2879] = {.entry = {.count = 1, .reusable = true}}, SHIFT(550),
  [2881] = {.entry = {.count = 1, .reusable = true}}, SHIFT(142),
  [2883] = {.entry = {.count = 1, .reusable = true}}, SHIFT(531),
  [2885] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_any_pragma_token, 2, 0, 0),
  [2887] = {.entry = {.count = 1, .reusable = true}}, SHIFT(635),
  [2889] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assembly_flags, 3, 0, 0),
  [2891] = {.entry = {.count = 1, .reusable = true}}, SHIFT(153),
  [2893] = {.entry = {.count = 1, .reusable = true}}, SHIFT(208),
  [2895] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variable_declaration_tuple, 5, 0, 0),
  [2897] = {.entry = {.count = 1, .reusable = true}}, SHIFT(273),
  [2899] = {.entry = {.count = 1, .reusable = true}}, SHIFT(84),
  [2901] = {.entry = {.count = 1, .reusable = true}}, SHIFT(271),
  [2903] = {.entry = {.count = 1, .reusable = true}}, SHIFT(893),
  [2905] = {.entry = {.count = 1, .reusable = true}}, SHIFT(922),
  [2907] = {.entry = {.count = 1, .reusable = true}}, SHIFT(964),
  [2909] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__single_import, 2, 0, 10),
  [2911] = {.entry = {.count = 1, .reusable = true}}, SHIFT(374),
  [2913] = {.entry = {.count = 1, .reusable = true}}, SHIFT(944),
  [2915] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variable_declaration_tuple, 6, 0, 0),
  [2917] = {.entry = {.count = 1, .reusable = true}}, SHIFT(8),
  [2919] = {.entry = {.count = 1, .reusable = true}}, SHIFT(783),
  [2921] = {.entry = {.count = 1, .reusable = true}}, SHIFT(206),
  [2923] = {.entry = {.count = 1, .reusable = true}}, SHIFT(69),
  [2925] = {.entry = {.count = 1, .reusable = true}}, SHIFT(534),
  [2927] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__multiple_import, 4, 0, 17),
  [2929] = {.entry = {.count = 1, .reusable = true}}, SHIFT(445),
  [2931] = {.entry = {.count = 1, .reusable = true}}, SHIFT(372),
  [2933] = {.entry = {.count = 1, .reusable = true}}, SHIFT(70),
  [2935] = {.entry = {.count = 1, .reusable = true}}, SHIFT(863),
  [2937] = {.entry = {.count = 1, .reusable = true}}, SHIFT(864),
  [2939] = {.entry = {.count = 1, .reusable = true}}, SHIFT(865),
  [2941] = {.entry = {.count = 1, .reusable = true}}, SHIFT(272),
  [2943] = {.entry = {.count = 1, .reusable = true}}, SHIFT(145),
  [2945] = {.entry = {.count = 1, .reusable = true}}, SHIFT(132),
  [2947] = {.entry = {.count = 1, .reusable = true}}, SHIFT(147),
  [2949] = {.entry = {.count = 1, .reusable = true}}, SHIFT(149),
  [2951] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assembly_flags, 2, 0, 0),
  [2953] = {.entry = {.count = 1, .reusable = true}}, SHIFT(150),
  [2955] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__single_import, 2, 0, 9),
  [2957] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assembly_flags, 5, 0, 0),
  [2959] = {.entry = {.count = 1, .reusable = true}}, SHIFT(948),
  [2961] = {.entry = {.count = 1, .reusable = true}}, SHIFT(949),
  [2963] = {.entry = {.count = 1, .reusable = true}}, SHIFT(349),
  [2965] = {.entry = {.count = 1, .reusable = true}}, SHIFT(551),
  [2967] = {.entry = {.count = 1, .reusable = true}}, SHIFT(135),
  [2969] = {.entry = {.count = 1, .reusable = true}}, SHIFT(159),
  [2971] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__multiple_import, 4, 0, 29),
  [2973] = {.entry = {.count = 1, .reusable = true}}, SHIFT(53),
  [2975] = {.entry = {.count = 1, .reusable = true}}, SHIFT(83),
  [2977] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__source_import, 2, 0, 12),
  [2979] = {.entry = {.count = 1, .reusable = true}}, SHIFT(85),
  [2981] = {.entry = {.count = 1, .reusable = true}}, SHIFT(802),
  [2983] = {.entry = {.count = 1, .reusable = true}}, SHIFT(25),
  [2985] = {.entry = {.count = 1, .reusable = true}}, SHIFT(971),
  [2987] = {.entry = {.count = 1, .reusable = true}}, SHIFT(789),
  [2989] = {.entry = {.count = 1, .reusable = true}},  ACCEPT_INPUT(),
};

#ifdef __cplusplus
extern "C" {
#endif
#ifdef TREE_SITTER_HIDE_SYMBOLS
#define TS_PUBLIC
#elif defined(_WIN32)
#define TS_PUBLIC __declspec(dllexport)
#else
#define TS_PUBLIC __attribute__((visibility("default")))
#endif

TS_PUBLIC const TSLanguage *tree_sitter_solidity(void) {
  static const TSLanguage language = {
    .abi_version = LANGUAGE_VERSION,
    .symbol_count = SYMBOL_COUNT,
    .alias_count = ALIAS_COUNT,
    .token_count = TOKEN_COUNT,
    .external_token_count = EXTERNAL_TOKEN_COUNT,
    .state_count = STATE_COUNT,
    .large_state_count = LARGE_STATE_COUNT,
    .production_id_count = PRODUCTION_ID_COUNT,
    .supertype_count = SUPERTYPE_COUNT,
    .field_count = FIELD_COUNT,
    .max_alias_sequence_length = MAX_ALIAS_SEQUENCE_LENGTH,
    .parse_table = &ts_parse_table[0][0],
    .small_parse_table = ts_small_parse_table,
    .small_parse_table_map = ts_small_parse_table_map,
    .parse_actions = ts_parse_actions,
    .symbol_names = ts_symbol_names,
    .field_names = ts_field_names,
    .field_map_slices = ts_field_map_slices,
    .field_map_entries = ts_field_map_entries,
    .symbol_metadata = ts_symbol_metadata,
    .public_symbol_map = ts_symbol_map,
    .alias_map = ts_non_terminal_alias_map,
    .alias_sequences = &ts_alias_sequences[0][0],
    .lex_modes = (const void*)ts_lex_modes,
    .lex_fn = ts_lex,
    .keyword_lex_fn = ts_lex_keywords,
    .keyword_capture_token = sym_identifier,
    .primary_state_ids = ts_primary_state_ids,
    .name = "solidity",
    .max_reserved_word_set_size = 0,
    .metadata = {
      .major_version = 1,
      .minor_version = 2,
      .patch_version = 13,
    },
  };
  return &language;
}
#ifdef __cplusplus
}
#endif
